Изменение баланса по заявке после того как статус был изменен на Done
Добрый день, уже однажды поднимал тему в техподдержке,
Quote:Ситуация такая, стратегия отправляет заявки на биржу метод RegisterOrder(Order) и по таймауту или исполнению некого условия снимает через метод Trader.CancelOrder(Order). Учет закрытых позиций и цены происходит при событии появлении новой сделки order.NewTrades() (нужно для работы робота),
По событию снятия заявки .Order.Canceled() или её полного исполнения заявка считается закрытой.
В каждом событии стоит проверка - если статус заявки Done и количество учтенных роботом позиций равно ОбъемЗаявки - БалансЗаявки. То исключаем её из списка робота, и считаем что закрыта, т.е. робот считает что вся информация по заявке получена.
Учитывается ситуация если сделки пришли позже, чем заявка была снята/исполнена, так же есть обработка события неудачной отмены заявки. Код основательно перерыт и перепроверен.
Но иногда возникает ситуация когда условие проверки выполняется заявка исключается, но Робот учитывает не все сделки прошедшие по заявке.Причина в том, что после того, как статус заявки становится Done, а баланс по ней ещё может изменится.
Сейчас все работает на тестовом сервере РТС, Forts Plaza - II.
Версия s# новая, и периодически обновляется, но проблему это не решает.
решение так и не было найдено, в связи с чем возник вопрос, если перейти на Quik избежать такой ситуации? Или это внутренняя логика S# и не зависит от коннектора?