Ошибка советника 4109

Некоторые наиболее часто возникающие проблемы- ошибки в работе форекс — советников и возможные способы их решения. Коды ошибок можно узнать, посмотрев папки «Эксперты» и «Журнал» панели «Терминал», или папку «Журнал» панели «Тестер», если ошибки происходят в процессе тестирования.

ошибки в работе советника мт4

Ошибки в процессе тестирования советника

Если проблема остаётся или кода вашей ошибки нет в этом перечне, необходимо обращаться к разработчику советника.

Все коды ошибок.

ошибка 4, 146
Торговый сервер занят
1. Советник подал слишком много приказов одновременно
2. Не дождавшись ответа от сервера, при выполнении операции — советник пытается отправить новый приказ, Сервер перегружен

Способы решения:
1. Перезагрузка терминала
2. Оптимизация кода советника с помощью функций обработки ошибок.

ошибка 8, 141
Слишком частые запросы
1. Предыдущие причины ошибки, в сильно частом запросе.

ошибка129
Неправильная цена
1. Цена по которой Вы пытаетесь открыть позицию (BUY SELL)- неправильная

Способы решения:
1. Золотое правило: BUY нужно открывать по Ask а закрывать по BID, SELL нужно открывать по BID а закрывать по ASK

ошибка 130,145
Неправильные стопы
1. Стопы= Стоплосс, тейкпрофит или уровень открытия отложенника или лимитника.
2. Стопы расположены слишком близко к цене
3. Ваш счет открыт в группе ECN  или NDD
4. Ваш брокер использует Рыночное исполнение позиций

Способы решения:
1. Проверьте значения Ваших стоплосс, тейпрофитов
2. Уточните минимальный стоп уровень по Вашему инструменту у брокера, при выставлении стопов — соблюдайте уровень минимальной дистанции
3. В хорошо написанном советнике должны быть функции работы на счетах ECN и NDD

ошибка 131
Неправильный объем
1. Неправильный лот при открытии сделки
2. Лот, который вы пытаетесь открыть, меньше минимального
3. Лот, который вы пытаетесь открыть больше максимального
4. Разрядность лота отличается от разрядности брокера.

Способы решения:
1. Проверьте правильность открытия лота, изучите спецификацию контракта и прочтите условия торговли в Вашем ДЦ
2. Проверьте, Минимальный и Максимальный лот в Вашем ДЦ и на Вашем счете. На некоторых типах счетов, минимальный лот может быть 0.01 а также 0.1 и даже 3. Максимальный лот может быть 5 лотов и 999 лотов и другие.

3. Уточните разрядность лотов на Вашем сервере. Если например разрядность лотов=1, то можно открыть лот 0.1 или 0.5 или 1.2 и так далее, с 1 знаком после запятой, если разрядность лота 2 знака, то исходя из минимального лота, лот может быть 0.01, 0.06, 0.17, 1.48. Также в некоторых ДЦ существует порядок степени лотов, например можно открыть 0.5 и 1 и 1.5 и так далее, а например 0.6 открыть нельзя. Уточните у своего брокера порядок установки лотов.

ошибка 132
Рынок закрыт
1. Рынок закрыт в Выходные дни

Способы решения:
1. Пробуйте связаться с рынком после выходных

ошибка 133
Торговля запрещена
1. В данный момент торговля запрещена
2. По данной валютной паре запрещено торговать

Способы решения:
1. Попробуйте торговать после выходных

ошибка134
Недостаточно денег для совершения операции
1. Лот, который Вы пытаетесь открыть, слишком большой, на него не хватает маржи

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

ошибка135..138
Цена изменилась
1. Реквот
2. Слишком быстрый рынок
3. Брокер или ДЦ не дает Вам поставить позицию по заявленной цене

Способы решения:
1. Не торгуйте в такие моменты
2. Увеличьте уровень проскальзывания, но помните что это влечет за собой открытие позиций не по заявленной Вами цене.
3. Сделайте в советнике функцию обработки ошибок и количество попыток открытия позиций

ошибка 147
Использование даты истечения ордера запрещено брокером
1. Ваш советник или Вы пытаетесь установить срок истечения отложенного ордера

Способы решения:
1. В советнике, в функции OrderSend в параметре срок истечения поставьте=0
2. Не устанавливайте срок истечения ордера.

ошибка 148
Количество открытых и отложенных ордеров достигло предела, установленного брокером.
1. Максимальное количествоотк рытых ордеров и позиций достигнут предела, установленного брокером.

Способы решения:
1. Удалите или закройте часть позиций
2. Остановите процесс открытия новых позиций
3. Соблюдайте иерархию сделок, лучше открыть 1 позицию лото 0.1 одновременно, чем 10 позиций лотом 0.01 с потерей спреда.

ошибка 4012, 4013
zero devide

Остаток от деления на ноль
1. Вы пытаетесь поделить число на 0.

Способы решения:
1. Проверьте Весь код советника на наличие такой грубой ошибки, или же проверьте все значения из MarketInfo функций на момент возвращения 0, иногда при MarketInfo(Symbol(),MODE_SPREAD) возвращается не спред а 0 (у брокеров с плавающим спредом)

ошибка 4017
Вызовы DLL не разрешены
1. В Вашем терминале запрещен вызов DLL

Способы решения:
1. Разрешите вызов DLL через Меню – сервис – Настройки – Советник – Разрешить вызов DLL, но помните, разрешайте данную опцию только для советников, в которых Вы уверены, и уверены что в ДЛЛ не сидит какой-нибудь троян. Проверьте ДЛЛ на наличие троянов с помощью антивируса.

ошибка 4018 , 4019
Невозможно загрузить библиотеку
1. Библиотека повреждена
2. Вызов библиотеки осуществляется с ошибкой

Способы решения:
1. Проверьте библиотеку DLL
2. Обратитесь к разработчику данной библиотеки

ошибка 4020
Вызовы внешних библиотечных функций не разрешены
1. В Вашем терминале запрещен вызов функций из внешних экспертов
Способы решения:
1. Разрешите вызов функций через Меню – сервис – Настройки – Советник – Разрешить вызов внешних экспертов,

ошибка 4103
Невозможно открыть файл
1. Данный файл не существует
2. Данный файл заблокирован

Способы решения:
1. Проверьте наличие указанного файла в папке experts – files Тester – files
2. Проверьте не заблокирован ли файл системой антивируса. Разрешен ли режим записичтения файла

ошибка 4106
Неизвестный символ
1. Символа нет в обзоре рынка

Способы решения:
1. В обзоре рынка – правой кнопкой мыши – показать все символы
2. Проверить названия символа в советнике и наличие его в обзоре рынка
3. Некоторые советники используют четкие названия без суфиксов, а брокеры намеренно ставят суфиксы, например EURUSDx где х – суфикс.

ошибка 4108
Неверный номер тикета
1. Тикет ордера, который выбирает эксперт – не существует
2. Эксперт пытается выбрать тикет, но данный ордер был закрыт другим советником или руками.
3. При попытке осуществления приказа над ордером, тикет был исполнен и закрыт брокером.

Способы решения:
1. Если данная ошибка появляется очень часто, 100-1000 раз за минуту, проверьте функции Вашего советника
2. Отключите другие советники, или настройте их так, чтобы они не конфликтовали, не закрывайте ордер руками, когда эксперт выполняет операцию

ошибка 4109
Торговля не разрешена
1. Советнику запрещено торговать, на графике грустный смайл или крестик

Способы решения:
1. Включите галочку «Разрешить советнику торговать» в вкладе при установке советника, либо в меню- сервис – настройки – советники.

ошибка 4110, 4111
1. Длинные позиции не разрешены
2. Короткие позиции не разрешены

Способы решения:
1. В настройках советника, в вкладке Общие не разрешен тип позиций
2. В Вкладке Общие, при установке советника есть выбор позиций:

Long Short – Разрешены BUY SELL
Only Long– Разрешен BUY
Only Short – Разрешен SELL

Другие статьи по теме:

Устранение ошибок в работе эксперта

Коды ошибок в работе советников форекс (константы MQL4)

Тонкости работы торгового терминала MetaTrader4

Очистка терминала МТ4

При работе торгового терминала MetaTrader 4 возникают различные ошибки при обмене информацией с торговым сервером, который в ответ на ошибочные запросы отсылает программе MetaTrader 4 не описание ошибки, а цифровой код ошибки — специальную комбинацию цифр, которая отображается во вкладках Эксперты и Журнал (примеры этих вкладок и описание типичной ситуации при возникновении ошибок можно найти в статье «Обзор торгового терминала MetaTrader 4»). Не все торговые терминалы MetaTrader 4 различных дилинговых центров дают расшифровку цифрового кода, а если она и есть, то — на английском языке. Чтобы понять, почему программа МетаТрейдер 4 работает неправильно, полезно знать расшифровку цифрового кода — какой комбинации цифр соответствует определенное описание ошибки. В некоторых случаях эта информация может сильно облегчить «жизнь» трейдеру и помочь быстрее справиться с возникшей проблемой.

Итак, предлагаем Вашему вниманию расшифровку кодов ошибок, которые можно встретить при работе с торговым терминалом MetaTrader 4:

Коды ошибок, возвращаемые торговым сервером терминалу MetaTrader 4.

  • Error: 0 — Нет ошибки.
  • Error: 1 — Нет ошибки, но результат неизвестен.
  • Error: 2 — Общая ошибка.
  • Error: 3 — Неправильные параметры.
  • Error: 4 — Торговый сервер занят.
  • Error: 5 — Старая версия клиентского терминала.
  • Error: 6 — Нет связи с торговым сервером.
  • Error: 7 — Недостаточно прав.
  • Error: 8 — Слишком частые запросы.
  • Error: 9 — Недопустимая операция, нарушающая функционирование сервера.
  • Error: 64 — Счёт заблокирован.
  • Error: 65 — Неправильный номер счета.
  • Error: 128 — Истек срок ожидания совершения сделки.
  • Error: 129 — Неправильная цена.
  • Error: 130 — Неправильные стопы.
  • Error: 131 — Неправильный объём.
  • Error: 132 — Рынок закрыт.
  • Error: 133 — Торговля запрещена.
  • Error: 134 — Недостаточно денег для совершения операции.
  • Error: 135 — Цена изменилась.
  • Error: 136 — Нет цен.
  • Error: 137 — Брокер занят.
  • Error: 138 — Новые цены.
  • Error: 139 — Ордер заблокирован и уже обрабатывается.
  • Error: 140 — Разрешена только покупка.
  • Error: 145 — Модификация запрещена, так как ордер слишком близок к рынку.
  • Error: 146 — Подсистема торговли занята.
  • Error: 147 — Использование даты истечения ордера запрещено брокером.
  • Error: 148 — Количество открытых и отложенных ордеров достигло предела, установленного брокером.
  • Error: 149 — Попытка открыть противоположную позицию к уже существующей в случае, если хеджирование запрещено.
  • Error: 150 — Попытка закрыть позицию по инструменту в противоречии с правилом FIFO.

Коды ошибок выполнения MQL4-программы (советника):

  • Error: 4000 — Нет ошибки.
  • Error: 4001 — Неправильный указатель функции.
  • Error: 4002 — Индекс массива — вне диапазона.
  • Error: 4003 — Нет памяти для стека функций.
  • Error: 4004 — Переполнение стека после рекурсивного вызова.
  • Error: 4005 — На стеке нет памяти для передачи параметров.
  • Error: 4006 — Нет памяти для строкового параметра.
  • Error: 4007 — Нет памяти для временной строки.
  • Error: 4008 — Неинициализированная строка.
  • Error: 4009 — Неинициализированная строка в массиве.
  • Error: 4010 — Нет памяти для строкового массива.
  • Error: 4011 — Слишком длинная строка.
  • Error: 4012 — Остаток от деления на ноль.
  • Error: 4013 — Деление на ноль.
  • Error: 4014 — Неизвестная команда.
  • Error: 4015 — Неправильный переход.
  • Error: 4016 — Неинициализированный массив.
  • Error: 4017 — Вызовы DLL не разрешены.
  • Error: 4018 — Невозможно загрузить библиотеку.
  • Error: 4019 — Невозможно вызвать функцию.
  • Error: 4020 — Вызовы внешних библиотечных функций не разрешены.
  • Error: 4021 — Недостаточно памяти для строки, возвращаемой из функции.
  • Error: 4022 — Система занята.
  • Error: 4050 — Неправильное количество параметров функции.
  • Error: 4051 — Недопустимое значение параметра функции.
  • Error: 4052 — Внутренняя ошибка строковой функции.
  • Error: 4053 — Ошибка массива.
  • Error: 4054 — Неправильное использование массива-таймсерии.
  • Error: 4055 — Ошибка пользовательского индикатора.
  • Error: 4056 — Массивы несовместимы.
  • Error: 4057 — Ошибка обработки глобальныех переменных.
  • Error: 4058 — Глобальная переменная не обнаружена.
  • Error: 4059 — Функция не разрешена в тестовом режиме.
  • Error: 4060 — Функция не разрешена.
  • Error: 4061 — Ошибка отправки почты.
  • Error: 4062 — Ожидается параметр типа string.
  • Error: 4063 — Ожидается параметр типа integer.
  • Error: 4064 — Ожидается параметр типа double.
  • Error: 4065 — В качестве параметра ожидается массив.
  • Error: 4066 — Запрошенные исторические данные в состоянии обновления.
  • Error: 4067 — Ошибка при выполнении торговой операции.
  • Error: 4099 — Конец файла.
  • Error: 4100 — Ошибка при работе с файлом.
  • Error: 4101 — Неправильное имя файла.
  • Error: 4102 — Слишком много открытых файлов.
  • Error: 4103 — Невозможно открыть файл.
  • Error: 4104 — Несовместимый режим доступа к файлу.
  • Error: 4105 — Ни один ордер не выбран.
  • Error: 4106 — Неизвестный символ.
  • Error: 4107 — Неправильный параметр цены для торговой функции.
  • Error: 4108 — Неверный номер тикета.
  • Error: 4109 — Торговля не разрешена. Необходимо включить опцию Разрешить советнику торговать в свойствах эксперта.
  • Error: 4110 — Длинные позиции не разрешены — необходимо проверить свойства эксперта.
  • Error: 4111 — Короткие позиции не разрешены — необходимо проверить свойства эксперта.
  • Error: 4200 — Объект уже существует.
  • Error: 4201 — Запрошено неизвестное свойство объекта.
  • Error: 4202 — Объект не существует.
  • Error: 4203 — Неизвестный тип объекта.
  • Error: 4204 — Нет имени объекта.
  • Error: 4205 — Ошибка координат объекта.
  • Error: 4206 — Не найдено указанное подокно.
  • Error: 4207 — Ошибка при работе с объектом.

Содержание

  • Проверенные способы устранения проблем с советниками в MetaTrader 4
  • Контрольный список для устранения неполадок, связанных с приложениями MT4
  • Заключение

Проверенные способы устранения проблем с советниками в MetaTrader 4

Мы написали эту статью с целью рассказать о том, что вы должны проверять в первую очередь, когда сталкиваетесь с какими-либо проблемами с советниками, индикаторами или скриптами на вашем терминале MT4.

Честно говоря, мы сами не понимаем, почему не написали эту статью раньше. В течение многих лет люди обращаются к нам с просьбой помочь разобраться с различными проблемами с советниками и платформой MetaTrader 4.

Конечно, иногда у них возникают проблемы с нашими приложениями для MT4, но это довольно нормально, потому что у каждого человека свой кругозор, и невозможно знать все.

Мы занимаемся своим программным бизнесом с 2009 года, и за эти годы нам на электронную почту приходили тысячи писем с различными вопросами от валютных трейдеров.

И за эти годы мы пришли к выводу, что в большинстве случаев с советником или даже с клиентским терминалом MetaTrader 4 всё в порядке.

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

Конечно, вы без труда найдёте базовые уроки о том, как пользоваться платформой MT4 или даже видеоуроки по МТ4, но, как вы уже знаете, эти уроки охватывают только самый начальный уровень.

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

Мы не можем обещать, что информация из этой статьи решит все связанные с советниками проблемы, с которыми вы столкнётесь.

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

Ниже вы найдёте контрольный список, который вы должны проверить, прежде чем писать в поддержку о каких-либо проблемах с приложениями MT4.

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

Контрольный список для устранения неполадок, связанных с приложениями MT4

Список мер, которые, скорее всего, помогут устранить проблемы, связанные с советниками на клиентском терминале MT4

  1. Опция «Autotrading» в верхней панели инструментов окна терминала МТ4 должна быть включена.
  2. Опция «Allow live trading» (разрешить торговлю в режиме реального времени) в окне «EA Properties» должна быть активирована. Посмотрите на смайлик в правом верхнем углу графика.
  3. Опция “Long & Short” для нормальной работы советника должна быть включена.
  4. Для некоторых советников в окне “EA Properties” необходимо выбрать опцию «Allow DLL imports» (разрешить импорт DLL).
  5. Для некоторых советников в окне “EA Properties” необходимо выбрать опцию «Allow import of external experts» (разрешить импорт сторонних советников).
  6. Проверьте конфигурацию в окне “Tools -> Options -> Expert Advisors”.
  7. Проверьте вкладку «Experts» в нижней части окна терминала MT4 на предмет сообщений об ошибках.
  8. Проверьте вкладку «Journal» в нижней части окна терминала MT4 на предмет сообщений об ошибках.
  9. Проверьте, подключен ли терминал MT4 к серверу брокера.
  10. Проверьте, нет ли проблем с подключением к интернету.
  11. Убедитесь, что приложению MT4 удалось авторизовать лицензионный ключ (если он используется).
  12. Перезапустите клиентский терминал MT4.
  13. Проверьте, не имеет ли ваш компьютер многоядерный процессор.
  14. Прочитайте руководство по эксплуатации и дважды всё перепроверьте.
  15. Обратитесь в службу технической поддержки.

Теперь давайте как можно более подробно рассмотрим каждый из этих пунктов.

1. Активирован ли «Автотрейдинг«

Одна из самых распространённых проблем, мешающих работе советников, – отключена опция «Автотрейдинг» в MT4.

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

Имеется в виду, если вы новичок в MT4 и только начали его использовать, любой советник или скрипт может повредить вашему счёту, если использовать его неправильно. Поэтому опция «Автотрейдинг» по умолчанию отключена.

Когда вы будете готовы к использованию «Автотрейдинга«, вы можете включить его на верхней панели инструментов вашего MT4. Ищите кнопку с надписью «Autotrading» (в более ранних версиях MT4 эта кнопка называлась «Expert Advisors«).

С помощью этой кнопки «Автотрейдинг» можно включить или выключить. По умолчанию «Автотрейдинг» в клиентском терминале MT4 отключен.

Зелёный цвет кнопки «Автотрейдинг» указывает на то, что советники на MT4 включены.

Красный цвет кнопки «Автотрейдинг» указывает на то, что советники на MT4 отключены.

Поэтому, если в какой-то момент вы захотите остановить всех торговых роботов, работающих на вашем MT4, можете просто отключить опцию “Автотрейдинг”.

Однако не все советники одинаковы.

Некоторые из них продолжат работать и выполнять некоторые из операций, но можете быть уверены, что ни при каких обстоятельствах ни один советник не сможет осуществить какую-либо торговую операцию, если вы отключите “Автотрейдинг”.

Также имейте в виду, что по умолчанию клиентский терминал MT4 отключит опцию «Автотрейдинг«, как только вы измените данные в разделе “Profile” (File -> Profiles) или переключитесь на другую учётную запись.

Это делается для защиты от нежелательных действий советника при смене аккаунта.

Представьте себе, что вы входите в аккаунт №1, где у вас запущен советник, который должен закрыть все сделки, когда размер капитала падает ниже 1000$.

Что будет, если вы переключитесь на счёт №2, собственный капитал которого равен 500 USD?

Советник сразу же закроет все позиции. По этой причине в MT4 была добавлена данная опция безопасности, и все советники отключаются, если вы меняете учётную запись.

Такое поведение MT4 можно изменить в окне «Tools -> Options -> Expert Advisors«. Мы вернёмся к этому немного позже в разделе №6.

2. Разрешена ли советнику торговля

Очень распространённая проблема: люди просто не понимают, что торговля для советника должна быть включена, когда она привязана к диаграмме. По умолчанию она отключена по соображениям безопасности.

При добавлении советника на график вы увидите окно «Expert Advisor Properties«, подобное приведённому ниже.

Для того, чтобы советник мог работать, опция «Allow live trading» (разрешить торговлю в режиме реального времени) в окне «EA Properties» должна быть активирована.

Если эта опция не выбрана, советник не сможет совершать торговые операции.

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

Иногда мы используем её, если нам нужно временное решение, чтобы остановить торговлю с использованием советника.

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

В таком случае советник получит ошибку с кодом 4109 (ERR_TRADE_NOT_ALLOWED). На человеческий язык это обычно переводится как “Торговля запрещена“.

3. Разрешено ли советнику торговать в обоих направлениях

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

Советники MT4 обычно настроены на работу с длинными и короткими позициями, однако эта опция позволяет при необходимости настроить торговлю советника только в одном направлении.

В приведённом выше примере мы видим, что советник настроен на длинные и короткие позиции (по умолчанию), но эта опция позволяет настроить советник на торговлю только в одном конкретном направлении.

Допустим, если вы выберете опцию «Long only«, то советник не сможет открывать короткие позиции. В таком случае он вернёт ошибку с кодом 4111 (ERR_SHORTS_NOT_ALLOWED).

На человеческий язык это переводится как “короткие позиции запрещены“.

И наоборот, если ваш советник настроен на торговлю в режиме “Short only”, то каждый раз, когда он попытается разместить длинный ордер, вы увидите ошибку с кодом 4110 (ERR_LONGS_NOT_ALLOWED).

На человеческий язык это переводится как “длинные позиции запрещены“.

4. Включены ли библиотеки DLL

В настоящее время многие приложения для MT4 используют библиотеки DLL, но их использование по умолчанию отключено во всех клиентских терминалах. Это делается из соображений безопасности.

С приложениями MT4, которые используют библиотеки DLL, необходимо быть осторожным.

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

Это звучит очень зловеще, но и в буквальном смысле такое может быть, потому что файлы DLL можно запрограммировать на доступ ко всем файлам на вашем компьютере.

Мы не хотим отпугивать вас от использования приложений MT4, использующих DLL, просто считаем необходимым сообщить вам, как они работают.

Например, почти все разработанные нами советники используют библиотеки DLL. Естественно, мы используем чистый код.

Цель библиотеки DLL – добавить в советник специальную функцию, чтобы он мог подключаться к нашему серверу для авторизации лицензионного ключа.

Мы очень много работали над этим, чтобы сделать данную функцию максимально простой и никоим образом не раздражать клиента.

Поскольку наши приложения используют библиотеку DLL, их нельзя запустить, если у вас отключена опция «Allow DLL imports«.

Поэтому, если советник, который вы пытаетесь использовать, не работает, обязательно проверьте, не использует ли он какие-либо библиотеки DLL, и не надо ли вам включить эту опцию.

Советник MT4 получил разрешение использовать библиотеки DLL. Многие советники не работают, если эта опция отключена, но будьте осторожны с ней и используйте библиотеки DLL только от проверенных разработчиков.

Если вы пытаетесь запустить советник, который должен использовать библиотеку DLL, но у вас флажок возле «Разрешить импорт DLL» снят, вы обычно получаете сообщение следующего вида на вкладке «Experts».

Если у вас отключены вызовы DLL, то некоторые советники MT4 не смогут работать и будут выдавать следующую ошибку на вкладке Experts.

В приведенном выше примере мы попытались запустить советник Hedge EA с отключенными вызовами библиотеки DLL, и вот какую ошибку мы получили: Cannot call ‘hedge_ea_18_personal.dll::auth’, DLL is not allowed.

Ещё одна связанная с DLL-файлами проблема, с которой мы сталкивались, заключается в том, что антивирусное программное обеспечение им, как правило, не доверяет.

Были некоторые случаи, когда наши абсолютно чистые DLL-файлы были определены антивирусом как ложноположительные.

После того, как мы связались с антивирусной компанией, и они проверили код нашего DLL, он был добавлен в их белый список, но эта ситуация всё равно создаёт излишний дискомфорт.

По этой причине мы сделали дополнительный шаг и заказали подписанный сертификат безопасности, который теперь прикрепляется почти к каждому приложению, которое мы создаём.

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

Наша точка зрения – даже чистые библиотеки DLL могут быть определены как вирусы (хотя это будет ложное срабатывание), но это не значит, что вы не должны быть осторожны.

Файлы DLL определённо могут содержать вирусы или другой вредоносный код.

Вот как выглядит при запуске на компьютере автоматический установщик приложения Local Trade Copier с подписанным сертификатом безопасности от COMODO. Естественно, наши файлы библиотеки DLL подписаны тем же самым сертификатом.

Программа, подписанная сертификатом безопасности Comodo, который говорит, что она предоставлена проверенным издателем Римантасом Петраускасом.

Когда такое окно появится на вашем компьютере, где работает наша программа, нажмите кнопку «показать подробности», и вы сможете просмотреть сертификат и его детали.

Мало кто из частных программистов имеет такой сертификат. В большинстве случаев его можно увидеть только у крупных компаний-разработчиков.

Большинство программистов не являются верифицированными. Мы говорим это не с целью похвастаться, а для того, чтобы вы были осторожны и смотрели, какое программное обеспечение устанавливаете на свой компьютер.

Также обратите внимание, что такая защита появляется на компьютерах с операционной системой Windows только в том случае, если у вас в «Панели управления» включен «Контроль учётных записей пользователей«.

Если вы беспокоитесь, что какой-то неизвестный файл на вашем компьютере может содержать вирус, можете проверить его с помощью бесплатного сканера VirusTotal.

Когда вы загружаете файл на этот сайт, он проверяется так же, как если бы вы использовали 50 антивирусных программ.

Если вы видите, что почти все они обнаруживают вирус, то, естественно, данный файл является опасным.

Если ни одно из этих приложений не считает ваш файл подозрительным, скорее всего, имеет место ложное срабатывание.

5. Включен ли импорт внешних советников

Это встречается довольно редко, однако бывают советники, которые требуют, чтобы эта функция была включена для правильной работы.

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

Если вы чувствуете, что ваш советник не работает из-за этого, попробуйте запустить его с включенной опцией «Allow import of external experts» в окне «EA Properties«.

Советник MT4 получил разрешение импортировать внешние советники. Некоторые советники не работают, если эта функция отключена.

Также обратите внимание, что советник может запуститься, некоторое время работать нормально и только потом отключиться, если эта опция деактивирована.

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

6. Проверьте настройки советника по умолчанию

В МТ4 есть специальное окно настроек, доступ к которому можно получить из верхнего меню “Tools -> Options -> Expert Advisors“.

Именно здесь вы можете установить настройки по умолчанию для работы советника.

MT4 позволяет установить настройки по умолчанию для работы советника. Это первое окно, где мы запускаем программу настройки MT4 после установки.

На приведённом выше изображении вы видите, что опции “Allow automated trading” и “Allow DLL imports” у нас активированы.

Поэтому у нас в терминале MT4 пункт «Разрешить импорт DLL» устанавливается по умолчанию, когда мы прикрепляем новый советник к графику (как описано выше в разделе 4).

Также здесь вы можете указать, будет ли MT4 отключать автотрейдинг после входа в другую учётную запись (а также изменять “Profile“). Мы уже упоминали об этом в разделе номер 1.

7. Есть ли сообщения об ошибках на вкладке «Experts«

Именно здесь можно решить большинство проблем. Мы серьёзно. На этой вкладке регистрируются все действия каждого советника, работающего на вашем счёте.

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

Конечно, не все советники одинаковы, но мы при их создании всегда стараемся встраивать вывод как можно большего количества информации, чтобы пользователь знал, что происходит на его терминале MT4, и с какими проблемами столкнулся советник в данный момент.

Простой пример: советник пытается открыть позицию, но терпит неудачу. Чтобы продемонстрировать, как это выглядит, мы используем инструмент Trader On Chart.

Мы настроили это приложение на открытие позиции с размером лота 100 и, когда мы нажимаем кнопку BUY, приложение пытается выполнить эту команду.

Однако сервер брокера отклоняет эту сделку, так как на счёте недостаточно средств, и приложение TOC получает от сервера брокера ответ с кодом ошибки 134 (ERR_NOT_ENOUGH_MONEY). Это всего лишь означает «недостаточно денег«.

Сервер брокера отклоняет эту сделку, так как на счёте не хватает средств, и приложение TOC получает от сервера брокера ответ с кодом ошибки 134, что означает «недостаточно денег«.

Просмотрев сообщения об ошибках на вкладке «Experts«, трейдер может быстро решить свои проблемы.

Конкретно в этом примере очевидно, что нам нужно либо больше денег на счету, либо использовать меньший размер лота.

Те, кто не проверяет вкладку “Experts” на наличие сообщений об ошибках, даже не поймут, почему сделку не удалось открыть.

Очевидно, что они будут во всём винить советника. Однако в этом случае, как и во многих других, проблема не в советнике.

Даже если ваш советник выдает только код ошибки без объяснений, вы легко можете узнать, что он значит, посмотрев на список кодов ошибок MQL4.

Кроме того, важно отметить, что все сообщения, представленные на вкладке “Experts”, также хранятся в специальных лог-файлах, которые можно найти на вашем компьютере в любое время. Лог-файлы Experts хранятся в папке Data FolderMQL4Logs.

Вы также можете быстрее получить доступ к лог-файлам, щёлкнув правой кнопкой мыши в любом месте вкладки Experts и выбрав пункт Open.

Вот ещё одна статья, которую мы написали о том, как читать лог-файлы и действительно понимать их.

Когда вы сообщаете в техподдержку о проблемах с советником, рекомендуется прикреплять к обращению лог-файлы из этой папки.

Для нас очень важно решить любые проблемы, связанные с нашим программным обеспечением, но для этого нам также нужна небольшая помощь от клиентов.

В идеале люди должны сначала проверить любые потенциальные решения из этого руководства и из инструкций советника.

Если это не помогает, мы обычно просим прислать нам следующую информацию, чтобы мы могли изучить проблему
  • Список всех сделок со счёта MT4, участвующих в инциденте.
  • Лог-файлы платформы MT4, которые расположены в Data FolderMQL4Logs (не путайте с Data Folderlogs, так как эти файлы нам не помогут).
  • Скриншот платформы MT4 с панелью советника или графиком, на котором установлен советник.

Папку «Data Folder» можно открыть непосредственно с платформы MT4 через пункт меню «File -> Open Data Folder«.

Если клиент отправляет нам вопрос типа «Мой советник не работает. Почему?» Мы мало чем можем помочь, не имея всей информации.

8. Есть ли сообщения об ошибках на вкладке «Journal«

Вкладка «Journal» не так полезна, как вкладка «Experts«, но в некоторых случаях и она может предоставить вам довольно полезную и важную информацию.

Возьмём тот же пример, что мы использовали раньше. Когда ошибка «Not enough money» регистрируется во вкладке «Experts«, то же самое было зарегистрировано и во вкладке «Journal«.

Сервер брокера отклоняет сделку, так как на счёте не хватает средств, и эта ошибка регистрируется во вкладке Journal терминала МТ4.

Однако при поиске неполадок, связанных с советниками, эта информация может оказаться бесполезной, поскольку в ней не указывается, кем был отправлен запрос на открытие позиции – советником или человеком (вручную).

Надо сказать, что вкладка «Journal» более полезна, когда вы ищете сообщения о проблемах с подключением. MT4 хранит их здесь.

На вкладке Journal в MT4 регистрируются ошибки подключения, которые могут помочь вам определить, является ли ваше подключение к интернету плохим или нет.

Просмотрев сообщения об ошибках на вкладке «Journal«, трейдер может быстро решить свои проблемы.

Кроме того, важно отметить, что все сообщения, представленные на вкладке “Journal”, также хранятся в специальных лог-файлах, которые можно найти на вашем компьютере в любое время. Лог-файлы Journal хранятся в папке Data Folderlogs.

Вы также можете быстро получить доступ к лог-файлам, щёлкнув правой кнопкой мыши в любом месте вкладки «Journal» и выбрав пункт «Open«.

9. Подключен ли ваш терминал MT4 к серверу брокера

Самый простой способ проверить, подключен ли ваш терминал МТ4 к серверу брокера – это посмотреть в правый нижний угол окна терминала.

Если там написано  “No connection“, “Invalid Account“, “Account Suspended“  или что-то в этом роде, это означает, что терминал не подключен и торговля невозможна.

При отсутствии связи с сервером брокера в правом нижнем углу окна терминала МТ4 вы получите уведомление.

Когда терминал MT4 подключен, он, как правило, отображает в правом нижнем углу счётчик, который показывает, сколько данных было загружено с сервера брокера.

Терминал МТ4 отображает счётчик, который показывает, сколько данных было загружено с сервера брокера.

Вот ещё одна отличная идея, позволяющая проверить, подключен ваш терминал MT4 к серверу брокера или нет.

Если часы в окне “Market Watch” работают и котировки постоянно обновляются, то ваш терминал подключен к серверу брокера.

Если установлено соединение с сервером брокера, окно «Market Watch» в MT4 постоянно обновляется.

Если окно «Market Watch» не обновляется, то ваш терминал МТ4 не подключен к серверу брокера или этот день является выходным и рынок закрыт.

10. Стабильно ли ваше интернет-соединение

Проверьте, нет ли проблем с подключением к интернету. Самый простой способ – открыть браузер и посетить несколько сайтов в интернете.

Кроме того, вы должны закрыть все сторонние приложения, которые могут использовать пропускную способность вашего интернет-соединения. Мы имеем в виду торренты и другие подобные программы для загрузки файлов )

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

11. Удалось ли советнику авторизовать лицензионный ключ

Если ваше приложение для MT4 должно авторизоваться на сервере поставщика, убедитесь, что проблем с подключением к интернету нет, и у вас имеется доступ к веб-сайту поставщика.

Брандмауэр или антивирус на компьютере также могут блокировать подключение.

Например, в большинстве наших приложений MT4 используется лицензионный ключ. Покупая у нас программное обеспечение, вы получаете лицензионный ключ, который используется с этими программами.

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

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

Не все приложения MT4 работают таким образом, но со многими дела обстоят именно так.

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

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

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

12. Пробовали ли вы перезапустить терминал MT4

Невозможно представить себе что-то проще, но многие люди даже не вспоминают об этом.

Если вы перепробовали большинство способов, обсуждаемых на этой странице, и проблемы всё ещё не решены, иногда простой перезапуск MT4 может всё исправить.

Для перезапуска МТ4 нужно просто закрыть главное окно терминала и через 15-30 секунд снова запустить его.

Если окно MT4 ведёт себя странно или вообще не отвечает, вы должны проверить, нет ли в памяти «застрявших» процессов MT4. С последней версией МТ4 такое происходит нечасто, но вероятность всё же есть.

Чтобы проверить, нет ли в памяти «застрявших» процессов MT4, вам нужно открыть окно «Диспетчер задач«, щёлкнув правой кнопкой мыши по панели задач и выбрав пункт «Запустить Диспетчер задач«.

Запустить «Диспетчер задач» можно из всплывающего меню панели задач.

После загрузки окна «Диспетчера задач» вам нужно переключиться на вкладку «Процессы» и посмотреть, нет ли в этом списке процесса “terminal.exe”. Сортировка списка по «Названию файла» очень здорово помогает в этой ситуации.

Терминалы MT4 в списке процессов Диспетчера задач Windows.

Если у вас все окна MT4 закрыты, но в этом списке вы видите процессы terminal.exe, их необходимо завершить.

Чтобы завершить процесс, вам нужно выбрать его и нажать кнопку “End Process”. Когда вы завершите все процессы terminal.exe, вы сможете запустить свой терминал MT4.

Завершать процессы таким образом нужно только в том случае, если ваши терминалы MT4 застряли в памяти и не отвечают или даже не показывают главное окно.

13. Не работает ли ваш MT4 слишком медленно из-за многоядерного процессора

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

И похоже, что это имеет место только на компьютерах и серверах VPS с многоядерными процессорами.

В другой статье мы уже объясняли более подробно, как проверить и решить эту проблему, и люди называют предложенный нами способ наиболее эффективным решением для ускорения работы платформы MetaTrader 4.

14. Вы прочитали инструкцию

Мы понимаем, что это самое скучное занятие на свете. Мы никогда не читали руководства по эксплуатации до того, как нам пришлось самим написать такое руководство для своего приложения MT4.

Да, это правда. Мы знаем, как это скучно, и большинство людей считает, что это пустая трата времени. Но поверьте, инструкции пишутся не просто так. На самом деле это довольно очевидно.

Если вы получили инструкцию на 100 страниц, не пугайтесь. Может оказаться, что 80% этого документа занимают фотографии, и вы прочитаете всё примерно за 10 минут или около того.

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

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

Если обнаруживается что-то интересное, прочитайте всю страницу.

Например, руководство по эксплуатации нашей программы для зеркального отображения сделок MT4 довольно длинное, но в нём есть разделы, которые объясняют такие моменты, как «Как создать образ вашего терминала MT4«, и для многих людей это не актуально.

Не будет никакого вреда, если вы его сейчас пропустите, и вернётесь потом, когда вам это будет нужно.

15. Нужно ли обращаться в службу технической поддержки

Когда вы обращаетесь к своему брокеру, вы ожидаете, что он ответит быстро. Многие брокеры даже предлагают поддержку в чате.

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

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

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

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

Однако нам также нужно улучшать программное обеспечение, создавать новые функции, исправлять ошибки, анализировать тонны лог-файлов, которые мы получаем от своих клиентов, и для всего этого у нас есть только 8 часов в день.

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

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

Разумеется, если ни одно из приведённых выше действий не помогло, и вы не можете найти решение своей проблемы в инструкции и на веб-сайте поставщика, вы должны связаться со службой поддержки по любым вопросам, которые у вас есть.

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

Заключение

Время от времени у всех компьютерных программ возникают проблемы – это неизбежно. Здесь важно, получаете ли вы помощь от создателя программного обеспечения или от компании, которая продала вам это программное обеспечение.

Однако имейте в виду, что многие проблемы возникают из-за недопонимания, и, если вы можете потратить 5 минут на поиск самостоятельного решения проблемы, лучше так и сделайте.

Нам кажется, что иногда проще найти ответ и решить проблему в считанные минуты самостоятельно, чем обращаться в службу технической поддержки и ждать от 12 до 72 часов, пока они ответят.

Разумеется, не все вопросы одинаковы. На некоторые из них может ответить только команда техподдержки.

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

Поделитесь своими мыслями в комментариях ниже и сообщите нам, если вы думаете, что в этом руководстве не хватает какой-то информации.

Возможно вам также будет интересно прочитать статьи

Простой способ открытия одинаковых сделок сразу на нескольких счетах MT4

Маленькая хитрость, которая поможет остановить раздражающие обновления MetaTrader 4

Как исправить раздражающие проблемы MT4, связанные с подключением (5 способов)

Privatfinance

Над статьями работает команда авторов, переводчиков и редактор. На сайте команда Privatefinance.biz публикует информационные статьи, обзоры, рейтинги, гайды о торговле на финансовых рынках и инвестировании, рекомендации по выбору брокера и инструментов инвестирования, актуальные новости из мира финансов.

Почта для связи с нами: [email protected]

Error 4109 — Trade Is Not Allowed — is a very common error when working with expert advisors in MetaTrader 4. The error is, more often than not, the result of one setting value in the MT4 options and can be easily fixed in this case.

What Is Error 4109 — Trade Is Not Allowed?

Error 4109, or translated into English, Trade Is Not Allowed, is the error code MetaTrader 4 gives when an expert advisor is not allowed to trade.

When you load an expert advisor (EA) onto your chart, and it tries to submit orders automatically, MT4 checks if the operation is allowed.

The operations are related to the functions to submit, modify, close, and delete orders: OrderSend(), OrderModify(), OrderClose(), and OrderDelete().

If the option is disabled, then the EA cannot submit orders or do perform any other trading actions, and the error 4109 gets triggered.

Error 4109 is just one of the many error codes in MetaTrader, for which «Trade is not allowed» is the corresponding translation.

You can find the full list of error codes on the official website for MQL4 language.

Why Trade Is Not Allowed?

This is a security measure to prevent automated trading.

Automated trading can be risky, so MT4 has options to completely disable it.

In rare cases, this might be due to the broker disabling trading for specific trading accounts or account types.

How to Check If Trading Is Allowed?

When you load an expert advisor you can easily see if MetaTrader allows automated trading or not.

Next to the name of the expert advisor, you can see a face. If the face is sad, it means that the EA cannot trade.

MT4 - Sad Smiley Face When Trading Is Disabled

The Sad Face Means That EA Cannot Trade

In this case, if the EA tries to submit any order it will receive the error 4109 «Trade Is Not Allowed» response from the server.

You can also check for this error in the Experts tab of the Terminal panel.

How to Fix Error 4109?

Fixing Error 4109 — Trade Is Not Allowed — is very simple and only requires to change two options.

Firstly, enable Allow automated trading in the MT4 Options under the Expert Advisors tab.

Enabling Automated Trading via Options Menu in MetaTrader 4

Once this is done, you need to check in the EA’s properties whether the Allow live trading checkbox is enabled or not.

HowEnabling Allow Live Trading in Expert Advisor's Options in MT4

When the two options above are properly enabled, the result is the smiling face next to the EA name on the chart.

How-To-Fix-Error-4109-Trade-Is-Not-Allowed-MT4-MQL4-OrderSend-5

Hopefully, now your EA will be able to submit, update, close, and delete orders automatically.

In case your broker doesn’t allow EA trading, you will continue receiving error 4109 when your expert advisors attempts any trading operation. Unfortunately, this cannot be solved using options available in MetaTrader platform — you would need to contact your broker about this issue.

Conclusion

Error 4109 is a common error when using expert advisors in MT4 and it means that «Trade is not allowed». Basically, the EA cannot submit orders or make any changes to orders.

To fix this error, you need to enable automated trading in the MT4 options and enable live trading in the EA’s properties.

What is MT4 error 4109?

The MT4 error 4109 is one of the most common errors encountered by Expert Advisor (EA) users. The generic meaning of this error code is Trade Is Not Allowed, which means your EA cannot send an order to your broker server.

After you activate an EA on a chart, the software automatically starts looking for trading opportunities. The MT4 verifies if the bot is allowed for an automated trading operation whenever it requests an order.

MT4 error 4109

The emoticon at the top right of the price chart shows how your expert advisor is doing. A sad emoticon suggests the system is not allowed for trading due to a system setting issue. When you see a smiley emoticon, it means your automated trading system is perfectly up for live trading.

Why does an MT4 error 4109 happen?

You may encounter an MT4 error 4109 due to the following reasons:

An issue with the MT4 settings

If your MT4 is not allowed for automated trading, it will show the error 4109. Since automatic trading is risky, the platform keeps the feature disabled. For instance, if you accidentally activate an EA and are unaware of it, the system may initiate auto trading without your concern. So, the MT4 leaves it up to you to decide whether you want to activate the feature or not.

Your EA is disabled for live trading

It might be another reason why you are receiving the “trade is not allowed” message. Some EA requires manual activation of the live trading option. If you don’t enable the bot for live trading, your system will stop accepting orders requests.

Does your broker allow auto-trading?

Nowadays, almost all the professional broker allows auto-trading. However, by any chance, if your broker doesn’t allow automatic trading operations, the system will be sending the same error code. Sometimes, the availability of such trading facilities depends on the type of account you choose to open with the broker.

How to fix MT4 error 4109?

Time needed: 5 minutes.

How to Fix Trade Is Not Allowed Errors

  1. Enable automated trading in MT4 settings

    Click on Tools, then select Options. Next, click on the Expert Advisors tab to avail the systems installed in the MT4.

    Tick on the Allow automated trading option to enable your system to receive order calls from the EA. Besides, you can choose to disable the feature when you change your trading account or profile. Once you complete the settings, click OK.

    MT4 Error 4109 chart

  2. Enable live trading in EA settings

    Select the Navigator menu and expand the Expert Advisors tab. Next, double-click on your preferred EA. At the properties window, tick the Allow live trading option and click OK. This setting will enable your EA to send trade orders to MT4 in live markets.

    MT4 Enable Live Trading

  3. Check with the broker

    Contact your broker and make sure they allow automated trading. Also, check if this feature is available for other trading accounts. For instance, some brokers may offer auto-trading only for professional or standard account users. So, switching from a basic to an advanced trading account could be another way to get rid of MT4 error 4109.

Понравилась статья? Поделить с друзьями:
  • Ошибка совершенная дважды это не ошибка а выбор
  • Ошибка службы удаленного доступа 720
  • Ошибка совершения звонка yealink forbidden
  • Ошибка службы удаленного доступа 623 windows 10
  • Ошибка собственно измерения угла