SmartCOM не меняет заявки
Atom
13.05.2011


Вечер добрый!
Заметил странное поведение в работе тестового сервера ITInvest. Не знаю куда писать сначала - Вам или в ITInvest, решил всё же вам.
В общем суть проблемы: я выставляю заявку, например 5 лотов. Затем по надобности меняю эту заяку при помощи ReRegisterOrder.
Код
sended = sellOrder.Clone();
sended.Volume = 3; // уменьшаю число лотов
sended.Price = sellPrice; // меняю цену
logOrder(sended); // для проверки вывожу параметры ордера
ReRegisterOrder(sellOrder, sended);

Заявка до замены не исполнялась даже частично.
Инструмент - RIM1, биржа РТС. Т.е. биржа должна поддерживать замену заявки. В ответ на ReRegisterOrder в OnNewOrders приходит новая зявка с новым id. В объекте Order указан верный объём и верная цена. Список Order.Messages пуст. Ошибок ни в OrdersFailed ни в ProcessDataError не возникает. Из всего этого я делаю вывод, что замена заявки принята сервером.

Однако, заявка на сервере не меняется! Точнее меняется только её id, а не число лотов! Во-первых, это видно в параллельно запущенном SmartTrader-е, во-вторых когда заявка (уже с новым Id) исполняется, то исполняется то число лотов которые было в первой заявке - т.е. 5.

Почему такое может быть?

Теги:


Спасибо:


romanick

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


Ответили здесь.
Спасибо:


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

loading
clippy