← Atrás

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

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

¿Le resultó útil este tema?

Compartir tema

Comentarios (4)

Iniciar sesión o Crear cuenta, Inicie sesión o regístrese para dejar un comentario

OvcharenkoVI
OvcharenkoVI

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

esper
esper

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

OvcharenkoVI
OvcharenkoVI

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

Alexander
Alexander

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

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