Странное поведение при исполненении ReRegisterOrder для QUIK.
Atom Ответить
20.06.2012


При вызове ReRegisterOrder происходит следующее. Старая заявка снимается, приходит уведомление о снятии заявки, в таблице заявок QUIK появляется новая заявка а вот события Trader.NewOrders не приходит. Я раньше не использовал ReRegisterOrder и не знаю а должен ли приходить Trader.NewOrders при замене ордера. Если нет, тогда как узнать о удачной перерегистрации. Заранее спасибо!
ЗЫ Версия 4.1.1

Теги:


Спасибо:




4 Ответов
OvcharenkoVI

Фотография
Автор статей
Дата: 21.06.2012
Ответить


В квике, так же как и в альфе, пожалуй есть такой метод внутри терминала ReRegisterOrder, то есть именно изменение старой заявки. В этом случае у заявки останется прежний и id и transactionId, то есть как бы новая заявка и не создавалась. Можно использовать Trader.CancelOrder => Trader.RegisterOrder, тогда событие придет(это топорным способом). Можно же отключить SupportAtomicReRegister, тогда сам S# будет не перерегистрировать старую, а снимать старую и выставлять новую, но как в этом случае будут вести себя order.Id и order.TransationId я не знаю
Спасибо:

esper

Фотография
Программист
Дата: 21.06.2012
Ответить


OvcharenkoVI Перейти
В квике, так же как и в альфе, пожалуй есть такой метод внутри терминала ReRegisterOrder, то есть именно изменение старой заявки. В этом случае у заявки останется прежний и id и transactionId, то есть как бы новая заявка и не создавалась. Можно использовать Trader.CancelOrder => Trader.RegisterOrder, тогда событие придет(это топорным способом). Можно же отключить SupportAtomicReRegister, тогда сам S# будет не перерегистрировать старую, а снимать старую и выставлять новую, но как в этом случае будут вести себя order.Id и order.TransationId я не знаю

Для альфы не знаю, но для квика ReRegisterOrder это не изменение заявки, а именно перерегистрация, но за один шаг (т.е. одной транзакцией, но при условии, что биржа поддерживает такой режим), когда старая заявка отменяется и вместо нее ставится новая. id и transactionId у новой и старой заявки будут разные. Последовательное CancelOrder и RegisterOrder делает тоже самое, что и ReRegisterOrder, только всегда за две транзакции.
Спасибо: Sergey Masyura

OvcharenkoVI

Фотография
Автор статей
Дата: 21.06.2012
Ответить


Понятно. Просто у альфы в API есть что то вроде _ad.UpdateLimitOrder(бла бла бла);
Спасибо:

Alexander

Фотография
Дата: 21.06.2012
Ответить


Memory Перейти
При вызове ReRegisterOrder происходит следующее. Старая заявка снимается, приходит уведомление о снятии заявки, в таблице заявок QUIK появляется новая заявка а вот события Trader.NewOrders не приходит. Я раньше не использовал ReRegisterOrder и не знаю а должен ли приходить Trader.NewOrders при замене ордера. Если нет, тогда как узнать о удачной перерегистрации. Заранее спасибо!
ЗЫ Версия 4.1.1


Лог нужен + скриншот квика с заявками.
Приходить все события должны
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy