Новая версия платформы MetaTrader 5 build 3090: Улучшения в работе

 

В четверг 21 октября 2021 года будет выпущена обновленная версия платформы MetaTrader 5. В ней мы внесли ряд небольших дополнений и исправлений по отзывам, полученным после публикации большого обновления MetaTrader 5 build 3081:

  1. Terminal: Исправлена ошибка, из-за которой в некоторых случаях могли пропадать пользовательские торговые инструменты.
  2. Terminal: Доработаны иконки меню и панелей инструментов.
  3. Terminal: Добавлены три новых языка MQL5.com: французский, итальянский и турецкий.

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

  4. MQL5: Исправлены ошибки в работе функции StringConcatenate.
  5. MQL5: Исправлено выставление значения _LastError при работе с функцией FileSave. В некоторых случаях вместо описания ошибки, возникшей в функции, переменная могла содержать нулевое значение.
  6. MQL5: Исправлен импорт данных из ресурсов в массивы типа double.
  7. MetaTester: Исправлена ошибка, приводившая к зависанию окна графика при визуальном тестировании.
  8. Исправления по крешлогам.

Обновление будет доступно через систему Live Update.

 
MetaQuotes:
  1. Terminal: Исправлена ошибка, из-за которой в некоторых случаях могли пропадать пользовательские торговые инструменты.

Исправление по такой проблеме имелось ввиду? Билд 3082, первый прогон индикатор типа Зигзаг появляется на графике, второй прогон - отсутствует. Но в обоих случаях данные по нему берутся, розовые трендовые линии в начале теста берутся по данным пользовательского индикатора.


Файлы журналов прилагаю.

Файлы:
20211020.log  39 kb
j20211020.log  3 kb
 
Vasiliy Pushkaryov #:

Исправление по такой проблеме имелось ввиду? Билд 3082, первый прогон индикатор типа Зигзаг появляется на графике, второй прогон - отсутствует.


Файлы журналов прилагаю.

даже ЗигЗаг из поставки изобилует ошибками

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

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

поэтому первый прогон Ok, а на втором мусор - сами-же данные не обнулили

 
Maxim Kuznetsov #:

даже ЗигЗаг из поставки изобилует ошибками

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

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

поэтому первый прогон Ok, а на втором мусор - сами-же данные не обнулили

Данные с индикатора получаю в обоих случаях. К тому же, я отдельными функциями выделяю накладыванием трендовых линий поверх пользовательского индикатора определенные изгибы пользовательского зигзага. На анимации видна трехволновка цвета мажента. Если бы данные были Empty или нулевые, то трендовые линии тоже улетали бы в эти значения. А так, если индикатор начал отрисовываться, то он весь прогон, отрисовывается. Если не начал, то уже весь прогон, т.е. это могут быть месяцы, не отрисовывается. Но с буферов индикатора-невидимки получаю все что мне нужно. Т.е. теряется именно визуальность.
 

MetaQuotes:

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

Будет ли снято ограничение на длину имени файла?

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Новая версия платформы MetaTrader 5 build 3081: Улучшения в MQL5-сервисах и обновленный дизайн

fxsaber, 2021.10.15 12:33

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

void CheckFile( string FileName )
{
  uchar Bytes[1];  
  
  FileName = "TempFolder\\" + FileName + "\\" + FileName;
  Print(FileName);
  Print(StringLen(FileName)); // 212
  
  Print(FileSave(FileName, Bytes));
  Print(_LastError); // 5003: Too long file name
  
  const int handle = FileOpen(FileName, FILE_BIN | FILE_WRITE);
  
  Print(handle != INVALID_HANDLE);
  Print(_LastError); // 5003: Too long file name
  
  FileClose(handle);
}

void OnStart()
{
  CheckFile("ExpertNameExpertName.EURUSDEURUSDEURUSD.M1.20210701.20211009.41.BAA0EE191CCD66EB8291EC4D6434A6C8.opt");
}


TempFolder\ExpertNameExpertName.EURUSDEURUSDEURUSD.M1.20210701.20211009.41.BAA0EE191CCD66EB8291EC4D6434A6C8.opt\ExpertNameExpertName.EURUSDEURUSDEURUSD.M1.20210701.20211009.41.BAA0EE191CCD66EB8291EC4D6434A6C8.opt
212
false
5003
false
5003


Просьба порешать с длиной имени файла. На практике нужно использовать здесь.

В примере длина имени файла всего 212 символов. Файловые менеджеры спокойно работают с такой длиной пути к файлу. MT5 - не может. Приходится искать решение через WinAPI на ровном месте.
 
fxsaber #:

Будет ли снято ограничение на длину имени файла?

В примере длина имени файла всего 212 символов. Файловые менеджеры спокойно работают с такой длиной пути к файлу. MT5 - не может. Приходится искать решение через WinAPI на ровном месте.
Да, будет лимит до 255 символов.
 

День добрый,

Большая просьба добавить в Тестер стратегий функцию "Расположение окон графиков", а также возможность удаления, добавления окон.

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

Прошу поддержать меня тех кто считает также!

Заранее спасибо. 

 

Можно ли внести еще одно улучшение. Трендовая линия по углу показывает градусы верно. На анимации двигаю 5 градусов вверх и 5 градусов вниз. А что показывает обычная трендовая линия, когда двигаю на те же 5 градусов? Можно ли поправить эти значения как в "линии по углу" или убрать их вообще. Билд 3084.


 
Визуализация заработала, большое спасибо.
 
Renat Fatkhullin #:
Да, будет лимит до 255 символов.

А почему 255, а не 260 ?

Про ограничение 260 все знают, а 255 - еще догадаться нужно

 
A100 #:

А почему 255, а не 260 ?

Про ограничение 260 все знают, а 255 - еще догадаться нужно

ну да, 260 это логично, потому что MAX_PATH

Причина обращения: