Mql4 ошибка 5203

Решил не плодить темы а отписать тут, так как проблема с этой же функцией и ошибка та же.

Сегодня пол ночи убил на решение проблемы с функцией WebRequest(), которая наглым образом возвращала мне ошибку 5203, хотя в коде ошибок нет. В общем, в конце концов, набросал я вот такой тестовый скрипт:

//+------------------------------------------------------------------+
//|                                              WebRequest_Test.mq4 |
//|                         Copyright 2015, ir0407[@]ruforum.mt5.com |
//|                                           http://ruforum.mt5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, ir0407[@]ruforum.mt5.com"
#property link      "http://ruforum.mt5.com"
#property version   "1.00"
#property strict

string url = "http://mql5.com";

void OnStart()
{
  string cookie  = "", referer = "", headers = "", msg = "n";
  char  post[], result[];
  int   timeout = 10000;
  
  ResetLastError();   
  int RequestRezult = WebRequest("GET", url, cookie, referer, timeout, post, 0, result, headers);
  if(RequestRezult == -1)
  {
    int Error = GetLastError();
    switch(Error)
    {
      case ERR_WEBREQUEST_INVALID_ADDRESS:
        msg = StringConcatenate(msg, "Ошибка ", Error, ": ERR_WEBREQUEST_INVALID_ADDRESS - URL не прошел проверку", "n"); break;
      case ERR_WEBREQUEST_CONNECT_FAILED:
        msg = StringConcatenate(msg, "Ошибка ", Error, ": ERR_WEBREQUEST_CONNECT_FAILED - Не удалось подключиться к указанному URL", "n"); break;
      case ERR_WEBREQUEST_TIMEOUT:
        msg = StringConcatenate(msg, "Ошибка ", Error, ": ERR_WEBREQUEST_TIMEOUT - Превышен таймаут получения данных", "n"); break;
      case ERR_WEBREQUEST_REQUEST_FAILED:
        msg = StringConcatenate(msg, "Ошибка ", Error, ": ERR_WEBREQUEST_REQUEST_FAILED - Ошибка в результате выполнения HTTP запроса", "n"); break;
      case ERR_FUNCTION_NOT_CONFIRMED:
        msg = StringConcatenate(msg, "Ошибка ", Error, ": ERR_FUNCTION_NOT_CONFIRMED - Функция не разрешена.", "n");
        msg = StringConcatenate(msg, "Данного URL [", url, "] нет в списке для WebRequest()", "n"); break;
      default:
        msg = StringConcatenate(msg, "Неизвестная ошибка #", Error, "n");
    }
    msg = StringConcatenate(msg, "result = ", CharArrayToString(result));
  }
  else
  {
    msg = StringConcatenate(msg, "Запрос к [", url, "] отправлен успешно.n");
    msg = StringConcatenate(msg, "Результат запроса = ", RequestRezult,"n");
    msg = StringConcatenate(msg, "Ответ сервера = ", CharArrayToString(result));
  }
  Comment(msg);
}

И хотя в коде ошибки отсутствуют этот скрипт выводит вот такую ошибку:

Я уже весь WinAPI на куски «порвал, как Тузик грелку» в поисках решения проблемы почему же это там вываливается ошибка 12150 и отчего это АПИ не может добавить куда-то там какие-то там хедеры. А ларчик просто открывался…

После кучи экспериментов удалось обнаружить, что причиной такого поведения функции WebRequest() является параметр referer. В отличии от других параметров его нельзя инициализировать пустой строкой, как в скрипте, хотя для строковых переменных такая инициализация более чем логична. Так же нельзя его инициализировать и пробелами. Все что можно в него вписать, так это константа NULL или любое строковое значение, кроме пробелов. В этом случае функция отрабатывает корректно. Все остальные параметры нормально воспринимаются функцией WebRequest() при любых раскладах, т.е. их можно спокойно инициализировать как константой NULL, так и пустой строкой «» или строкой состоящей из одних пробелов.

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

0

ERR_NO_ERROR

Нет ошибки

1

ERR_NO_RESULT

Нет ошибки, но результат неизвестен

2

ERR_COMMON_ERROR

Общая ошибка

3

ERR_INVALID_TRADE_PARAMETERS

Неправильные параметры

4

ERR_SERVER_BUSY

Торговый сервер занят

5

ERR_OLD_VERSION

Старая версия клиентского терминала

6

ERR_NO_CONNECTION

Нет связи с торговым сервером

7

ERR_NOT_ENOUGH_RIGHTS

Недостаточно прав

8

ERR_TOO_FREQUENT_REQUESTS

Слишком частые запросы

9

ERR_MALFUNCTIONAL_TRADE

Недопустимая операция, нарушающая функционирование сервера

64

ERR_ACCOUNT_DISABLED

Счет заблокирован

65

ERR_INVALID_ACCOUNT

Неправильный номер счета

128

ERR_TRADE_TIMEOUT

Истек срок ожидания совершения сделки

129

ERR_INVALID_PRICE

Неправильная цена

130

ERR_INVALID_STOPS

Неправильные стопы

131

ERR_INVALID_TRADE_VOLUME

Неправильный объем

132

ERR_MARKET_CLOSED

Рынок закрыт

133

ERR_TRADE_DISABLED

Торговля запрещена

134

ERR_NOT_ENOUGH_MONEY

Недостаточно денег для совершения операции

135

ERR_PRICE_CHANGED

Цена изменилась

136

ERR_OFF_QUOTES

Нет цен

137

ERR_BROKER_BUSY

Брокер занят

138

ERR_REQUOTE

Новые цены

139

ERR_ORDER_LOCKED

Ордер заблокирован и уже обрабатывается

140

ERR_LONG_POSITIONS_ONLY_ALLOWED

Разрешена только покупка

141

ERR_TOO_MANY_REQUESTS

Слишком много запросов

145

ERR_TRADE_MODIFY_DENIED

Модификация запрещена, так как ордер слишком близок к рынку

146

ERR_TRADE_CONTEXT_BUSY

Подсистема торговли занята

147

ERR_TRADE_EXPIRATION_DENIED

Использование даты истечения ордера запрещено брокером

148

ERR_TRADE_TOO_MANY_ORDERS

Количество открытых и отложенных ордеров достигло предела, установленного брокером

149

ERR_TRADE_HEDGE_PROHIBITED

Попытка открыть противоположный ордер в случае, если хеджирование запрещено

150

ERR_TRADE_PROHIBITED_BY_FIFO

Попытка закрыть позицию по инструменту в противоречии с правилом FIFO

4000

ERR_NO_MQLERROR

Нет ошибки

4001

ERR_WRONG_FUNCTION_POINTER

Неправильный указатель функции

4002

ERR_ARRAY_INDEX_OUT_OF_RANGE

Индекс массива — вне диапазона

4003

ERR_NO_MEMORY_FOR_CALL_STACK

Нет памяти для стека функций

4004

ERR_RECURSIVE_STACK_OVERFLOW

Переполнение стека после рекурсивного вызова

4005

ERR_NOT_ENOUGH_STACK_FOR_PARAM

На стеке нет памяти для передачи параметров

4006

ERR_NO_MEMORY_FOR_PARAM_STRING

Нет памяти для строкового параметра

4007

ERR_NO_MEMORY_FOR_TEMP_STRING

Нет памяти для временной строки

4008

ERR_NOT_INITIALIZED_STRING

Неинициализированная строка

4009

ERR_NOT_INITIALIZED_ARRAYSTRING

Неинициализированная строка в массиве

4010

ERR_NO_MEMORY_FOR_ARRAYSTRING

Нет памяти для строкового массива

4011

ERR_TOO_LONG_STRING

Слишком длинная строка

4012

ERR_REMAINDER_FROM_ZERO_DIVIDE

Остаток от деления на ноль

4013

ERR_ZERO_DIVIDE

Деление на ноль

4014

ERR_UNKNOWN_COMMAND

Неизвестная команда

4015

ERR_WRONG_JUMP

Неправильный переход

4016

ERR_NOT_INITIALIZED_ARRAY

Неинициализированный массив

4017

ERR_DLL_CALLS_NOT_ALLOWED

Вызовы DLL не разрешены

4018

ERR_CANNOT_LOAD_LIBRARY

Невозможно загрузить библиотеку

4019

ERR_CANNOT_CALL_FUNCTION

Невозможно вызвать функцию

4020

ERR_EXTERNAL_CALLS_NOT_ALLOWED

Вызовы внешних библиотечных функций не разрешены

4021

ERR_NO_MEMORY_FOR_RETURNED_STR

Недостаточно памяти для строки, возвращаемой из функции

4022

ERR_SYSTEM_BUSY

Система занята

4023

ERR_DLLFUNC_CRITICALERROR

Критическая ошибка вызова DLL-функции

4024

ERR_INTERNAL_ERROR

Внутренняя ошибка

4025

ERR_OUT_OF_MEMORY

Нет памяти

4026

ERR_INVALID_POINTER

Неверный указатель

4027

ERR_FORMAT_TOO_MANY_FORMATTERS

Слишком много параметров форматирования строки

4028

ERR_FORMAT_TOO_MANY_PARAMETERS

Число параметров превышает число параметров форматирования строки

4029

ERR_ARRAY_INVALID

Неверный массив

4030

ERR_CHART_NOREPLY

График не отвечает

4050

ERR_INVALID_FUNCTION_PARAMSCNT

Неправильное количество параметров функции

4051

ERR_INVALID_FUNCTION_PARAMVALUE

Недопустимое значение параметра функции

4052

ERR_STRING_FUNCTION_INTERNAL

Внутренняя ошибка строковой функции

4053

ERR_SOME_ARRAY_ERROR

Ошибка массива

4054

ERR_INCORRECT_SERIESARRAY_USING

Неправильное использование массива-таймсерии

4055

ERR_CUSTOM_INDICATOR_ERROR

Ошибка пользовательского индикатора

4056

ERR_INCOMPATIBLE_ARRAYS

Массивы несовместимы

4057

ERR_GLOBAL_VARIABLES_PROCESSING

Ошибка обработки глобальных переменных

4058

ERR_GLOBAL_VARIABLE_NOT_FOUND

Глобальная переменная не обнаружена

4059

ERR_FUNC_NOT_ALLOWED_IN_TESTING

Функция не разрешена в тестовом режиме

4060

ERR_FUNCTION_NOT_CONFIRMED

Функция не разрешена

4061

ERR_SEND_MAIL_ERROR

Ошибка отправки почты

4062

ERR_STRING_PARAMETER_EXPECTED

Ожидается параметр типа string

4063

ERR_INTEGER_PARAMETER_EXPECTED

Ожидается параметр типа integer

4064

ERR_DOUBLE_PARAMETER_EXPECTED

Ожидается параметр типа double

4065

ERR_ARRAY_AS_PARAMETER_EXPECTED

В качестве параметра ожидается массив

4066

ERR_HISTORY_WILL_UPDATED

Запрошенные исторические данные в состоянии обновления

4067

ERR_TRADE_ERROR

Ошибка при выполнении торговой операции

4068

ERR_RESOURCE_NOT_FOUND

Ресурс не найден

4069

ERR_RESOURCE_NOT_SUPPORTED

Ресурс не поддерживается

4070

ERR_RESOURCE_DUPLICATED

Дубликат ресурса

4071

ERR_INDICATOR_CANNOT_INIT

Ошибка инициализации пользовательского индикатора

4072

ERR_INDICATOR_CANNOT_LOAD

Ошибка загрузки пользовательского индикатора

4073

ERR_NO_HISTORY_DATA

Нет исторических данных

4074

ERR_NO_MEMORY_FOR_HISTORY

Не хватает памяти для исторических данных

4075

ERR_NO_MEMORY_FOR_INDICATOR

Не хватает памяти для расчёта индикатора

4099

ERR_END_OF_FILE

Конец файла

4100

ERR_SOME_FILE_ERROR

Ошибка при работе с файлом

4101

ERR_WRONG_FILE_NAME

Неправильное имя файла

4102

ERR_TOO_MANY_OPENED_FILES

Слишком много открытых файлов

4103

ERR_CANNOT_OPEN_FILE

Невозможно открыть файл

4104

ERR_INCOMPATIBLE_FILEACCESS

Несовместимый режим доступа к файлу

4105

ERR_NO_ORDER_SELECTED

Ни один ордер не выбран

4106

ERR_UNKNOWN_SYMBOL

Неизвестный символ

4107

ERR_INVALID_PRICE_PARAM

Неправильный параметр цены для торговой функции

4108

ERR_INVALID_TICKET

Неверный номер тикета

4109

ERR_TRADE_NOT_ALLOWED

Торговля не разрешена. Необходимо включить опцию «Разрешить советнику торговать» в свойствах эксперта

4110

ERR_LONGS_NOT_ALLOWED

Ордера на покупку не разрешены. Необходимо проверить свойства эксперта

4111

ERR_SHORTS_NOT_ALLOWED

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

4112

ERR_TRADE_EXPERT_DISABLED_BY_SERVER

Автоматическая торговля с помощью экспертов/скриптов запрещена на стороне сервера

4200

ERR_OBJECT_ALREADY_EXISTS

Объект уже существует

4201

ERR_UNKNOWN_OBJECT_PROPERTY

Запрошено неизвестное свойство объекта

4202

ERR_OBJECT_DOES_NOT_EXIST

Объект не существует

4203

ERR_UNKNOWN_OBJECT_TYPE

Неизвестный тип объекта

4204

ERR_NO_OBJECT_NAME

Нет имени объекта

4205

ERR_OBJECT_COORDINATES_ERROR

Ошибка координат объекта

4206

ERR_NO_SPECIFIED_SUBWINDOW

Не найдено указанное подокно

4207

ERR_SOME_OBJECT_ERROR

Ошибка при работе с объектом

4210

ERR_CHART_PROP_INVALID

Неизвестное свойство графика

4211

ERR_CHART_NOT_FOUND

График не найден

4212

ERR_CHARTWINDOW_NOT_FOUND

Не найдено подокно графика

4213

ERR_CHARTINDICATOR_NOT_FOUND

Индикатор не найден

4220

ERR_SYMBOL_SELECT

Ошибка выбора инструмента

4250

ERR_NOTIFICATION_ERROR

Ошибка отправки push-уведомления

4251

ERR_NOTIFICATION_PARAMETER

Ошибка параметров push-уведомления

4252

ERR_NOTIFICATION_SETTINGS

Уведомления запрещены

4253

ERR_NOTIFICATION_TOO_FREQUENT

Слишком частые запросы отсылки push-уведомлений

4260

ERR_FTP_NOSERVER

Не указан FTP сервер

4261

ERR_FTP_NOLOGIN

Не указан FTP логин

4262

ERR_FTP_CONNECT_FAILED

Ошибка при подключении к FTP серверу

4263

ERR_FTP_CLOSED

Подключение к FTP серверу закрыто

4264

ERR_FTP_CHANGEDIR

На FTP сервере не найдена директория для выгрузки файла

4265

ERR_FTP_FILE_ERROR

Не найден файл в директории MQL4Files для отправки на FTP сервер

4266

ERR_FTP_ERROR

Ошибка при передаче файла на FTP сервер

5001

ERR_FILE_TOO_MANY_OPENED

Слишком много открытых файлов

5002

ERR_FILE_WRONG_FILENAME

Неверное имя файла

5003

ERR_FILE_TOO_LONG_FILENAME

Слишком длинное имя файла

5004

ERR_FILE_CANNOT_OPEN

Ошибка открытия файла

5005

ERR_FILE_BUFFER_ALLOCATION_ERROR

Ошибка размещения буфера текстового файла

5006

ERR_FILE_CANNOT_DELETE

Ошибка удаления файла

5007

ERR_FILE_INVALID_HANDLE

Неверный хендл файла (файл закрыт или не был открыт)

5008

ERR_FILE_WRONG_HANDLE

Неверный хендл файла (индекс хендла отсутствует в таблице)

5009

ERR_FILE_NOT_TOWRITE

Файл должен быть открыт с флагом FILE_WRITE

5010

ERR_FILE_NOT_TOREAD

Файл должен быть открыт с флагом FILE_READ

5011

ERR_FILE_NOT_BIN

Файл должен быть открыт с флагом FILE_BIN

5012

ERR_FILE_NOT_TXT

Файл должен быть открыт с флагом FILE_TXT

5013

ERR_FILE_NOT_TXTORCSV

Файл должен быть открыт с флагом FILE_TXT или FILE_CSV

5014

ERR_FILE_NOT_CSV

Файл должен быть открыт с флагом FILE_CSV

5015

ERR_FILE_READ_ERROR

Ошибка чтения файла

5016

ERR_FILE_WRITE_ERROR

Ошибка записи файла

5017

ERR_FILE_BIN_STRINGSIZE

Размер строки должен быть указан для двоичных файлов

5018

ERR_FILE_INCOMPATIBLE

Неверный тип файла (для строковых массивов-TXT, для всех других-BIN)

5019

ERR_FILE_IS_DIRECTORY

Файл является директорией

5020

ERR_FILE_NOT_EXIST

Файл не существует

5021

ERR_FILE_CANNOT_REWRITE

Файл не может быть перезаписан

5022

ERR_FILE_WRONG_DIRECTORYNAME

Неверное имя директории

5023

ERR_FILE_DIRECTORY_NOT_EXIST

Директория не существует

5024

ERR_FILE_NOT_DIRECTORY

Указанный файл не является директорией

5025

ERR_FILE_CANNOT_DELETE_DIRECTORY

Ошибка удаления директории

5026

ERR_FILE_CANNOT_CLEAN_DIRECTORY

Ошибка очистки директории

5027

ERR_FILE_ARRAYRESIZE_ERROR

Ошибка изменения размера массива

5028

ERR_FILE_STRINGRESIZE_ERROR

Ошибка изменения размера строки

5029

ERR_FILE_STRUCT_WITH_OBJECTS

Структура содержит строки или динамические массивы

5200

ERR_WEBREQUEST_INVALID_ADDRESS

URL не прошел проверку

5201

ERR_WEBREQUEST_CONNECT_FAILED

Не удалось подключиться к указанному URL

5202

ERR_WEBREQUEST_TIMEOUT

Превышен таймаут получения данных

5203

ERR_WEBREQUEST_REQUEST_FAILED

Ошибка в результате выполнения HTTP запроса

Пользовательские ошибки

65536

ERR_USER_ERROR_FIRST

С этого кода начинаются ошибки, задаваемые пользователем

Error 5203 (HTTP request failed) can occur for several reasons. Rectifying this error is essential as it means your MetaTrader terminal is unable to communicate with our server to validate your license key, typically meaning your Expert Advisor will cease to function. If you receive an error you will be able to view it in the Experts tab within MetaTrader.

In order to rectify the issue, please ensure you attempt the below troubleshooting steps.

  • Confirm that you have properly added “https://www.bluecapitaltrading.com” to the list of allowed URLs for WebRequest and that “Allow WebRequest for listed URL” is checked in Tools > Options > Expert Advisors. You should also confirm that you have added our “https” web address and not “http”.

  • Check your internet connection and firewall settings to make sure there are no restrictions regarding your MetaTrader installation.
  • Restart your MetaTrader terminal.
  • Reapply the Expert Advisor to a chart with your desired settings.
  • If you are using a wireless internet connection switch to a wired connection if possible.

If you still receive this issue please open a support ticket and our team can assist.

ERR_SUCCESS 0 The operation completed successfully ERR_INTERNAL_ERROR 4001 Unexpected internal error ERR_WRONG_INTERNAL_PARAMETER 4002 Wrong parameter in the inner call of the client terminal function ERR_INVALID_PARAMETER 4003 Wrong parameter when calling the system function ERR_NOT_ENOUGH_MEMORY 4004 Not enough memory to perform the system function ERR_STRUCT_WITHOBJECTS_ORCLASS 4005 The structure contains objects of strings and/or dynamic arrays and/or structure of such objects and/or classes ERR_INVALID_ARRAY 4006 Array of a wrong type, wrong size, or a damaged object of a dynamic array ERR_ARRAY_RESIZE_ERROR 4007 Not enough memory for the relocation of an array, or an attempt to change the size of a static array ERR_STRING_RESIZE_ERROR 4008 Not enough memory for the relocation of string ERR_NOTINITIALIZED_STRING 4009 Not initialized string ERR_INVALID_DATETIME 4010 Invalid date and/or time ERR_ARRAY_BAD_SIZE 4011 Total amount of elements in the array cannot exceed 2147483647 ERR_INVALID_POINTER 4012 Wrong pointer ERR_INVALID_POINTER_TYPE 4013 Wrong type of pointer ERR_FUNCTION_NOT_ALLOWED 4014 Function is not allowed for call ERR_RESOURCE_NAME_DUPLICATED 4015 The names of the dynamic and the static resource match ERR_RESOURCE_NOT_FOUND 4016 Resource with this name has not been found in EX5 ERR_RESOURCE_UNSUPPOTED_TYPE 4017 Unsupported resource type or its size exceeds 16 Mb ERR_RESOURCE_NAME_IS_TOO_LONG 4018 The resource name exceeds 63 characters ERR_MATH_OVERFLOW 4019 Overflow occurred when calculating math function ERR_SLEEP_ERROR 4020 Out of test end date after calling Sleep() ERR_PROGRAM_STOPPED 4022 Test forcibly stopped from the outside. For example, optimization interrupted, visual testing window closed or testing agent stopped Charts     ERR_CHART_WRONG_ID 4101 Wrong chart ID ERR_CHART_NO_REPLY 4102 Chart does not respond ERR_CHART_NOT_FOUND 4103 Chart not found ERR_CHART_NO_EXPERT 4104 No Expert Advisor in the chart that could handle the event ERR_CHART_CANNOT_OPEN 4105 Chart opening error ERR_CHART_CANNOT_CHANGE 4106 Failed to change chart symbol and period ERR_CHART_WRONG_PARAMETER 4107 Error value of the parameter for the function of working with charts ERR_CHART_CANNOT_CREATE_TIMER 4108 Failed to create timer ERR_CHART_WRONG_PROPERTY 4109 Wrong chart property ID ERR_CHART_SCREENSHOT_FAILED 4110 Error creating screenshots ERR_CHART_NAVIGATE_FAILED 4111 Error navigating through chart ERR_CHART_TEMPLATE_FAILED 4112 Error applying template ERR_CHART_WINDOW_NOT_FOUND 4113 Subwindow containing the indicator was not found ERR_CHART_INDICATOR_CANNOT_ADD 4114 Error adding an indicator to chart ERR_CHART_INDICATOR_CANNOT_DEL 4115 Error deleting an indicator from the chart ERR_CHART_INDICATOR_NOT_FOUND 4116 Indicator not found on the specified chart Graphical Objects     ERR_OBJECT_ERROR 4201 Error working with a graphical object ERR_OBJECT_NOT_FOUND 4202 Graphical object was not found ERR_OBJECT_WRONG_PROPERTY 4203 Wrong ID of a graphical object property ERR_OBJECT_GETDATE_FAILED 4204 Unable to get date corresponding to the value ERR_OBJECT_GETVALUE_FAILED 4205 Unable to get value corresponding to the date MarketInfo     ERR_MARKET_UNKNOWN_SYMBOL 4301 Unknown symbol ERR_MARKET_NOT_SELECTED 4302 Symbol is not selected in MarketWatch ERR_MARKET_WRONG_PROPERTY 4303 Wrong identifier of a symbol property ERR_MARKET_LASTTIME_UNKNOWN 4304 Time of the last tick is not known (no ticks) ERR_MARKET_SELECT_ERROR 4305 Error adding or deleting a symbol in MarketWatch History Access     ERR_HISTORY_NOT_FOUND 4401 Requested history not found ERR_HISTORY_WRONG_PROPERTY 4402 Wrong ID of the history property ERR_HISTORY_TIMEOUT 4403 Exceeded history request timeout ERR_HISTORY_BARS_LIMIT 4404 Number of requested bars limited by terminal settings ERR_HISTORY_LOAD_ERRORS 4405 Multiple errors when loading history ERR_HISTORY_SMALL_BUFFER 4407 Receiving array is too small to store all requested data Global_Variables     ERR_GLOBALVARIABLE_NOT_FOUND 4501 Global variable of the client terminal is not found ERR_GLOBALVARIABLE_EXISTS 4502 Global variable of the client terminal with the same name already exists ERR_GLOBALVARIABLE_NOT_MODIFIED 4503 Global variables were not modified ERR_GLOBALVARIABLE_CANNOTREAD 4504 Cannot read file with global variable values ERR_GLOBALVARIABLE_CANNOTWRITE 4505 Cannot write file with global variable values ERR_MAIL_SEND_FAILED 4510 Email sending failed ERR_PLAY_SOUND_FAILED 4511 Sound playing failed ERR_MQL5_WRONG_PROPERTY 4512 Wrong identifier of the program property ERR_TERMINAL_WRONG_PROPERTY 4513 Wrong identifier of the terminal property ERR_FTP_SEND_FAILED 4514 File sending via ftp failed ERR_NOTIFICATION_SEND_FAILED 4515 Failed to send a notification ERR_NOTIFICATION_WRONG_PARAMETER 4516 Invalid parameter for sending a notification – an empty string or NULL has been passed to the SendNotification() function ERR_NOTIFICATION_WRONG_SETTINGS 4517 Wrong settings of notifications in the terminal (ID is not specified or permission is not set) ERR_NOTIFICATION_TOO_FREQUENT 4518 Too frequent sending of notifications ERR_FTP_NOSERVER 4519 FTP server is not specified ERR_FTP_NOLOGIN 4520 FTP login is not specified ERR_FTP_FILE_ERROR 4521 File not found in the MQL5Files directory to send on FTP server ERR_FTP_CONNECT_FAILED 4522 FTP connection failed ERR_FTP_CHANGEDIR 4523 FTP path not found on server ERR_FTP_CLOSED 4524 FTP connection closed Custom Indicator Buffers     ERR_BUFFERS_NO_MEMORY 4601 Not enough memory for the distribution of indicator buffers ERR_BUFFERS_WRONG_INDEX 4602 Wrong indicator buffer index Custom Indicator Properties     ERR_CUSTOM_WRONG_PROPERTY 4603 Wrong ID of the custom indicator property Account     ERR_ACCOUNT_WRONG_PROPERTY 4701 Wrong account property ID ERR_TRADE_WRONG_PROPERTY 4751 Wrong trade property ID ERR_TRADE_DISABLED 4752 Trading by Expert Advisors prohibited ERR_TRADE_POSITION_NOT_FOUND 4753 Position not found ERR_TRADE_ORDER_NOT_FOUND 4754 Order not found ERR_TRADE_DEAL_NOT_FOUND 4755 Deal not found ERR_TRADE_SEND_FAILED 4756 Trade request sending failed ERR_TRADE_CALC_FAILED 4758 Failed to calculate profit or margin Indicators     ERR_INDICATOR_UNKNOWN_SYMBOL 4801 Unknown symbol ERR_INDICATOR_CANNOT_CREATE 4802 Indicator cannot be created ERR_INDICATOR_NO_MEMORY 4803 Not enough memory to add the indicator ERR_INDICATOR_CANNOT_APPLY 4804 The indicator cannot be applied to another indicator ERR_INDICATOR_CANNOT_ADD 4805 Error applying an indicator to chart ERR_INDICATOR_DATA_NOT_FOUND 4806 Requested data not found ERR_INDICATOR_WRONG_HANDLE 4807 Wrong indicator handle ERR_INDICATOR_WRONG_PARAMETERS 4808 Wrong number of parameters when creating an indicator ERR_INDICATOR_PARAMETERS_MISSING 4809 No parameters when creating an indicator ERR_INDICATOR_CUSTOM_NAME 4810 The first parameter in the array must be the name of the custom indicator ERR_INDICATOR_PARAMETER_TYPE 4811 Invalid parameter type in the array when creating an indicator ERR_INDICATOR_WRONG_INDEX 4812 Wrong index of the requested indicator buffer Depth of Market     ERR_BOOKS_CANNOT_ADD 4901 Depth Of Market can not be added ERR_BOOKS_CANNOT_DELETE 4902 Depth Of Market can not be removed ERR_BOOKS_CANNOT_GET 4903 The data from Depth Of Market can not be obtained ERR_BOOKS_CANNOT_SUBSCRIBE 4904 Error in subscribing to receive new data from Depth Of Market File Operations     ERR_TOO_MANY_FILES 5001 More than 64 files cannot be opened at the same time ERR_WRONG_FILENAME 5002 Invalid file name ERR_TOO_LONG_FILENAME 5003 Too long file name ERR_CANNOT_OPEN_FILE 5004 File opening error ERR_FILE_CACHEBUFFER_ERROR 5005 Not enough memory for cache to read ERR_CANNOT_DELETE_FILE 5006 File deleting error ERR_INVALID_FILEHANDLE 5007 A file with this handle was closed, or was not opening at all ERR_WRONG_FILEHANDLE 5008 Wrong file handle ERR_FILE_NOTTOWRITE 5009 The file must be opened for writing ERR_FILE_NOTTOREAD 5010 The file must be opened for reading ERR_FILE_NOTBIN 5011 The file must be opened as a binary one ERR_FILE_NOTTXT 5012 The file must be opened as a text ERR_FILE_NOTTXTORCSV 5013 The file must be opened as a text or CSV ERR_FILE_NOTCSV 5014 The file must be opened as CSV ERR_FILE_READERROR 5015 File reading error ERR_FILE_BINSTRINGSIZE 5016 String size must be specified, because the file is opened as binary ERR_INCOMPATIBLE_FILE 5017 A text file must be for string arrays, for other arrays – binary ERR_FILE_IS_DIRECTORY 5018 This is not a file, this is a directory ERR_FILE_NOT_EXIST 5019 File does not exist ERR_FILE_CANNOT_REWRITE 5020 File can not be rewritten ERR_WRONG_DIRECTORYNAME 5021 Wrong directory name ERR_DIRECTORY_NOT_EXIST 5022 Directory does not exist ERR_FILE_ISNOT_DIRECTORY 5023 This is a file, not a directory ERR_CANNOT_DELETE_DIRECTORY 5024 The directory cannot be removed ERR_CANNOT_CLEAN_DIRECTORY 5025 Failed to clear the directory (probably one or more files are blocked and removal operation failed) ERR_FILE_WRITEERROR 5026 Failed to write a resource to a file ERR_FILE_ENDOFFILE 5027 Unable to read the next piece of data from a CSV file (FileReadString, FileReadNumber, FileReadDatetime, FileReadBool), since the end of file is reached String Casting     ERR_NO_STRING_DATE 5030 No date in the string ERR_WRONG_STRING_DATE 5031 Wrong date in the string ERR_WRONG_STRING_TIME 5032 Wrong time in the string ERR_STRING_TIME_ERROR 5033 Error converting string to date ERR_STRING_OUT_OF_MEMORY 5034 Not enough memory for the string ERR_STRING_SMALL_LEN 5035 The string length is less than expected ERR_STRING_TOO_BIGNUMBER 5036 Too large number, more than ULONG_MAX ERR_WRONG_FORMATSTRING 5037 Invalid format string ERR_TOO_MANY_FORMATTERS 5038 Amount of format specifiers more than the parameters ERR_TOO_MANY_PARAMETERS 5039 Amount of parameters more than the format specifiers ERR_WRONG_STRING_PARAMETER 5040 Damaged parameter of string type ERR_STRINGPOS_OUTOFRANGE 5041 Position outside the string ERR_STRING_ZEROADDED 5042 0 added to the string end, a useless operation ERR_STRING_UNKNOWNTYPE 5043 Unknown data type when converting to a string ERR_WRONG_STRING_OBJECT 5044 Damaged string object Operations with Arrays     ERR_INCOMPATIBLE_ARRAYS 5050 Copying incompatible arrays. String array can be copied only to a string array, and a numeric array – in numeric array only ERR_SMALL_ASSERIES_ARRAY 5051 The receiving array is declared as AS_SERIES, and it is of insufficient size ERR_SMALL_ARRAY 5052 Too small array, the starting position is outside the array ERR_ZEROSIZE_ARRAY 5053 An array of zero length ERR_NUMBER_ARRAYS_ONLY 5054 Must be a numeric array ERR_ONEDIM_ARRAYS_ONLY 5055 Must be a one-dimensional array ERR_SERIES_ARRAY 5056 Timeseries cannot be used ERR_DOUBLE_ARRAY_ONLY 5057 Must be an array of type double ERR_FLOAT_ARRAY_ONLY 5058 Must be an array of type float ERR_LONG_ARRAY_ONLY 5059 Must be an array of type long ERR_INT_ARRAY_ONLY 5060 Must be an array of type int ERR_SHORT_ARRAY_ONLY 5061 Must be an array of type short ERR_CHAR_ARRAY_ONLY 5062 Must be an array of type char ERR_STRING_ARRAY_ONLY 5063 String array only Operations with OpenCL     ERR_OPENCL_NOT_SUPPORTED 5100 OpenCL functions are not supported on this computer ERR_OPENCL_INTERNAL 5101 Internal error occurred when running OpenCL ERR_OPENCL_INVALID_HANDLE 5102 Invalid OpenCL handle ERR_OPENCL_CONTEXT_CREATE 5103 Error creating the OpenCL context ERR_OPENCL_QUEUE_CREATE 5104 Failed to create a run queue in OpenCL ERR_OPENCL_PROGRAM_CREATE 5105 Error occurred when compiling an OpenCL program ERR_OPENCL_TOO_LONG_KERNEL_NAME 5106 Too long kernel name (OpenCL kernel) ERR_OPENCL_KERNEL_CREATE 5107 Error creating an OpenCL kernel ERR_OPENCL_SET_KERNEL_PARAMETER 5108 Error occurred when setting parameters for the OpenCL kernel ERR_OPENCL_EXECUTE 5109 OpenCL program runtime error ERR_OPENCL_WRONG_BUFFER_SIZE 5110 Invalid size of the OpenCL buffer ERR_OPENCL_WRONG_BUFFER_OFFSET 5111 Invalid offset in the OpenCL buffer ERR_OPENCL_BUFFER_CREATE 5112 Failed to create an OpenCL buffer ERR_OPENCL_TOO_MANY_OBJECTS 5113 Too many OpenCL objects ERR_OPENCL_SELECTDEVICE 5114 OpenCL device selection error Working with databases     ERR_DATABASE_INTERNAL 5120 Internal database error ERR_DATABASE_INVALID_HANDLE 5121 Invalid database handle ERR_DATABASE_TOO_MANY_OBJECTS 5122 Exceeded the maximum acceptable number of Database objects ERR_DATABASE_CONNECT 5123 Database connection error ERR_DATABASE_EXECUTE 5124 Request execution error ERR_DATABASE_PREPARE 5125 Request generation error ERR_DATABASE_NO_MORE_DATA 5126 No more data to read ERR_DATABASE_STEP 5127 Failed to move to the next request entry ERR_DATABASE_NOT_READY 5128 Data for reading request results are not ready yet ERR_DATABASE_BIND_PARAMETERS 5129 Failed to auto substitute parameters to an SQL request Operations with WebRequest     ERR_WEBREQUEST_INVALID_ADDRESS 5200 Invalid URL ERR_WEBREQUEST_CONNECT_FAILED 5201 Failed to connect to specified URL ERR_WEBREQUEST_TIMEOUT 5202 Timeout exceeded ERR_WEBREQUEST_REQUEST_FAILED 5203 HTTP request failed Operations with network (sockets)     ERR_NETSOCKET_INVALIDHANDLE 5270 Invalid socket handle passed to function ERR_NETSOCKET_TOO_MANY_OPENED 5271 Too many open sockets (max 128) ERR_NETSOCKET_CANNOT_CONNECT 5272 Failed to connect to remote host ERR_NETSOCKET_IO_ERROR 5273 Failed to send/receive data from socket ERR_NETSOCKET_HANDSHAKE_FAILED 5274 Failed to establish secure connection (TLS Handshake) ERR_NETSOCKET_NO_CERTIFICATE 5275 No data on certificate protecting the connection Custom Symbols     ERR_NOT_CUSTOM_SYMBOL 5300 A custom symbol must be specified ERR_CUSTOM_SYMBOL_WRONG_NAME 5301 The name of the custom symbol is invalid. The symbol name can only contain Latin letters without punctuation, spaces or special characters (may only contain “.”, “_”, “&” and “#”). It is not recommended to use characters <, >, :, “, /,, |, ?, *. ERR_CUSTOM_SYMBOL_NAME_LONG 5302 The name of the custom symbol is too long. The length of the symbol name must not exceed 32 characters including the ending 0 character ERR_CUSTOM_SYMBOL_PATH_LONG 5303 The path of the custom symbol is too long. The path length should not exceed 128 characters including “Custom\”, the symbol name, group separators and the ending 0 ERR_CUSTOM_SYMBOL_EXIST 5304 A custom symbol with the same name already exists ERR_CUSTOM_SYMBOL_ERROR 5305 Error occurred while creating, deleting or changing the custom symbol ERR_CUSTOM_SYMBOL_SELECTED 5306 You are trying to delete a custom symbol selected in Market Watch ERR_CUSTOM_SYMBOL_PROPERTY_WRONG 5307 An invalid custom symbol property ERR_CUSTOM_SYMBOL_PARAMETER_ERROR 5308 A wrong parameter while setting the property of a custom symbol ERR_CUSTOM_SYMBOL_PARAMETER_LONG 5309 A too long string parameter while setting the property of a custom symbol ERR_CUSTOM_TICKS_WRONG_ORDER 5310 Ticks in the array are not arranged in the order of time Economic Calendar     ERR_CALENDAR_MORE_DATA 5400 Array size is insufficient for receiving descriptions of all values ERR_CALENDAR_TIMEOUT 5401 Request time limit exceeded ERR_CALENDAR_NO_DATA 5402 Country is not found Working with databases     ERR_DATABASE_ERROR   5601 Generic error ERR_DATABASE_INTERNAL 5602 SQLite internal logic error ERR_DATABASE_PERM 5603 Access denied ERR_DATABASE_ABORT 5604 Callback routine requested abort ERR_DATABASE_BUSY 5605 Database file locked ERR_DATABASE_LOCKED 5606 Database table locked ERR_DATABASE_NOMEM 5607 Insufficient memory for completing operation ERR_DATABASE_READONLY 5608 Attempt to write to readonly database ERR_DATABASE_INTERRUPT 5609 Operation terminated by sqlite3_interrupt() ERR_DATABASE_IOERR 5610 Disk I/O error ERR_DATABASE_CORRUPT 5611 Database disk image corrupted ERR_DATABASE_NOTFOUND 5612 Unknown operation code in sqlite3_file_control() ERR_DATABASE_FULL 5613 Insertion failed because database is full ERR_DATABASE_CANTOPEN 5614 Unable to open the database file ERR_DATABASE_PROTOCOL 5615 Database lock protocol error ERR_DATABASE_EMPTY 5616 Internal use only ERR_DATABASE_SCHEMA 5617 Database schema changed ERR_DATABASE_TOOBIG 5618 String or BLOB exceeds size limit ERR_DATABASE_CONSTRAINT 5619 Abort due to constraint violation ERR_DATABASE_MISMATCH 5620 Data type mismatch ERR_DATABASE_MISUSE 5621 Library used incorrectly ERR_DATABASE_NOLFS 5622 Uses OS features not supported on host ERR_DATABASE_AUTH 5623 Authorization denied ERR_DATABASE_FORMAT 5624 Not used ERR_DATABASE_RANGE 5625 Bind parameter error, incorrect index ERR_DATABASE_NOTADB 5626 File opened that is not database file User-Defined Errors     ERR_USER_ERROR_FIRST 65536 User defined errors start with this code

Все приказы на совершение торговых операций отправляются в виде структуры торгового запроса MqlTradeRequest с помощью функции OrderSend(). Результат выполнения этой функции помещается в структуру MqlTradeResult, поле retcode которой содержит код возврата торгового сервера.

10004

TRADE_RETCODE_REQUOTE

Реквота

10006

TRADE_RETCODE_REJECT

Запрос отклонен

10007

TRADE_RETCODE_CANCEL

Запрос отменен трейдером

10008

TRADE_RETCODE_PLACED

Ордер размещен

10009

TRADE_RETCODE_DONE

Заявка выполнена

10010

TRADE_RETCODE_DONE_PARTIAL

Заявка выполнена частично

10011

TRADE_RETCODE_ERROR

Ошибка обработки запроса

10012

TRADE_RETCODE_TIMEOUT

Запрос отменен по истечению времени

10013

TRADE_RETCODE_INVALID

Неправильный запрос

10014

TRADE_RETCODE_INVALID_VOLUME

Неправильный объем в запросе

10015

TRADE_RETCODE_INVALID_PRICE

Неправильная цена в запросе

10016

TRADE_RETCODE_INVALID_STOPS

Неправильные стопы в запросе

10017

TRADE_RETCODE_TRADE_DISABLED

Торговля запрещена

10018

TRADE_RETCODE_MARKET_CLOSED

Рынок закрыт

10019

TRADE_RETCODE_NO_MONEY

Нет достаточных денежных средств для выполнения запроса

10020

TRADE_RETCODE_PRICE_CHANGED

Цены изменились

10021

TRADE_RETCODE_PRICE_OFF

Отсутствуют котировки для обработки запроса

10022

TRADE_RETCODE_INVALID_EXPIRATION

Неверная дата истечения ордера в запросе

10023

TRADE_RETCODE_ORDER_CHANGED

Состояние ордера изменилось

10024

TRADE_RETCODE_TOO_MANY_REQUESTS

Слишком частые запросы

10025

TRADE_RETCODE_NO_CHANGES

В запросе нет изменений

10026

TRADE_RETCODE_SERVER_DISABLES_AT

Автотрейдинг запрещен сервером

10027

TRADE_RETCODE_CLIENT_DISABLES_AT

Автотрейдинг запрещен клиентским терминалом

10028

TRADE_RETCODE_LOCKED

Запрос заблокирован для обработки

10029

TRADE_RETCODE_FROZEN

Ордер или позиция заморожены

10030

TRADE_RETCODE_INVALID_FILL

Указан неподдерживаемый тип исполнения ордера по остатку

10031

TRADE_RETCODE_CONNECTION

Нет соединения с торговым сервером

10032

TRADE_RETCODE_ONLY_REAL

Операция разрешена только для реальных счетов

10033

TRADE_RETCODE_LIMIT_ORDERS

Достигнут лимит на количество отложенных ордеров

10034

TRADE_RETCODE_LIMIT_VOLUME

Достигнут лимит на объем ордеров и позиций для данного символа

10035

TRADE_RETCODE_INVALID_ORDER

Неверный или запрещённый тип ордера

10036

TRADE_RETCODE_POSITION_CLOSED

Позиция с указанным POSITION_IDENTIFIER уже закрыта

10038

TRADE_RETCODE_INVALID_CLOSE_VOLUME

Закрываемый объем превышает текущий объем позиции

10039

TRADE_RETCODE_CLOSE_ORDER_EXIST

Для указанной позиции уже есть ордер на закрытие. Может возникнуть при работе в системе хеджинга:

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

10040

TRADE_RETCODE_LIMIT_POSITIONS

Количество открытых позиций, которое можно одновременно иметь на счете, может быть ограничено настройками сервера. При достижении лимита в ответ на выставление ордера сервер вернет ошибку TRADE_RETCODE_LIMIT_POSITIONS. Ограничение работает по-разному в зависимости от типа учета позиций на счете:

  • Неттинговая система — учитывается количество открытых позиции. При достижении лимита платформа не позволит выставлять новые ордера, в результате исполнения которых может увеличиться количество открытых позиций. Фактически, платформа позволит выставлять ордера только по тем символам, по которым уже есть открытые позиции. В неттинговой системе при проверке лимита не учитываются текущие отложенные ордера, поскольку их исполнение может привести к изменению текущих позиций, а не увеличению их количества.
  • Хеджинговая система — помимо открытых позиций, учитываются выставленные отложенные ордера, поскольку их срабатывание всегда приводит к открытию новой позиции. При достижении лимита платформа не позволит выставлять рыночные ордера на открытие позиций, а также отложенные ордера.

10041

TRADE_RETCODE_REJECT_CANCEL

Запрос на активацию отложенного ордера отклонен, а сам ордер отменен

10042

TRADE_RETCODE_LONG_ONLY

Запрос отклонен, так как на символе установлено правило «Разрешены только длинные позиции»  (POSITION_TYPE_BUY)

10043

TRADE_RETCODE_SHORT_ONLY

Запрос отклонен, так как на символе установлено правило «Разрешены только короткие позиции» (POSITION_TYPE_SELL)

10044

TRADE_RETCODE_CLOSE_ONLY

Запрос отклонен, так как на символе установлено правило «Разрешено только закрывать существующие позиции«

Предупреждения компилятора носят информационный характер и не являются сообщениями об ошибках.

21

Неполная запись даты в строке datetime

22

Ошибочные числа в строке datetime для даты, требования:

      год     1970<=X<=3000

      месяц   0<X<=12

      день    0<X<= 31/30/28(29)….

23

Ошибочные числа в строке datetime для времени, требования:

     час     0<=X<24

     минута  0<=X<60

24

Некорректный цвет в формате RGB: одна из компонент RGB меньше 0 или больше 255

25

Неизвестный символ эскейп последовательности.

      Известные: n r t » ’ X x

26

Слишком большой объем локальных переменных (>512кб) функции, уменьшите их количество

29

Перечисление уже определено (дублирование) – члены будут добавлены к первому определению

30

Переопределение макроса

31

Переменная объявлена, но нигде не используется

32

Конструктор должен иметь тип void

33

Деструктор должен иметь тип void

34

Константа не вмещается в диапазон целых (X>_UI64_MAX || X<_I64_MIN) и будет преобразована в тип double

35

Слишком длинный HEX больше 16 значащих символов (обрезаются старшие полубайты)

36

Нет ни одного полубайта в HEX строке «0x»

37

Нет ни одной функции — нечего будет выполнять

38

Используется неинициализированная переменная

41

Функция не имеет тела, но и не вызывается

43

Возможны потери данных при преобразовании типа. Пример: int x=(double)z;

44

Потеря точности(данных) при преобразовании константы. Пример: int x=M_PI

45

Несовпадение знаков операндов в операциях сравнения. Пример: (char)c1>(uchar)c2

46

Проблемы с импортом функций – требуется объявление #import либо импорт функций уже закрыт

47

Описание слишком большое – лишние символы не будут включены в исполняемый файл

48

Количество индикаторных буферов объявлено меньше, чем требуется

49

Не указан цвет для отрисовки графической серии в индикаторе

50

Нет ни одной графической серии для отображения индикатора

51

Не обнаружена функция-обработчик ‘OnStart» в скрипте

52

Функция-обработчик ‘OnStart» определена с неверными параметрами

53

Функция ‘OnStart’ может быть определена только в скрипте

54

Функция ‘OnInit’ определена с неверными параметрами

55

Функция ‘OnInit’ не используется в скриптах

56

Функция ‘OnDeinit’ определена с неверными параметрами

57

Функция ‘OnDeinit’ не используется в скриптах

58

Определены две функции ‘OnCalculate’. Будет использована OnCalculate() на одном ценовом массиве

59

Обнаружено переполнение при вычислении сложной целочисленной константы

60

Возможно, переменная неинициализирована.

61

Данное объявление делает недоступным обращение к локальной переменной, объявленной на указанной строке

62

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

63

Не может быть использовано для статических массивов

64

Данное объявление делает недоступным обращение к предопределенной переменной

65

Значение выражения всегда true/false

66

Использование переменной или выражения типа bool в математических операциях является небезопасным

67

Результат применения оператора унарного минуса к беззнаковому типу ulong неопределен

68

Версия, указанная в свойстве #property version, недопустима для размещения в разделе Маркет, правильный формат #property version «XXX.YYY»

69

Отсутствует выражение для выполнения по условию

70

Неверный возвращаемый тип функции или некорректные параметры при объявлении функции-обработчика события

71

Требуется явное приведение структур к одному типу

72

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

73

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

74

Параметр в методе наследуемого класса отличается модификатором const, дочерняя функция перегрузила функцию родителя

75

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

76

Функция должна вернуть значение

77

Функция типа void не должна возвращать значение

78

Не все варианты выполнения возвращают значение

79

Выражения на глобальном уровне не разрешены

80

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

81

Найдено два вида вызова OnCalCulate(). Вызываться будет вариант с использованием таймсерий OHLC

82

Структура не содержит членов, размер будет приравнен 1 байту

83

Нет обработки результата выполнения функции

84

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

85

Слишком большой код символа в строке, должен быть в диапазоне от 0 до 65535

86

Нераспознанный служебный символ в строке

87

Не указано свойство индикатора, задающее вывод в главное окно или в отдельное подокно. Будет применено свойство #property indicator_chart_window

MetaEdtior 5, редактор mql5-программ, выдает сообщения об ошибках программы, обнаруженных встроенным компилятором на стадии компиляции. Список этих ошибок приведен ниже в таблице. Для компиляции исходного кода в исполняемый нажмите F7. Программы с ошибками не могут быть скомпилированы, пока ошибки, указанные компилятором, не будут устранены.

100

Ошибка чтения файла

101

Ошибка открытия *.EX5 файла для записи

103

Недостаточно свободной памяти для завершения компиляции

104

Нераспознанная компилятором пустая синтаксическая единица

105

Некорректное имя файла в #include

106

Ошибка доступа к файлу в #include (возможно файл не существует)

108

Неподходящее имя для #define

109

Неизвестная команда препроцессора (допустимы #include,#define,#property,#import)

110

Неизвестный для компилятора символ

111

Функция не реализована (описание есть, тела нет)

112

Пропущена двойная кавычка («)

113

Пропущена открывающая угловая скобка (<) или двойная кавычка («)

114

Пропущена одинарная кавычка (‘)

115

Пропущена закрывающая угловая скобка «>»

116

Не указан тип в объявлении

117

Нет оператора возврата return или имеется не во всех ветках выполнения

118

Ожидалась открывающая скобка параметров вызова

119

Ошибка записи EX5

120

Некорректный доступ к элементу массива

121

Функция не имеет тип void и оператор return должен вернуть значение

122

Некорректное объявление деструктора

123

Отсутствует двоеточие «:»

124

Переменная уже объявлена

125

Переменная с таким идентификатором уже объявлена

126

Имя переменной слишком длинное (>250 символов)

127

Структура с таким идентификатором уже определена

128

Структура не определена

129

Член структуры с таким именем уже определен

130

Нет такого члена структуры

131

Нарушена парность квадратных скобок

132

Ожидается открывающая круглая скобка «(«

133

Несбалансированные фигурные скобки ( отсутствует «}» )

134

Сложно для компиляции (слишком большое ветвление, внутренний стек уровней переполнен)

135

Ошибка открытия файла на чтение

136

Недостаточно памяти для загрузки исходного файла в память

137

Ожидается переменная

138

Ссылка не может быть инициализирована

140

Ожидалось присваивание (возникает при объявлении)

141

Ожидается открывающая фигурная скобка «{«

142

Параметр может быть только динамическим массивом

143

Использование типа «void» недопустимо

144

Нет пары для «)» или «]», т.е. отсутствует «(» или «[«

145

Нет пары для «(» или «[«, т.е. отсутствует «)» или «]»

146

Некорректная  размерность массива

147

Слишком много параметров (>64)

149

Этот токен тут не ожидается

150

Недопустимое использование операции (неправильные операнды)

151

Выражение типа void недопустимо

152

Ожидается оператор

153

Неправильное использование break

154

Ожидается точка с запятой «;»

155

Ожидается запятая «,»

156

Тип должен быть определен как класс, а не как структура

157

Ожидалось выражение

158

В HEX встречается «не HEX символ» или слишком длинное число (количество цифр > 511)

159

Строка-константа имеет более 65534 символов

160

Определение функции здесь недопустимо

161

Неожиданный конец программы

162

Форвардная декларация для структур запрещена

163

Функция с таким именем уже определена и имеет иной тип возвращаемого значения

164

Функция с таким именем уже определена и имеет иной набор параметров

165

Функция с таким именем уже определена и реализована

166

Перегрузка функции для данного вызова не найдена

167

Функция с возвращаемым значением типа void не может возвращать значение

168

Функция не определена

170

Ожидается значение

171

В выражении case допустимы только целочисленные константы

172

Значение для case в этом switch уже использовано

173

Ожидается целочисленное значение

174

В выражении #import ожидается имя файла

175

Выражения на глобальном уровне не допустимы

176

Пропущена круглая скобка «)» перед «;»

177

Слева от знака равенства предполагается переменная

178

Результат выражения не используется

179

Объявление переменных в case недопустимо

180

Неявное преобразование из строки в число

181

Неявное преобразование числа в строку

182

Неоднозначный вызов перегруженной функции (подходят несколько перегрузок)

183

Недопустимый else без соответствующего if

184

Недопустимый case или default без соответствующего switch

185

Недопустимое использование эллипсиса

186

Инициализирующая последовательность имеет большее количество элементов чем инициализируемая переменная

187

Ожидается константа для case

188

Требуется константное выражение

189

Константная переменная не может быть изменена

190

Ожидается закрывающая скобка или запятая (объявление члена массива)

191

Идентификатор перечисления уже используется

192

Перечисление не может иметь модификаторов доступа (const, extern, static)

193

Член перечисления уже объявлен с другим значением

194

Существует переменная, определенная с таким же именем

195

Существует структура, определенная с таким же именем

196

Ожидается имя члена перечисления

197

Ожидается целочисленное выражение

198

Деление на ноль в константном выражении

199

Неверное количество параметров в функции

200

Параметром по ссылке должна быть переменная

201

Ожидается переменная такого же типа для передачи по ссылке

202

Константная переменная не может быть передана по неконстантной ссылке

203

Требуется  целочисленная положительная константа

204

Ошибка доступа к защищенному члену класса

205

Импорт уже определен по другому пути

208

Исполняемый файл не создан

209

Для индикатора не найдена точка входа ‘OnCalculate’

210

Оператор continue может быть использован только внутри цикла

211

Ошибка доступа к private(закрытому) члену класса

213

Метод структуры или класса не объявлен

214

Ошибка доступа к private(закрытому) методу класса

216

Копирование структур с объектами недопустимо

218

Выход индекса за границы массива

219

Недопустима инициализация массивов в объявлении структуры или класса

220

Конструктор класса не может иметь параметров

221

Деструктор класса не может иметь параметров

222

Метод класса или структуры с таким именем и параметрами уже объявлен

223

Ожидается операнд

224

Метод класса или структуры с таким именем есть, но с другими параметрами  (объявление!=реализация)

225

Импортируемая функция не описана

226

Функция ZeroMemory() не применима для классов с защищенными членами или наследованием

227

Неоднозначный вызов перегруженной функции (точное совпадение параметров для нескольких перегрузок)

228

Ожидается имя переменной

229

Ссылку нельзя объявить в этом месте

230

Уже используется в качестве имени перечисления

232

Ожидается класс или структура

235

Нельзя вызывать delete для удаления массива

236

Ожидается оператор ‘ while ‘

237

В delete должен быть указатель

238

default для этого switch уже есть

239

Синтаксическая ошибка

240

Escape-последовательность может встретиться только в строках ( начинается с ‘’ )

241

Требуется массив – квадратная скобка ‘[‘ не относится к массиву либо в качестве параметра-массива подают не массив

242

Не может быть инициализировано посредством инициализирующей последовательности

243

Импорт не определен

244

Ошибка оптимизатора на синтаксическом дереве

245

Объявлено слишком много структур (упростите программу)

246

Преобразование параметра недопустимо

247

Некорректное  использование оператора delete

248

Нельзя объявить указатель на ссылку

249

Нельзя объявить ссылку на ссылку

250

Нельзя объявить указатель на указатель

251

Недопустимо объявление структуры в списке параметров

252

Недопустимая операция приведения типов

253

Указатель можно объявить только для класса или структуры

256

Необъявленный идентификатор

257

Ошибка оптимизатора исполняемого кода

258

Ошибка генерации исполняемого кода

260

Недопустимое выражение для оператора switch

261

Переполнение пула строковых констант, упростите программу

262

Невозможно преобразовать к перечислению

263

Нельзя использовать virtual для данных (членов класса или структуры)

264

Нельзя вызвать защищенный метод класса

265

Переопределяемая виртуальная функция возвращает другой тип

266

Класс нельзя наследовать от структуры

267

Структуру нельзя наследовать от класса

268

Конструктор не может быть виртуальным (спецификатор virtual недопустим)

269

Структура не может иметь виртуальных методов

270

Функция должна иметь тело

271

Перегрузка системных функций (функций терминала) запрещена

272

Спецификатор const недопустим для функций, не являющихся членом класса или структуры

274

Нельзя менять члены класса в константном методе

276

Неподходящая инициализирующая последовательность

277

Пропущено значение по умолчанию для параметра (специфика объявления параметров по умолчанию)

278

Переопределение параметра по умолчанию (в объявлении и реализации разные значения)

279

Нельзя вызвать неконстантный метод для константного объекта

280

Для доступа к членам требуется объект (поставлена точка для не класса/структуры)

281

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

284

Неразрешенное преобразование (при закрытом наследовании)

285

Структуры и массивы не могут быть использованы в качестве input-переменных

286

Спецификатор const недопустим для конструктора/деструктора

287

Неправильное строковое выражение для типа datetime

288

Неизвестное свойство (#property)

289

Некорректное значение для свойства

290

Некорректный индекс для свойства в #property

291

Пропущен параметр вызова – < func(x,) >

293

Объект должен быть передан по ссылке

294

Массив должен быть передан по ссылке

295

Функция была декларирована как экспортируемая

296

Функция не была декларирована как экспортируемая

297

Экспортировать импортируемую функцию нельзя

298

Импортируемая функция не может иметь такого параметра (нельзя передавать указатель, класс или структуру, содержащую динамический массив, указатель, класс и т.д.)

299

Должен быть класс

300

Секция #import не закрыта

302

Несоответствие типов

303

extern-переменная уже инициализирована

304

Не найдено ни одной экспортируемой функции или стандартной точки входа

305

Явный вызов конструктора запрещен

306

Метод был объявлен константным

307

Метод не был объявлен константным

308

Некорректный размер ресурсного файла

309

Некорректное имя ресурса

310

Ошибка открытия файла ресурса

311

Ошибка чтения файла ресурса

312

Неизвестный тип ресурса

313

Некорректный путь к файлу ресурса

314

Указанное имя ресурса уже используется

315

Ожидались параметры макроса

316

После имени макроса должен быть пробел

317

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

318

Неверное число параметров при использовании макроса

319

Превышение максимального количества(16) параметров для макроса

320

Макрос слишком сложный, требуется упрощение

321

Параметром EnumToString() может быть только перечисление

322

Имя ресурса слишком длинное

323

Неподдерживаемый формат изображения (допустим только BMP-формат с глубиной цвета 24 или 32 бита)

324

Объявление массива внутри оператора запрещено

325

Функцию можно определить только на глобальном уровне

326

Данное объявление недопустимо для текущей области видимости (области определения)

327

Инициализация статичных переменных значениями локальных недопустима

328

Недопустимое объявление массива объектов, не имеющих конструктора по умолчанию

329

Список инициализации разрешен только для конструкторов

330

Отсутствует определение функции после списка инициализации

331

Список инициализации пуст

332

Инициализация массива в конструкторе запрещена

333

В списке инициализации запрещено  инициализировать члены родительского класса

334

Ожидалось выражение целого типа

335

Требуемый объем памяти для массива превышает максимально допустимое значение

336

Требуемый объем памяти для структуры превышает максимально допустимое значение

337

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

338

Требуемый объем памяти для локальных переменных превышает максимально допустимое значение

339

Конструктор не определен

340

Недопустимое имя для файла иконки

341

Не удалось открыть файла иконки по указанному пути

342

Файл иконки некорректен и не соответствует формату ICO

343

Повторная инициализация члена в конструкторе класса/структуры с помощью списка инициализации

344

Инициализация статических членов в списке инициализации конструктора не допускается

345

Инициализация нестатического члена класса/структуры на глобальном уровне запрещена

346

Имя метода класса/структуры совпадает с ранее объявленным именем члена

347

Имя члена класса/структуры совпадает с ранее объявленным именем метода

348

Виртуальная функция не может быть объявлена как static

349

Модификатор const недопустим для статической функции

350

Конструктор или деструктор не могут быть статическими

351

Нельзя обращаться к нестатическому члену/методу класса или структуры из статической функции

352

После ключевого слова operator ожидается перегружаемая операция (+,-,[],++,— и т.д.)

353

Не все операции можно перегружать в MQL5

354

Определение не соответствует объявлению

355

Указано неверное количество параметров для оператора

356

Не обнаружено ни одной функции-обработчика события

357

Методы не могут быть экспортируемыми

358

Нельзя приводить указатель на константный объект к указателю на неконстантный объект

359

Шаблоны классов пока не поддерживаются

360

Перегрузка шаблонов функций пока не поддерживается

361

Невозможно применить шаблон функции

362

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

363

Невозможно определить к какому типу параметра приводить аргумент шаблона функции

364

Неверное количество параметров в шаблоне функции

365

Шаблон функции не может быть виртуальным

366

Шаблоны функций не могут быть экспортированы

367

Нельзя импортировать шаблоны функций

368

Структуры, содержащие объекты, недопустимы

369

Массивы строк и структуры, содержащие объекты, недопустимы

370

Статический член класса/структуры должен быть явно инициализирован

371

Ограничение компилятора: строка не может содержать более 65 535 символов

372

Несогласованные #ifdef/#endif

373

Результатом выполнения функции не может быть объект класса, так как отсутствует конструктор копирования

374

Нельзя использовать нестатические члены и/или методы при инициализации статической переменной

375

OnTesterInit() нельзя использовать без объявления обработчика OnTesterDeinit()

376

Имя локальной переменной совпадает с именем одного из параметров функции

377

Нельзя использовать макросы __FUNCSIG__ и __FUNCTION__ вне тела функции

378

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

379

Ошибка при использовании шаблона

380

Не используется

381

Недопустимый синтаксис при объявлении чисто виртуальной функции, разрешено «=NULL» или «=0»

382

Только  виртуальные функции могут быть объявлены со спецификатором чисто виртуальной функции  («=NULL» или «=0»)

383

Нельзя создать экземпляр абстрактного класса

384

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

385

Ожидается тип «указатель на функцию»

386

Указатели на методы не поддерживаются

387

Ошибка – невозможно определить тип указателя на функцию

388

Приведение типа недоступно из-за закрытого наследования

389

Переменная с модификатором const должна быть проинициализирована при объявлении

393

В интерфейсе могут быть объявлены только методы с публичным доступом

394

Недопустимое вложение интерфейса в другой интерфейс

395

Интерфейс может наследоваться только от другого интерфейса

396

Ожидается интерфейс

397

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

398

Интерфейс не может содержать члены

399

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

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

ERR_SUCCESS

0

Операция выполнена успешно

ERR_INTERNAL_ERROR

4001

Неожиданная внутренняя ошибка

ERR_WRONG_INTERNAL_PARAMETER

4002

Ошибочный параметр при внутреннем вызове функции клиентского терминала

ERR_INVALID_PARAMETER

4003

Ошибочный параметр при вызове системной функции

ERR_NOT_ENOUGH_MEMORY

4004

Недостаточно памяти для выполнения системной функции

ERR_STRUCT_WITHOBJECTS_ORCLASS

4005

Структура содержит объекты строк и/или динамических массивов и/или структуры с такими объектами и/или классы

ERR_INVALID_ARRAY

4006

Массив неподходящего типа, неподходящего размера или испорченный объект динамического массива

ERR_ARRAY_RESIZE_ERROR

4007

Недостаточно памяти для перераспределения массива либо попытка изменения размера статического массива

ERR_STRING_RESIZE_ERROR

4008

Недостаточно памяти для перераспределения строки

ERR_NOTINITIALIZED_STRING

4009

Неинициализированная строка

ERR_INVALID_DATETIME

4010

Неправильное значение даты и/или времени

ERR_ARRAY_BAD_SIZE

4011

Запрашиваемый размер массива превышает 2 гигабайта

ERR_INVALID_POINTER

4012

Ошибочный указатель

ERR_INVALID_POINTER_TYPE

4013

Ошибочный тип указателя

ERR_FUNCTION_NOT_ALLOWED

4014

Системная функция не разрешена для вызова

ERR_RESOURCE_NAME_DUPLICATED

4015

Совпадении имени динамического и статического ресурсов

ERR_RESOURCE_NOT_FOUND

4016

Ресурс с таким именем в EX5 не найден

ERR_RESOURCE_UNSUPPOTED_TYPE

4017

Неподдерживаемый тип ресурса или размер более 16 MB

ERR_RESOURCE_NAME_IS_TOO_LONG

4018

Имя ресурса превышает 63 символа

ERR_MATH_OVERFLOW

4019

При вычислении математической функции произошло переполнение

Графики

ERR_CHART_WRONG_ID

4101

Ошибочный идентификатор графика

ERR_CHART_NO_REPLY

4102

График не отвечает

ERR_CHART_NOT_FOUND

4103

График не найден

ERR_CHART_NO_EXPERT

4104

У графика нет эксперта, который мог бы обработать событие

ERR_CHART_CANNOT_OPEN

4105

Ошибка открытия графика

ERR_CHART_CANNOT_CHANGE

4106

Ошибка при изменении для графика символа и периода

ERR_CHART_WRONG_PARAMETER

4107

Ошибочное значение параметра для функции по работе с графиком

ERR_CHART_CANNOT_CREATE_TIMER

4108

Ошибка при создании таймера

ERR_CHART_WRONG_PROPERTY

4109

Ошибочный идентификатор свойства графика

ERR_CHART_SCREENSHOT_FAILED

4110

Ошибка при создании скриншота

ERR_CHART_NAVIGATE_FAILED

4111

Ошибка навигации по графику

ERR_CHART_TEMPLATE_FAILED

4112

Ошибка при применении шаблона

ERR_CHART_WINDOW_NOT_FOUND

4113

Подокно, содержащее указанный индикатор, не найдено

ERR_CHART_INDICATOR_CANNOT_ADD

4114

Ошибка при добавлении индикатора на график

ERR_CHART_INDICATOR_CANNOT_DEL

4115

Ошибка при удалении индикатора с графика

ERR_CHART_INDICATOR_NOT_FOUND

4116

Индикатор не найден на указанном графике

Графические объекты

ERR_OBJECT_ERROR

4201

Ошибка при работе с графическим объектом

ERR_OBJECT_NOT_FOUND

4202

Графический объект не найден

ERR_OBJECT_WRONG_PROPERTY

4203

Ошибочный идентификатор свойства графического объекта

ERR_OBJECT_GETDATE_FAILED

4204

Невозможно получить дату, соответствующую значению

ERR_OBJECT_GETVALUE_FAILED

4205

Невозможно получить значение, соответствующее дате

MarketInfo

ERR_MARKET_UNKNOWN_SYMBOL

4301

Неизвестный символ

ERR_MARKET_NOT_SELECTED

4302

Символ не выбран в MarketWatch

ERR_MARKET_WRONG_PROPERTY

4303

Ошибочный идентификатор свойства символа

ERR_MARKET_LASTTIME_UNKNOWN

4304

Время последнего тика неизвестно (тиков не было)

ERR_MARKET_SELECT_ERROR

4305

Ошибка добавления или удаления символа в MarketWatch

Доступ к истории

ERR_HISTORY_NOT_FOUND

4401

Запрашиваемая история не найдена

ERR_HISTORY_WRONG_PROPERTY

4402

Ошибочный идентификатор свойства истории

ERR_HISTORY_TIMEOUT

4403

Превышен таймаут при запросе истории

ERR_HISTORY_BARS_LIMIT

4404

Количество запрашиваемых баров ограничено настройками терминала

ERR_HISTORY_LOAD_ERRORS

4405

Множество ошибок при загрузке истории

ERR_HISTORY_SMALL_BUFFER

4407

Принимающий массив слишком мал чтобы вместить все запрошенные данные

Global_Variables

ERR_GLOBALVARIABLE_NOT_FOUND

4501

Глобальная переменная клиентского терминала не найдена

ERR_GLOBALVARIABLE_EXISTS

4502

Глобальная переменная клиентского терминала с таким именем уже существует

ERR_GLOBALVARIABLE_NOT_MODIFIED

4503

Не было модификаций глобальных переменных

ERR_GLOBALVARIABLE_CANNOTREAD

4504

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

ERR_GLOBALVARIABLE_CANNOTWRITE

4505

Не удалось записать файл со значениями глобальных переменных

ERR_MAIL_SEND_FAILED

4510

Не удалось отправить письмо

ERR_PLAY_SOUND_FAILED

4511

Не удалось воспроизвести звук

ERR_MQL5_WRONG_PROPERTY

4512

Ошибочный идентификатор свойства программы

ERR_TERMINAL_WRONG_PROPERTY

4513

Ошибочный идентификатор свойства терминала

ERR_FTP_SEND_FAILED

4514

Не удалось отправить файл по ftp

ERR_NOTIFICATION_SEND_FAILED

4515

Не удалось отправить уведомление

ERR_NOTIFICATION_WRONG_PARAMETER

4516

Неверный параметр для отправки уведомления – в функцию SendNotification()  передали пустую строку или NULL

ERR_NOTIFICATION_WRONG_SETTINGS

4517

Неверные настройки уведомлений в терминале (не указан ID или не выставлено разрешение)

ERR_NOTIFICATION_TOO_FREQUENT

4518

Слишком частая отправка уведомлений

ERR_FTP_NOSERVER

4519

Не указан FTP сервер

ERR_FTP_NOLOGIN

4520

Не указан FTP логин

ERR_FTP_FILE_ERROR

4521

Не найден файл в директории MQL5Files для отправки на FTP сервер

ERR_FTP_CONNECT_FAILED

4522

Ошибка при подключении к FTP серверу

ERR_FTP_CHANGEDIR

4523

На FTP сервере не найдена директория для выгрузки файла

ERR_FTP_CLOSED

4524

Подключение к FTP серверу закрыто

Буферы пользовательских индикаторов

ERR_BUFFERS_NO_MEMORY

4601

Недостаточно памяти для распределения индикаторных буферов

ERR_BUFFERS_WRONG_INDEX

4602

Ошибочный индекс своего индикаторного буфера

Свойства пользовательских индикаторов

ERR_CUSTOM_WRONG_PROPERTY

4603

Ошибочный идентификатор свойства пользовательского индикатора

Account

ERR_ACCOUNT_WRONG_PROPERTY

4701

Ошибочный идентификатор свойства счета

ERR_TRADE_WRONG_PROPERTY

4751

Ошибочный идентификатор свойства торговли

ERR_TRADE_DISABLED

4752

Торговля для эксперта запрещена

ERR_TRADE_POSITION_NOT_FOUND

4753

Позиция не найдена

ERR_TRADE_ORDER_NOT_FOUND

4754

Ордер не найден

ERR_TRADE_DEAL_NOT_FOUND

4755

Сделка не найдена

ERR_TRADE_SEND_FAILED

4756

Не удалось отправить торговый запрос

ERR_TRADE_CALC_FAILED

4758

Не удалось вычислить значение прибыли или маржи

Индикаторы

ERR_INDICATOR_UNKNOWN_SYMBOL

4801

Неизвестный символ

ERR_INDICATOR_CANNOT_CREATE

4802

Индикатор не может быть создан

ERR_INDICATOR_NO_MEMORY

4803

Недостаточно памяти для добавления индикатора

ERR_INDICATOR_CANNOT_APPLY

4804

Индикатор не может быть применен к другому индикатору

ERR_INDICATOR_CANNOT_ADD

4805

Ошибка при добавлении индикатора

ERR_INDICATOR_DATA_NOT_FOUND

4806

Запрошенные данные не найдены

ERR_INDICATOR_WRONG_HANDLE

4807

Ошибочный хэндл индикатора

ERR_INDICATOR_WRONG_PARAMETERS

4808

Неправильное количество параметров при создании индикатора

ERR_INDICATOR_PARAMETERS_MISSING

4809

Отсутствуют параметры при создании индикатора

ERR_INDICATOR_CUSTOM_NAME

4810

Первым параметром в массиве должно быть имя пользовательского индикатора

ERR_INDICATOR_PARAMETER_TYPE

4811

Неправильный тип параметра в массиве при создании индикатора

ERR_INDICATOR_WRONG_INDEX

4812

Ошибочный индекс запрашиваемого индикаторного буфера

Стакан цен

ERR_BOOKS_CANNOT_ADD

4901

Стакан цен не может быть добавлен

ERR_BOOKS_CANNOT_DELETE

4902

Стакан цен не может быть удален

ERR_BOOKS_CANNOT_GET

4903

Данные стакана цен не могут быть получены

ERR_BOOKS_CANNOT_SUBSCRIBE

4904

Ошибка при подписке на получение новых данных стакана цен

Файловые операции

ERR_TOO_MANY_FILES

5001

Не может быть открыто одновременно более 64 файлов

ERR_WRONG_FILENAME

5002

Недопустимое имя файла

ERR_TOO_LONG_FILENAME

5003

Слишком длинное имя файла

ERR_CANNOT_OPEN_FILE

5004

Ошибка открытия файла

ERR_FILE_CACHEBUFFER_ERROR

5005

Недостаточно памяти для кеша чтения

ERR_CANNOT_DELETE_FILE

5006

Ошибка удаления файла

ERR_INVALID_FILEHANDLE

5007

Файл с таким хэндлом уже был закрыт, либо не открывался вообще

ERR_WRONG_FILEHANDLE

5008

Ошибочный хэндл файла

ERR_FILE_NOTTOWRITE

5009

Файл должен быть открыт для записи

ERR_FILE_NOTTOREAD

5010

Файл должен быть открыт для чтения

ERR_FILE_NOTBIN

5011

Файл должен быть открыт как бинарный

ERR_FILE_NOTTXT

5012

Файл должен быть открыт как текстовый

ERR_FILE_NOTTXTORCSV

5013

Файл должен быть открыт как текстовый или CSV

ERR_FILE_NOTCSV

5014

Файл должен быть открыт как CSV

ERR_FILE_READERROR

5015

Ошибка чтения файла

ERR_FILE_BINSTRINGSIZE

5016

Должен быть указан размер строки, так как файл открыт как бинарный

ERR_INCOMPATIBLE_FILE

5017

Для строковых массивов должен быть текстовый файл, для остальных – бинарный

ERR_FILE_IS_DIRECTORY

5018

Это не файл, а директория

ERR_FILE_NOT_EXIST

5019

Файл не существует

ERR_FILE_CANNOT_REWRITE

5020

Файл не может быть переписан

ERR_WRONG_DIRECTORYNAME

5021

Ошибочное имя директории

ERR_DIRECTORY_NOT_EXIST

5022

Директория не существует

ERR_FILE_ISNOT_DIRECTORY

5023

Это файл, а не директория

ERR_CANNOT_DELETE_DIRECTORY

5024

Директория не может быть удалена

ERR_CANNOT_CLEAN_DIRECTORY

5025

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

ERR_FILE_WRITEERROR

5026

Не удалось записать ресурс в файл

ERR_FILE_ENDOFFILE

5027

Не удалось прочитать следующую порцию данных из CSV-файла (FileReadString, FileReadNumber, FileReadDatetime, FileReadBool), так как достигнут конец файла

Преобразование строк

ERR_NO_STRING_DATE

5030

В строке нет даты

ERR_WRONG_STRING_DATE

5031

В строке ошибочная дата

ERR_WRONG_STRING_TIME

5032

В строке ошибочное время

ERR_STRING_TIME_ERROR

5033

Ошибка преобразования строки в дату

ERR_STRING_OUT_OF_MEMORY

5034

Недостаточно памяти для строки

ERR_STRING_SMALL_LEN

5035

Длина строки меньше, чем ожидалось

ERR_STRING_TOO_BIGNUMBER

5036

Слишком большое число, больше, чем ULONG_MAX

ERR_WRONG_FORMATSTRING

5037

Ошибочная форматная строка

ERR_TOO_MANY_FORMATTERS

5038

Форматных спецификаторов больше, чем параметров

ERR_TOO_MANY_PARAMETERS

5039

Параметров больше, чем форматных спецификаторов

ERR_WRONG_STRING_PARAMETER

5040

Испорченный параметр типа string

ERR_STRINGPOS_OUTOFRANGE

5041

Позиция за пределами строки

ERR_STRING_ZEROADDED

5042

К концу строки добавлен 0, бесполезная операция

ERR_STRING_UNKNOWNTYPE

5043

Неизвестный тип данных при конвертации в строку

ERR_WRONG_STRING_OBJECT

5044

Испорченный объект строки

Работа с массивами

ERR_INCOMPATIBLE_ARRAYS

5050

Копирование несовместимых массивов. Строковый массив может быть скопирован только в строковый, а числовой массив – в числовой

ERR_SMALL_ASSERIES_ARRAY

5051

Приемный массив объявлен как AS_SERIES, и он недостаточного размера

ERR_SMALL_ARRAY

5052

Слишком маленький массив, стартовая позиция за пределами массива

ERR_ZEROSIZE_ARRAY

5053

Массив нулевой длины

ERR_NUMBER_ARRAYS_ONLY

5054

Должен быть числовой массив

ERR_ONEDIM_ARRAYS_ONLY

5055

Должен быть одномерный массив

ERR_SERIES_ARRAY

5056

Таймсерия не может быть использована

ERR_DOUBLE_ARRAY_ONLY

5057

Должен быть массив типа double

ERR_FLOAT_ARRAY_ONLY

5058

Должен быть массив типа float

ERR_LONG_ARRAY_ONLY

5059

Должен быть массив типа long

ERR_INT_ARRAY_ONLY

5060

Должен быть массив типа int

ERR_SHORT_ARRAY_ONLY

5061

Должен быть массив типа short

ERR_CHAR_ARRAY_ONLY

5062

Должен быть массив типа char

ERR_STRING_ARRAY_ONLY

5063

Должен быть массив типа string

Работа с OpenCL

ERR_OPENCL_NOT_SUPPORTED

5100

Функции OpenCL на данном компьютере не поддерживаются

ERR_OPENCL_INTERNAL

5101

Внутренняя ошибка при выполнении OpenCL

ERR_OPENCL_INVALID_HANDLE

5102

Неправильный хэндл OpenCL

ERR_OPENCL_CONTEXT_CREATE

5103

Ошибка при создании контекста OpenCL

ERR_OPENCL_QUEUE_CREATE

5104

Ошибка создания очереди выполнения в OpenCL

ERR_OPENCL_PROGRAM_CREATE

5105

Ошибка при компиляции программы OpenCL

ERR_OPENCL_TOO_LONG_KERNEL_NAME

5106

Слишком длинное имя точки входа (кернел OpenCL)

ERR_OPENCL_KERNEL_CREATE

5107

Ошибка создания кернел — точки входа OpenCL

ERR_OPENCL_SET_KERNEL_PARAMETER

5108

Ошибка при установке параметров для кернел OpenCL (точки входа в программу OpenCL)

ERR_OPENCL_EXECUTE

5109

Ошибка выполнения программы OpenCL

ERR_OPENCL_WRONG_BUFFER_SIZE

5110

Неверный размер буфера OpenCL

ERR_OPENCL_WRONG_BUFFER_OFFSET

5111

Неверное смещение в буфере OpenCL

ERR_OPENCL_BUFFER_CREATE

5112

Ошибка создания буфера OpenCL

ERR_OPENCL_TOO_MANY_OBJECTS

5113

Превышено максимальное число OpenCL объектов

ERR_OPENCL_SELECTDEVICE

5114

Ошибка выбора OpenCL устройства

Работа с WebRequest

ERR_WEBREQUEST_INVALID_ADDRESS

5200

URL не прошел проверку

ERR_WEBREQUEST_CONNECT_FAILED

5201

Не удалось подключиться к указанному URL

ERR_WEBREQUEST_TIMEOUT

5202

Превышен таймаут получения данных

ERR_WEBREQUEST_REQUEST_FAILED

5203

Ошибка в результате выполнения HTTP запроса

Пользовательские символы

ERR_NOT_CUSTOM_SYMBOL

5300

Должен быть указан пользовательский символ

ERR_CUSTOM_SYMBOL_WRONG_NAME

5301

Некорректное имя пользовательского символа. В имени символа можно использовать только латинские буквы без знаков препинания, пробелов и спецсимволов (допускаются «.», «_», «&» и «#»). Не рекомендуется использовать символы <, >, :, «, /,, |, ?, *.

ERR_CUSTOM_SYMBOL_NAME_LONG

5302

Слишком длинное имя для пользовательского символа. Длина имени символа не должна превышать 32 знака с учётом завершающего 0

ERR_CUSTOM_SYMBOL_PATH_LONG

5303

Слишком длинный путь для пользовательского символа. Длина пути не более 128 знаков с учётом «Custom», имени символа, разделителей групп и завершающего 0

ERR_CUSTOM_SYMBOL_EXIST

5304

Пользовательский символ с таким именем уже существует

ERR_CUSTOM_SYMBOL_ERROR

5305

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

ERR_CUSTOM_SYMBOL_SELECTED

5306

Попытка удалить пользовательский символ, выбранный в обзоре рынка (Market Watch)

ERR_CUSTOM_SYMBOL_PROPERTY_WRONG

5307

Неправильное свойство пользовательского символа

ERR_CUSTOM_SYMBOL_PARAMETER_ERROR

5308

Ошибочный параметр при установке свойства пользовательского символа

ERR_CUSTOM_SYMBOL_PARAMETER_LONG

5309

Слишком длинный строковый параметр при установке свойства пользовательского символа

ERR_CUSTOM_TICKS_WRONG_ORDER

5310

Не упорядоченный по времени массив тиков

Пользовательские ошибки

ERR_USER_ERROR_FIRST

65536

С этого кода начинаются ошибки, задаваемые пользователем

Понравилась статья? Поделить с друзьями:
  • Mql4 ошибка 4107
  • Mql4 ошибка 4060
  • Mql4 ошибка 133
  • Mql4 коды ошибок 5004
  • Mql ошибка 4756