Для изменения размера нажмите или перетащите
Замена заявок

Замена заявок при написании торговых алгоритмов более продвинутый способ, чем Снятие заявок и последующая регистрация. Чтобы заменить заявку необходимо вызывать метод IConnectorReRegisterOrder(Order, Decimal, Decimal), или сразу передать объект новой заявки IConnectorReRegisterOrder(Order, Order).

В итоге при замене заявок всегда получается новый объект Order, который содержит информацию старой заявки + измененная часть. В дальнейшем, если требуется работа с измененной заявкой (например, отменить ее или опять изменить), то необходимо использовать именно этот новый объект Order.

В примере ниже показан способ "движения" заявки по лучшей цене:

C#
if (registeredOrder.Security.BestBid != null && registeredOrder.Security.BestAsk != null)
{
    // registeredOrder - это ранее зарегистрированная заявка.
    var newOrder = registeredOrder.Clone();

    // изменяем цену на лучшую
    newOrder.Price = (registeredOrder.Direction == OrderDirections.Buy ? registeredOrder.Security.BestBid : registeredOrder.Security.BestAsk).Price;

    // заменяем заявку на бирже
    trader.ReRegisterOrder(registeredOrder, newOrder);
}
См. также

Другие ресурсы