Код примитивно простой написал в угоду качеству исполнения заявок:
1) Все заявки исполняются по маркету через UseEnterMKT = true.
2) Переворот позиции идёт в два минутных тика - сперва закрытие текущей позиции и только на следующем тике открытие новой.
3) Все процедуры проверки заканчивается командой return, т.е. за один проход OnUpdate() срабатывает только одно условие.
Однако периодически возникает ситуация, когда позиции робота и счёта не совпадают, хотя в работе всего лишь один контракт.
Запуск робота после ручной корректировки позиции происходит с сообщением "Заявка была исполнена в момент когда робот не работал".
Но этот робот всегда работал, интернет не пропадал!
Наверняка такая проблем знакома всем.
У меня на все типах роботов она присутствует.
С таким косяком весь смысл автоматизированной торговли полностью утрачивается.
Трейдеру приходится безотрывно сидеть за терминалом и следить за качеством исполнения торговых приказов.
Кто-то смог найти решение или здесь все только играются без реальной пользы для кошелька?

Спасибо.