Состояние заявки
Atom
15.03.2010
Ronin


Доброго Вам, Михаил! Спасибо за Вашу работу, очень облегчает создавать свои разработки. Возник вопрос по состоянию заявки.

Вызываю RegisterOrder(order), затем проверяю, что order.State == OrderStates.Active и сразу даю команду CancelOrder(order); Получаю результат: System.ArgumentException: Заявка по транзакции 'CLASSCODE=QJSIM; SECCODE=LKOH; TRANS_ID=1; ACTION=KILL_ORDER; ORDER_KEY=790607967' не была зарегистрирована. Причина 'Вы не можете снять данную заявку'. Sleep помог делу, но это не дело.

Вы можете прокомментировать данную ситуацию?

P.S. И похоже, в документацию закралась досадная опечатка про "Статусы" заявки.


Теги:


Спасибо:


Mikhail Sukhov

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


http://stockmarketdotnet.blogspot.com/2010/02/s-17.htmlПункт 4

Что за опечатка?

Спасибо:

Ronin

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


Дело в том, что бывают случаи, когда сервер брокера заявку получил, но выставление заявки на биржу происходит после существенного временного лага. И угадать с размером минимальной задержки не представляю возможным. Также всё осложняется тем, что помимо состояния заявки OrderStates.Active, её статус OrderStatus.Done. Может, как вариант, OrderStatus изменять по анализу реально полученных данных?

Спасибо:

Mikhail Sukhov

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


ITrader.OrdersChanged. Когда придет событие по Вашей сделке, значит она и сервером брокера принята.

Спасибо:


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

loading
clippy