Главная > Блог > Коды ошибок MT5: 10027, 10030, 10016 и другие

MT5MQL5

Коды ошибок MT5: 10027, 10030, 10016 и другие

Опубликовано: 2026-05-18Время чтения: ~5 мин
⏱ Эта статья отражает информацию на дату публикации. Показатели EA (PF, DD, годовая доходность) меняются с реальной торговлей и повторной валидацией — актуальные данные смотрите на страницах EA. Смотреть актуальные результаты EA →
Содержание (7)
  1. Быстрый поиск: код → значение → решение
  2. Как открыть вкладку Experts
  3. Распространённые коды ошибок и способы устранения
  4. Классификация ошибок по приоритету
  5. Как эффективно читать вкладку Experts
  6. Итог
  7. Часто задаваемые вопросы

Коды ошибок MT5 / MQL5: коды возврата 10004–10031 и ошибки времени выполнения

MT5 сообщает об ошибках двух видов: пятизначные коды возврата торгового сервера (например, 10027 — автоторговля отключена, 10030 — неподдерживаемый режим исполнения, 10016 — неверные стопы, 10019 — недостаточно средств) и четырёхзначные ошибки времени выполнения из GetLastError() (например, 4401, 4756) — в таблице ниже для каждого кода указано решение.

Быстрый поиск: код → значение → решение

Номера и имена констант приведены по официальному справочнику MQL5 (коды возврата торгового сервера и ошибки времени выполнения).

Коды возврата торгового сервера (MqlTradeResult.retcode)

КодКонстантаЗначениеРешениеПодробнее
10004TRADE_RETCODE_REQUOTEРеквота — цена изменилась до исполненияУвеличьте допустимое отклонение или отправьте запрос повторно по новой ценеНет котировок и реквоты
10006TRADE_RETCODE_REJECTЗапрос отклонёнОбычно причина — широкий спред или быстрый рынок; дайте EA повторить попытку на одном из следующих тиков—
10013TRADE_RETCODE_INVALIDНеправильный запросОдно из полей запроса (действие, тип ордера, символ) задано неверно; перед отправкой проверьте запрос через OrderCheck()—
10014TRADE_RETCODE_INVALID_VOLUMEНеправильный объём в запросеОкруглите лот с учётом минимума, максимума и шага объёма символа (SYMBOL_VOLUME_MIN / MAX / STEP)—
10015TRADE_RETCODE_INVALID_PRICEНеправильная цена в запросеНормализуйте цену по числу знаков и размеру тика символа; убедитесь, что отложенный ордер стоит с правильной стороны от рынка—
10016TRADE_RETCODE_INVALID_STOPSНеправильные стопы в запросеСтавьте SL/TP дальше уровня стопов брокера и с правильной стороны от ценыНеверные стопы
10017TRADE_RETCODE_TRADE_DISABLEDТорговля запрещенаПроверьте режим торговли символа в «Спецификации» и убедитесь, что вы вошли с торговым (а не инвесторским) паролем; в остальных случаях обратитесь к брокеру—
10018TRADE_RETCODE_MARKET_CLOSEDРынок закрытДождитесь открытия торговой сессии по символуРынок закрыт
10019TRADE_RETCODE_NO_MONEYНедостаточно средств для выполнения запросаУменьшите лот, закройте позиции или пополните счётНедостаточно средств
10021TRADE_RETCODE_PRICE_OFFНет котировок для обработки запросаПроверьте соединение и котируется ли символ в данный момент, затем повторите попыткуНет котировок и реквоты
10026TRADE_RETCODE_SERVER_DISABLES_ATАвтоторговля запрещена серверомБрокер блокирует алгоритмическую торговлю на этом счёте; обратитесь к брокеруАвтоторговля отключена
10027TRADE_RETCODE_CLIENT_DISABLES_ATАвтоторговля запрещена клиентским терминаломВключите кнопку Алготрейдинг и разрешите алготрейдинг в настройках и в свойствах EAАвтоторговля отключена
10030TRADE_RETCODE_INVALID_FILLНеправильный тип исполнения ордераЗадайте в type_filling режим, который поддерживает символ (FOK / IOC / Return)Неподдерживаемый режим исполнения
10031TRADE_RETCODE_CONNECTIONНет соединения с торговым серверомПроверьте строку состояния соединения, сеть VPS и состояние сервера брокера—

Ошибки времени выполнения (GetLastError())

КодКонстантаЗначениеРешениеПодробнее
4001ERR_INTERNAL_ERRORНеожиданная внутренняя ошибкаНе указывает на одну конкретную причину: вызовите ResetLastError() перед проверяемой функцией, а если ошибка не исчезает — перезапустите или обновите терминал—
4401ERR_HISTORY_NOT_FOUNDЗапрошенная история не найденаПеред чтением вызовите HistorySelect() за период, в который входит нужная сделка или ордер—
4752ERR_TRADE_DISABLEDТорговля для советников запрещенаВключите Алготрейдинг и отметьте «Разрешить алготрейдинг» в свойствах EAАвтоторговля отключена
4756ERR_TRADE_SEND_FAILEDНе удалось отправить торговый запросOrderSend() вернула false; настоящую причину смотрите в MqlTradeResult.retcode (часто это 10027, 10030 или 10016)—

Переходите с MT4? В MT4 для тех же ситуаций используются другие, в основном трёхзначные номера (134, 130, 132, 136, 4109 …). В каждом разделе ниже указан аналог в MT4 по официальному справочнику MQL4. Учтите, что в MT5 номер 4109 означает ERR_CHART_WRONG_PROPERTY (ошибка графика), а не торговую ошибку.

Наши 3 основных советника (опубликованы все цифры долгосрочного бэктеста и открытого форварда)

📧 Бесплатный email-курс (8 писем) + пакет из 13 индикаторов MT5 только для подписчиков

* Конфиденциальность строго защищена. Отписаться можно в любое время.

Как открыть вкладку Experts

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

Формат записи:
2026.05.18 10:00:01.234  GOLD VIPER XAUUSD,M30: [ERROR] 10016

Дата/Время  Имя EA           Символ    Таймфрейм  Сообщение

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


Распространённые коды ошибок и способы устранения

10019 — Недостаточно средств (TRADE_RETCODE_NO_MONEY)

Аналог в MT4: 134 ERR_NOT_ENOUGH_MONEY. ERR_NO_MONEY — широко используемое сокращённое обозначение той же ситуации.

Примеры сообщений: "Order failed: not enough money"
                   "No money"

Причина: Недостаточно маржи — EA не может открыть новую позицию.

Способы устранения:

  1. Проверьте текущий уровень маржи на вкладке «Торговля» в MT5
  2. Если уровень маржи близок к 100% или ниже, рассмотрите пополнение счёта
  3. Уменьшите параметр RiskPercent в настройках EA, чтобы снизить размер позиции
  4. Закройте вручную часть открытых позиций, чтобы высвободить маржу

📖 Почему ошибка появляется, даже когда баланс выглядит достаточным, и какой код MQL5 её предотвращает — в статье Недостаточно средств в MT5 — причины и решения.


10027 — Автоторговля отключена клиентом (TRADE_RETCODE_CLIENT_DISABLES_AT)

Связанная ошибка времени выполнения MT5: 4752 ERR_TRADE_DISABLED. Аналог в MT4: 4109 ERR_TRADE_NOT_ALLOWED.

Примеры сообщений: "AutoTrading disabled by client"
                   "Trade is not allowed"

Причина: Автоматическая торговля в MT5 отключена.

Способы устранения:

  1. Нажмите кнопку Алготрейдинг на панели инструментов MT5, чтобы включить её (она должна стать зелёной)
  2. Перейдите в Сервис → Настройки → Советники → включите «Разрешить алготрейдинг» и перезапустите MT5

Эта ошибка часто возникает при автоматическом запуске MT5 после перезагрузки VPS.

📖 Вся цепочка разрешений (параметры в настройках, «Разрешить алготрейдинг» для каждого графика, инвесторский пароль и разница между 10027 и 10026) разобрана в статье Автоторговля отключена в MT5 — полное решение.


10018 — Рынок закрыт (TRADE_RETCODE_MARKET_CLOSED)

Аналог в MT4: 132 ERR_MARKET_CLOSED.

Пример сообщения: "Market closed"

Причина: EA попытался открыть сделку в нерабочее время рынка (выходные или праздники).

Способ устранения: Действий не требуется. В выходные рынок закрыт, и любая попытка входа в этот период вызывает эту ошибку; когда рынок откроется, EA возобновит работу автоматически.

📖 Ошибка появляется в будни? Торговые сессии символа, серверное время и режим «только закрытие» описаны в статье Рынок закрыт (10018/132) — причины и решения.


10016 — Неверные стопы (TRADE_RETCODE_INVALID_STOPS)

Аналог в MT4: 130 ERR_INVALID_STOPS.

Пример сообщения: "Invalid stops"

Причина: Значение SL (стоп-лосс) или TP (тейк-профит) нарушает требование брокера к минимальному уровню стопов.

Способы устранения:

  1. Проверьте уровень стопов брокера (минимальное расстояние SL): в MT5 щёлкните правой кнопкой мыши по символу → «Спецификация» → поле «Уровень стопов»
  2. Убедитесь, что расстояние SL в EA больше уровня стопов
  3. Ошибка чаще всего возникает в периоды низкой волатильности, когда значения ATR очень малы

📖 Как на самом деле работают уровни стопов, чем 10016 отличается от 130 и какой код MQL5 устраняет ошибку навсегда — в статье Неверные стопы (10016/130) — полное решение.


10021 — Нет котировок (TRADE_RETCODE_PRICE_OFF)

Аналог в MT4: 136 ERR_OFF_QUOTES.

Пример сообщения: "Off quotes"

Причина: Котировки с сервера брокера не поступают — проблема с подключением.

Способы устранения:

  1. Проверьте статус соединения в строке состояния в нижней части окна MT5
  2. Если соединение разорвано, перезапустите MT5
  3. Проверьте страницу состояния серверов брокера на предмет сбоев
  4. Проверьте сетевое подключение на VPS

📖 Отличие от реквот (10004/138), настройка отклонения и реализация повторных попыток — в статье Нет котировок и реквоты (10021/10004) — полное решение.

📖 Сразу после смены брокера появляется Unsupported filling mode (10030)? Это другая проблема — см. Неподдерживаемый режим исполнения (10030) — как исправить.


10012 — Запрос отменён по тайм-ауту (TRADE_RETCODE_TIMEOUT)

Аналог в MT4: 128 ERR_TRADE_TIMEOUT.

Пример сообщения: "Request canceled by timeout"

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

Способы устранения:

  1. Чаще всего это происходит сразу после выхода важных новостей, когда нагрузка на сервер высока
  2. Как правило, EA повторит попытку на следующем тике — действий не требуется
  3. Если это случается часто, проверьте сетевую среду VPS или рассмотрите другого брокера

10006 — Запрос отклонён (TRADE_RETCODE_REJECT)

Пример сообщения: "Request rejected"

Причина: Брокер отклонил ордер — обычно из-за спреда, превышающего лимит, или слишком быстрого движения цены.

Способы устранения:

  1. Проверьте параметр MaxSpreadPoints; эта ошибка часто возникает при значительном расширении спреда
  2. Во время выхода новостей и сразу после него это ожидаемое поведение — ошибку можно игнорировать
  3. Если она возникает часто, немного увеличьте значение MaxSpreadPoints

"Margin level too low"

Пример сообщения: "Margin level too low. Skip signal."

Причина: Параметр EA UseMarginCheck = true обнаружил, что уровень маржи опустился ниже MinMarginLevel (например, 200%), поэтому новые входы автоматически блокируются.

Способы устранения:

  1. Это штатное защитное поведение — не ошибка
  2. Входы возобновятся автоматически, когда уровень маржи восстановится
  3. Кардинальное решение: пополните счёт или уменьшите RiskPercent

"No signal on this bar" или "Wait for next bar"

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

"No signal. ATR=1245, EMA(50)=1998.23"

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


Классификация ошибок по приоритету

ПриоритетОшибкаДействие
Критично10019 Недостаточно средств (MT4: 134)Немедленно пополнить счёт или уменьшить лот
Критично10027 Автоторговля отключена / 4752 (MT4: 4109)Включить алготрейдинг
Внимание10016 Неверные стопы (MT4: 130)Пересмотреть настройки SL
Внимание10030 Неправильный тип исполненияЗадать режим исполнения, который поддерживает символ
Внимание10021 Нет котировок (MT4: 136) — повторяетсяПроверить подключение
Норма10018 Рынок закрыт (MT4: 132) — только в выходныеДействий не требуется
Норма10012 Тайм-аут (MT4: 128) — изредкаДействий не требуется
НормаMargin level too lowШтатная защита при низкой марже

Как эффективно читать вкладку Experts

Фильтрация записей журнала

Щёлкните правой кнопкой мыши внутри вкладки Experts и выберите «Фильтр», чтобы показать записи только для конкретного EA или типа ошибки.

Расположение файлов журнала

Файлы журнала MT5 сохраняются здесь:

C:\Users\[Имя_пользователя]\AppData\Roaming\MetaQuotes\Terminal\[ID]\MQL5\Logs\

Файлы создаются автоматически по датам. Открывайте эту папку при разборе ошибок.


Итог

Большинство ошибок EA делятся на четыре категории:

  1. Недостаточно маржи (10019) — пополните счёт или уменьшите лот
  2. Автоторговля выключена (10027 / 4752) — нажмите кнопку «Алготрейдинг», чтобы включить её
  3. Проблемы с подключением (10021 / 10031) — перезапустите MT5 или проверьте сеть VPS
  4. Штатное поведение — действий не требуется (закрытие рынка в выходные, пропуск сделки из-за спреда и т.д.)

Возьмите за привычку ежедневно проверять вкладку Experts, чтобы быстро замечать критические ошибки (10019 и 10027) до того, как они приведут к проблемам.


Часто задаваемые вопросы

В: Где можно найти список кодов ошибок?

Все коды перечислены в официальном справочнике MQL5: коды возврата торгового сервера для диапазона 10004–10046 и ошибки времени выполнения для диапазона 4xxx. Также можно воспользоваться встроенной справкой MT5 (клавиша F1).

В: В чём разница между кодом возврата и GetLastError()?

Код возврата (10004–10046) — это ответ торгового сервера на ордер, он хранится в MqlTradeResult.retcode. GetLastError() возвращает ошибку времени выполнения самой программы MQL5 (4xxx и 5xxx). Когда OrderSend() завершается неудачей, вы часто получаете оба: 4756 из GetLastError() и код возврата, который сообщает настоящую причину.

В: Нужно ли останавливать EA, если ошибки появляются часто?

Если 10018 (рынок закрыт) или 10012 (тайм-аут) появляются изредка, останавливать EA не нужно. Однако если 10019 (недостаточно средств) повторяется, приостановите EA, проверьте состояние маржи и запустите его снова после устранения проблемы.

В: Появляется ошибка "Invalid account".

Возможно, данные для входа в MT5 (название сервера, логин или пароль) указаны неверно. Перейдите в Файл → Открыть счёт и войдите заново.

В: Ошибок нет, но EA не открывает сделки.

Если нет ни ошибок, ни входов, EA просто ждёт выполнения условий входа — это совершенно нормально. EA не входит на каждой свече; он входит только тогда, когда совпадают все условия. Подождите некоторое время. Для EA на H1 один–три входа в день — нормальная работа.

📧 Бесплатный email-курс (8 писем) + пакет из 13 индикаторов MT5 только для подписчиков

* Конфиденциальность строго защищена. Отписаться можно в любое время.

Есть вопрос о советниках или Forex?

Задайте его на трейдерском форуме Nattzy (бесплатная регистрация). Можно спрашивать не только по этой статье — о настройке советников, выборе брокера и многом другом.

Спросить на Nattzy ↗

Комментарии и вопросы