Допустим мы отправили заявку и знаем ее TransactionId, но ответ о регистрации еще не пришел от биржи т.е id мы не знаем. Можно ли оправить ReRegisterOrder зная только TransactionId или нужно дожидаться ответа от биржи о судьбе отправленной заявки, прежде чем ее заменять?
Kommentare (9)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
Необходимо вначале отправить CancelOrder, тогда заявка снимется по внешнему номеру. Затем - RegisterOrder.
Непосредственно ReRegisterOrder нельзя делать без id заявки.
Т.к. Move_order биржей не поддерживается если не известен внутренний номер (order.Id).
Спасибо за ответ! Интересно, дает ли такой метод выйгрыш в скорости, или скорее приведет к путанице заявок... Кто-нибудь так уже пробовал делать?
Действительно ли это возможно? Отменять заявку до того, как она стала Active?
Провел тест:
Создаю заявку и отправляю ее на биржу. Жду 10 мс. Посылаю сигнал на отмену заявки. Мне приходит ошибка в OrdersRegisterFailed о том, что заявку снять не удалось.
Где подвох? Или я что-то не так понял?
Я так делал. Естественно выигрыш есть. Особенно полезно когда вы послали заявку и тут же после очередного обновления поняли что она устарела.
Ого, это на бою у вас такие данные? У меня сервер на бирже стоит, редко, но бывают моменты когда и пару секунд задержка...
Да, на боевом. Сервер не на бирже, пинг до пром серверов биржи 2 милсек.
Скорей всего заявка за 10мс еще не успела дойти до биржи. Так как если паузу увеличить до 30мс, то заявка отменяется без получения номера Id от биржи.