Уже второй раз такое, блин. В 17-00 сегодня скрипт продал 3 лота RIU2, всё как положено, строчка со скриптом покраснела, отображает, что 3 позиции в шорте. В 20-36 произошло следующее:

"20:36:56.85 4 itinvest:Timout detected. check your internet connectivity or event handler code".

После восстановления связи скрипт стал думать, что у него уже 2!!! лота в шорте (по факту 3, проверял в личном кабинете брокера ITInvest и в окне позиций). В менеджере команд тоже было 3 позиции и статус "исполнено". Где он один лот потерял, ума не приложу. Далее скрипт в 21-00 должен был откупить по стопу эти 3 шорта RIU2, но почему-то заявка была снята:

21:00:06.77 202 2145400519:Заявка 2145400519 на покупку 3 лотов RIU2 по рыночной цене снята.
21:00:06.40 200 2145400519:Заявка 2145400519 на покупку 3 лотов RIU2 по рыночной цене принята. Команда выполнена за 294 мс.

Затем, в 22-00 всё же купил, хотя согласно алгоритму, не должен был, т.к. цена к тому моменту упала и находилась ниже стопа:

22:00:03.51 204 2145404803:Рыночная заявка 2145404803 исполнена. Куплено 3 RIU2. Остаток 0 лота(ов).
22:00:03.02 200 2145404803:Заявка 2145404803 на покупку 3 лотов RIU2 по рыночной цене принята. Команда выполнена за 221 мс.

Сейчас скрипт "позеленел", думает что у него 1 лот в лонге (по факту - кеш).

Проясните ситуацию. Почему заявка в 21-00 была снята, это брокер или биржа под@$рала? Почему в 22-00 заявка всё-таки исполнилась? Такое впечатление, что скрипт стал тормозить на час. Как впредь избежать подобного?

P.S. Как "обнулить" скрипт, чтоб не думал, что у него 1 позиция в лонге?


Отредактировано inSERter (Thu Aug 09 2012 10:05 PM)