Событие QuikConnected.
Atom
15.06.2010
Maxim


Добрый вечер. В предыдущих версиях библиотеки было события ConnectionChanged, которое при разрыве связи с сервером делало исключение с кодом QuikDisconnected. А если соединение восстанавливалось, то с кодом QuikConnected.

В текущей реализации появляется исключение только при разрыве соединения с сервером (QuikDisconnected). А при обратном соединении никаких исключений в событии BaseTrader.ConnectionError не появляется.

Это нововведение или баг?

Как узнать о восстановлении соединения, если оно было перед этим потеряно?


Теги:


Спасибо:


Mikhail Sukhov

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


Нововведение. Есть три события:

Connected - соединение установлено (первый раз или после разрыва). Disconnected - соединение разорвано программой. ConnectionError - соединение разорвано по ошибке.

Есть еще событие ReConnectionManager.ConnectionRestored. По всей видимости, его Вы и ищете.

Спасибо:

Maxim

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


Спасибо за ответ.

ReConnectionManager -- это не то что мне нужно. Считаю, что если произошел сбой где либо, то необходимо все закрыть и уведомить пользователя (по СМС например). А дальше пользователь должен реагировать и разбираться, в чем проблема (в Квике, в программе, в сервере, в магнитных бурях...)

В этих случаях ReConnectionManager считаю ненадежно и рискованно использовать.

Единственный случай, который можно обрабатывать автоматически -- это разрыв связи Квика с сервером. В этом случае в принципе ничего делать не нужно, надо только уведомить пользователя о разрыве соединение, и о его восстановлении.

BaseTrader.ConnectionError позволяет обработать событие разрыва, а вот когда соединение восстанавливается -- не позволяет. Жаль. А раньше можно было.

Спасибо:

Mikhail Sukhov

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


Событие восстановления - это ITrader.Connected и ReConnectionManager.ConnectionRestored. А почему последнее не подходит? Чудо он конечно не сделает, но информирует стабильно.

Спасибо:

sergun

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


Скажите, а нужно ли в дополнение к ReConnectionManager реализовывать некоторую логику для возобновления экспорта по DDE? Или проблем с DDE при "обрывах" не будет?

Спасибо:

Mikhail Sukhov

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


Если квик падает, то нужно. Если нет, то не нужно. Признака упал квик или нет у меня нет. Но можно после перезапуска воспользоваться событиемhttp://stocksharp.com/doc/help/html/E_Ecng_Trading_Algo_ReConnectionManager_ExportTimeOut.htm. А если по простому, то просто всегда перезапускайте.

Спасибо:

Maxim

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


Я бы то же оставил как есть. Так как написана программа у меня с учетом того, что есть сейчас. Не очень хочется переписывать логику.

Спасибо:

Mikhail Sukhov

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


О чем речь?

Спасибо:

Maxim

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


Сори. Ошибся веткой. Этот ответ был касательно нововведений о состояние заявок.

Спасибо:


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

loading
clippy