В советнике код:
Так вот, если советник включать, когда торговля разрешена:
То код работает безупречно. Запретила торговлю - в комментарии надпись, что "Необходимо разрешить советнику торговать!" и во вкладке "эксперты" на каждом тике такая же надпись. Разрешила торговлю - в комментарии и во вкладке "эксперты" надписи не стало.
Но если же запустить советник, когда торговля запрещена! То тут чудеса. Даже если разрешить торговлю, советник её не начинает! Он продолжает писать и в комментарии и во вкладе "эксперты", что "Необходимо разрешить советнику торговать!".
Я конечно решила проблему, еще и в OnInit() стала проверять, разрешена ли торговля или нет. Но мне непонятно такое поведение функции IsTradeAllowed()
А Вы проверяйте ещё и MQL_TRADE_ALLOWED - так как если при запрещённой торговле (для всего терминала) прикрепить советника, то для советника сразу устанавливается запрет торговать. И потом хоть кликай на кнопку, хоть не кликай - с советника запрет сам собой не снимется.
- docs.mql4.com
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
В советнике код:
Так вот, если советник включать, когда торговля разрешена:
То код работает безупречно. Запретила торговлю - в комментарии надпись, что "Необходимо разрешить советнику торговать!" и во вкладке "эксперты" на каждом тике такая же надпись. Разрешила торговлю - в комментарии и во вкладке "эксперты" надписи не стало.
Но если же запустить советник, когда торговля запрещена! То тут чудеса. Даже если разрешить торговлю, советник её не начинает! Он продолжает писать и в комментарии и во вкладе "эксперты", что "Необходимо разрешить советнику торговать!".
Я конечно решила проблему, еще и в OnInit() стала проверять, разрешена ли торговля или нет. Но мне непонятно такое поведение функции IsTradeAllowed()