Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Опубликуй статью. Мы сами переведем ее на другие языки!
angela
1575
angela 2012.02.20 13:33 
Нужно решить проблему сбоев при разрыве связи с сервером или отключения интернета. Как осуществлять контроль из советника соединение с сервером, чтобы при потери связи, в момент ее восстановления, ввести запрет на открытие ордеров на определенный интервал времени?
Yury Reshetov
13446
Yury Reshetov 2012.02.20 13:36  
Angela:
Нужно решить проблему сбоев при разрыве связи с сервером или отключения интернета. Как осуществлять контроль из советника соединение с сервером, чтобы при потери связи, в момент ее восстановления, ввести запрет на открытие ордеров на определенный интервал времени?
Интересно, как это советник сможет открыть ордера при отсутствии коннекта с сервером?
ilunga
744
ilunga 2012.02.20 13:59  
Angela:
Нужно решить проблему сбоев при разрыве связи с сервером или отключения интернета. Как осуществлять контроль из советника соединение с сервером, чтобы при потери связи, в момент ее восстановления, ввести запрет на открытие ордеров на определенный интервал времени?

Как самый простой вариант - смотреть когда пришел предыдущий тик и если разница с текущим временем более NN, то запретить временно торговлю


Для Reshetov:

Просят не открывать ордера без связи, а НЕ открывать ордера при обрыве и восстановлении некоторое время, перечитайте

angela
1575
angela 2012.02.20 14:01  
Reshetov:
Интересно, как это советник сможет открыть ордера при отсутствии коннекта с сервером?

Советник открывает ордер не при отсутствии соединения, а в момент установления соединения.
angela
1575
angela 2012.02.20 15:06  
ilunga:

Как самый простой вариант - смотреть когда пришел предыдущий тик и если разница с текущим временем более NN, то запретить временно торговлю


Этот вариант не подходит, время между тиками может быть большим, а разрыв связи с сервером очень коротким.

Нужно именно, на уровне функций вести контроль из советника. Где-то на форуме было обсуждение подобных вопросов, не могу найти.

Vadim Zhunko
5226
Vadim Zhunko 2012.02.20 15:34  
Такая функция есть в MQL4. Мож поможет?
angela
1575
angela 2012.02.20 15:39  
Zhunko:
Такая функция есть в MQL4. Мож поможет?

Спасибо.
angela
1575
angela 2012.02.20 15:56  
Angela:

Спасибо.
Но вопрос остался открытый. Как определить, что был разрыв связи и связь восстановилась? Функцией IsConnected()
мы можем контролировать наличие соединения, т.к. советник работает когда приходят тики, если произошел разрыв связи, советник в это время работать не может, и, соответственно, не может произвести контроль состояния. После восстановления соединения, советник задним числом не может определить, что был разрыв, он воспримет этот разрыв как большой интервал между тиками. Какое решение может быть?
Евгений
361
Евгений 2012.02.20 16:13  
Angela:
Но вопрос остался открытый. Как определить, что был разрыв связи и связь восстановилась? Функцией IsConnected()
мы можем контролировать наличие соединения, т.к. советник работает когда приходят тики, если произошел разрыв связи, советник в это время работать не может, и, соответственно, не может произвести контроль состояния. После восстановления соединения, советник задним числом не может определить, что был разрыв, он воспримет этот разрыв как большой интервал между тиками. Какое решение может быть?
Разрешение - зелёная "лампочка"!
Файлы:
angela
1575
angela 2012.02.20 16:28  
Roll:
Разрешение - зелёная "лампочка"!

Поясните, пожалуйста, логику работы этого индикатора.
Евгений
361
Евгений 2012.02.20 16:34  
Angela:

Поясните, пожалуйста, логику работы этого индикатора.


Логика в коде скрипта. Бросаете на график и смотрите сигнал при вкл/откл связи с инетом.

Внешняя переменная - количество секунд задержки после вкл.

Советник "следит" за объектом скрипта.

Для нескольких советников требуется работа с глобальной переменной.

/ /123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий