ConnectionError не срабатывает

ConnectionError не срабатывает


Здравствуйте! Пытаюсь отловить событие прерывания подключения. Когда закрываю терминал quik при подключенном алгоритме то ни ConnectionErrorEx, ни ConnectionError, ни Disconnected не срабатывает, хотя в лог начинают сыпаться ошибки подключения.



Thanks:


Константин

Avatar
Date: 3/28/2019
Reply


Вопрос актуален.
Thanks:

Support

Avatar
Date: 3/30/2019
Reply


Добрый день

Приведите пожалуйста код инициализации коннектора.
Thanks:

Константин

Avatar
Date: 4/1/2019
Reply


Все настройки по умолчанию.
Code
_connector= new Connector();
_connector.Adapter.InnerAdapters.Add(new LuaFixTransactionMessageAdapter(_connector.TransactionIdGenerator));
_connector.Adapter.InnerAdapters.Add(new LuaFixMarketDataMessageAdapter(_connector.TransactionIdGenerator));

Thanks:

Support

Avatar
Date: 4/2/2019
Reply


Добрый день

По умолчанию, ошибки разрыва связи не транслируются, так как один коннектор может содержать несколько адаптеров внутри себя (у вас их два), и каждый адаптер делает независимое переподключение, не приводя весь коннектор в состояние потери связи. Вы можете отключить это поведение:

Code
Connector.Adapter.SuppressReconnectingErrors = false;
Thanks: Константин Дмитрий_

Alexander

Avatar
Date: 4/4/2019
Reply


Имейте также в виду, что StockSharp не транслирует ошибки при работе с Quik еще как минимум в следующих случаях:
1. При попытке выставить или снять заявку, если соединение между квиком и сервером прервалось.
2. При ответе с сервера квика "Количество транзакций превышает максимально разрешённое N в секунду".

В обоих этих случаях реально заявка не устанавливается (или не снимается, в зависимости от того, что пытались сделать), но события OrderRegisterFailed и OrderCancelFailed не приходят. Поэтому код, который рассчитывает на получение фидбека по своему действию, будет просто бесконечно его ждать, а код, который фидбека не ждет, будет ошибочно рассчитывать, что, например, заявка была снята, чего на самом деле не произойдет.

Это очень неприятный баг, который не дает возможности надежно снимать и ставить заявки вообще в принципе.
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy