任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 572

 

构建更新后,我开始在库中的这个函数中得到一个错误。编译器指向最后一行。

//=========================================================================================================================================
// 1.4 Функция преобразует код последней ошибки в текстовую строку, содержащую описание данной ошибки. ====================================
string fErrorDescription (int fi_Error)
{
   string ls_Error = "";

   switch (fi_Error)
   {
      // Коды ошибок, возвращаемые торговым сервером:
      case 0: ls_Error = "Нет ошибки";
      case 1: ls_Error = "Нет ошибки, но результат не известен";
      case 2: ls_Error = "Общая ошибка";
      case 3: ls_Error = "Неправильные параметры";
      case 4: ls_Error = "Торговый сервер занят";
      case 5: ls_Error = "Старая версия клиентского терминала";
      case 6: ls_Error = "Нет связи с торговым сервером";
      case 7: ls_Error = "Недостаточно прав";
      case 8: ls_Error = "Слишком частые запросы";
      case 9: ls_Error = "Недопустимая операция, нарушающая функционирование сервера";
      case 64: ls_Error = "Счёт заблокирован";
      case 65: ls_Error = "Не правильный номер счёта";
      case 128: ls_Error = "Истёк срок ожидания совершения сделки";
      case 129: ls_Error = "Неправильная цена";
      case 130: ls_Error = "Неправильные стопы";
      case 131: ls_Error = "Неправильный объём";
      case 132: ls_Error = "Рынок закрыт";
      case 133: ls_Error = "Торговля запрещена";
      case 134: ls_Error = "Недостаточно денег для совершения операции";
      case 135: ls_Error = "Цена изменилась";
      case 136: ls_Error = "Нет цен";
      case 137: ls_Error = "Брокер занят";
      case 138: ls_Error = "Новые цены";
      case 139: ls_Error = "Ордер заблокирован и уже обрабатывается";
      case 140: ls_Error = "Разрешена только покупка";
      case 141: ls_Error = "Слишком много запросов";
      case 145: ls_Error = "Модификация запрещена, т.к. ордер слишком близок к рынку";
      case 146: ls_Error = "Подсистема торговли занята";
      case 147: ls_Error = "Использование даты истечения ордера запрещено брокером";
      case 148: ls_Error = "Количество открытых и отложенных ордеров достигло  предела, установленого брокером";
      case 149: ls_Error = "Попытка открыть позицию к уже существующей, в случае, если хеджирование запрещено";
      case 150: ls_Error = "Попытка закрыть позицию по инструменту в противоречии с правилом FIFO";
      // Коды ошибок выполнения MQL4-программы:
      case 4000: ls_Error = "Нет ошибки";
      case 4001: ls_Error = "Неправильный указатель функции";
      case 4002: ls_Error = "Индекс массива - вне диапазона";
      case 4003: ls_Error = "Нет памяти для стека функций";
      case 4004: ls_Error = "Переполнение стека после рекурсивного вызова";
      case 4005: ls_Error = "На стеке нет памяти для передачи параметров";
      case 4006: ls_Error = "Нет памяти для строкового параметра";
      case 4007: ls_Error = "Нет памяти для временной строки";
      case 4008: ls_Error = "Неинициализированная строка";
      case 4009: ls_Error = "Неинициализированная строка в массиве";
      case 4010: ls_Error = "Нет памяти для строкового массива";
      case 4011: ls_Error = "Слишком длинная строка";
      case 4012: ls_Error = "Остаток от деления на ноль";
      case 4013: ls_Error = "Деление на ноль";
      case 4014: ls_Error = "Неизвестная команда";
      case 4015: ls_Error = "Неправильный переход";
      case 4016: ls_Error = "Неинициализированный массив";
      case 4017: ls_Error = "Вызовы DLL не разрешены";
      case 4018: ls_Error = "Не возможно загрузить библиотеку";
      case 4019: ls_Error = "Не возможно вызвать функцию";
      case 4020: ls_Error = "Вызовы внешних библиотечных функций не разрешены";
      case 4021: ls_Error = "Недостаточно памяти для строки, возвращаемой из функции";
      case 4022: ls_Error = "Система занята";
      case 4050: ls_Error = "Неправильное количество параметров функции";
      case 4051: ls_Error = "Недопустимое значение параметра функции";
      case 4052: ls_Error = "Внутренняя ошибка строковой функции";
      case 4053: ls_Error = "Ошибка массива";
      case 4054: ls_Error = "Неправильное использование массива-таймсерии";
      case 4055: ls_Error = "Ошибка пользовательского индикатора";
      case 4056: ls_Error = "Массивы не совместимы";
      case 4057: ls_Error = "Ошибка обработки глобальных переменных";
      case 4058: ls_Error = "Глобальная переменная не обнаружена";
      case 4059: ls_Error = "Функция не разрешена в тестовом режиме";
      case 4060: ls_Error = "Функция не разрешена";
      case 4061: ls_Error = "Ошибка отправки почты";
      case 4062: ls_Error = "Ожидается параметр типа string";
      case 4063: ls_Error = "Ожидается параметр типа integer";
      case 4064: ls_Error = "Ожидается параметр типа double";
      case 4065: ls_Error = "В качестве параметра ожидается массив";
      case 4066: ls_Error = "Запрошенные исторические данные в состоянии обновления";
      case 4067: ls_Error = "Ошибка при выполнении торговой операции";
      case 4099: ls_Error = "Конец файла";
      case 4100: ls_Error = "Ошибка при работе с файлом";
      case 4101: ls_Error = "Неправильное имя файла";
      case 4102: ls_Error = "Слишком много открытых файлов";
      case 4103: ls_Error = "Не возможно открыть файл";
      case 4104: ls_Error = "Не совместимый режим доступа";
      case 4105: ls_Error = "Ни один ордер не выбран";
      case 4106: ls_Error = "Не известный символ";
      case 4107: ls_Error = "Не правильный параметр цены для торговой функции";
      case 4108: ls_Error = "Не верный номер тикета";
      case 4109: ls_Error = "Торговля не разрешена. Необходимо включить опцию \"Разрешить советнику торговать\" в свойствах эксперта";
      case 4110: ls_Error = "Длинные позиции не разрешены. Необходимо проверить свойства эксперта";
      case 4111: ls_Error = "Короткие позиции не разрешены. Необходимо проверить свойства эксперта";
      case 4200: ls_Error = "Объект уже существует";
      case 4201: ls_Error = "Запрошено неизвестное свойство объекта";
      case 4202: ls_Error = "Объект не существует";
      case 4203: ls_Error = "Неизвестный тип объекта";
      case 4204: ls_Error = "Нет имени объекта";
      case 4205: ls_Error = "Ошибка координат объекта";
      case 4206: ls_Error = "Не найдено указанное подокно";
      case 4207: ls_Error = "Ошибка при работе с объектом";
   }
}

错误情况如下。

'}' - not all control paths return a value      LErrorsHandling.mq4     200     1
我怎样才能解决这个问题呢?我理解,在其他情况下,需要默认输出。但我在逻辑上不需要它...如何解决这个问题?
 
hoz:

构建更新后,我开始在库中的这个函数中得到一个错误。编译器指向最后一行。

错误情况如下。

如何纠正?我理解,在其他情况下需要默认输出。但我在逻辑上不需要它...如何解决这个问题?

return(ls_Error);//
像这样,返回值。
 
hoz:

构建更新后,我开始在库中的这个函数中得到一个错误。编译器指向最后一行。

错误情况如下。

如何纠正?我理解,在其他情况下需要默认输出。但我在逻辑上不需要它...如何解决这个问题?


恰恰是你认为没有必要的方式。你的代码不知道在发生错误27182818285时该怎么做,这就是编译器警告你的地方。
 
MQL5有SymbolInfo.mqh和DealInfo.mqh类。我想知道是否有可能在MQL4的625版本中连接它们?
 
我有一年多没有关注MT4的变化了(使用旧版本),随着新的更新,我不得不重写我的EA,因为它在测试器中挂起,并挂起整个终端。请告知在哪里可以看到MT4和MetaEditor4的所有变化,直到625版本。
 
WindSW:
我有一年多没有关注MT4的变化了(使用旧版本),随着新的更新,我不得不重写我的EA,因为它在测试器中挂起,并挂起整个终端。 请告知在哪里可以看到MT4和MetaEditor4的所有变化,直到625版本。
在新的构建手册中,第一页被称为 "更新的MQL4"。
 
WindSW:
我有一年多没有关注MT4的变化了(使用旧版本),随着新的更新,我不得不重写我的EA,因为它在测试器中挂起,并挂起整个终端。 请告知在哪里可以看到MT4和MetaEditor4的所有变化,直到625版本。
MetaTrader 4 build 600和更新版本中的数据结构升级到新的MetaTrader 4 build 600和更新版本MQL4应用程序中的典型错误及其解决方案
 

大家好。你能给我一个一般的公式来计算把TP放在哪里,这取决于以美元为单位的预期利润的头寸量?粗略地讲。

英镑兑美元

第6.88卷地段。

预期利润为1000美元。


这个论坛将是什么样子?我的头已经在我的脑子里了......

 
1000/6.88=5 时145点,4时15点。
 

向大家问好。

我有一个关于时期转换器的问题

PeriodConverter脚本需要在每次打开终端时运行,但我需要它自动运行。

我找到了一个旧的优化时期转换器,但它没有安装在625版本上。

我在我的数据库中发现了一个旧的PeriodConverter Optimized,但它在625版本中无法安装。