В предыдущем обзоре была рассмотрена часть наиболее частых ошибок работы советников, код которых можно найти в МТ4 и в МТ5 в Терминале во вкладке «Эксперты» или «Журнал». Большая часть из них – несоответствие открываемых роботом сделок торговым условиям брокера. Исправляются они путем корректировки кода, но стоит иметь в виду факт: торговые условия у разных активов отличаются (указываются в спецификации контрактов). Потому код советника имеет смысл оптимизировать под конкретный актив конкретного брокера. Собираетесь использовать советники – учите основы MQL, без них будет сложно.
Ошибки работы советников: коды и расшифровка
- Error 147. Блокировка брокером отложенного ордера по причине несоответствия даты его автоматического окончания действующим условиям. Нестыковка в настройках установки советником отложенного ордера.
Что делать. Не ограничивать срок действия отложенного ордера, удаляя его при необходимости вручную. Или в советнике в параметре OrderSend установить «0».
- Error 148. Количество открытых советником рыночных и отложенных ордеров является максимальным в соответствии с условиями брокера.
Что делать. Закрыть часть ордеров или укрупнить позиции. Не всегда есть смысл открывать 10 сделок объемом 0,01 лота вместо одной объемом 0,1 лота.
- Error 4012, 4013. Деление на ноль.
Что делать. Искать ошибку в коде советника. Возможно, что в коде есть какая-то плавающая величина, зависящая, например, от спреда или свопа. В какие-то моменты она может округляться до нуля.
- Error 4017. Запрет на вызовы DLL.
Что делать. В настройках платформы разрешить вызов DLL. Как – спрашивайте в комментариях. Учтите, что активация этого пункта увеличивает уязвимость компьютера – растет риск получить на компьютер какой-нибудь вирус.
- Error 4018, 4019. Невозможно подгрузить библиотеку.
Что делать. Файлы повреждены, удалены, имеют неверный формат. Эту ошибку работы советника можно устранить, обратившись к разработчику библиотеки. Или найти аналогичную библиотеку в открытом доступе.
- Error 4020. Запрет вызова внешних функций библиотек.
Что делать. Активировать эту опцию в платформе в настройках, разрешив использование внешних данных.
- Error 4103. Не удается открыть файл.
Что делать. Используемый советником файл не удается открыть. Он может быть поврежден, отсутствует или заблокирован антивирусником. Могут быть установлены ограничения на чтение или ошибка в расширении. Если файл в папке Experts есть, его стоит или перезаписать, или искать причину блокировки.
- Error 4106. Неизвестный символ.
Что делать. В обзоре рынка в платформе можно найти все символы – наименования торговых активов. Данная ошибка работы советника означает, что он ориентирован на символ, которого у брокера нет. Например, советник работает с парой EUR/USD, а брокер устанавливает символ с суффиксом EUR/USDx. Это не является ошибкой, но не дает запустить советник.
- Error 4108. Ошибка в тикете.
Что делать. Ордер, к которому обращается советник, был закрыт вручную или другим советником. В теории этого быть не должно – у каждого ордера есть уникальный магик-номер, отличающий ордера советников, если они запущены вместе. Но бывает всякое.
- Error 4109. Советник не может быть запущен. Блокировка со стороны терминала или брокера.
Что делать. В платформе активировать функцию работы советника в настройках. Не помогло – задавать вопросы брокеру.
Большая часть ошибок работы советников связана с техническими настройками платформы и проблемами кода. Если у вас возникли вопросы или нужна помощь с запуском советника, напишите об этом в комментариях – мы постараемся вам помочь!