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

 

В пятницу 13 июня 2025 года будет выпущена обновленная версия платформы MetaTrader 5. В ней мы внесли ряд исправлений и улучшений в работу платформы.

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


MetaTrader 5 Client Terminal

  1. Terminal: Исправлены ошибки отображения графического интерфейса при работе в Linux и macOS.
  2. Terminal: Доработан механизм обновления платформы. Теперь стандартная библиотека MQL5 не будет заменяться каждый раз полностью, а только фактически измененные файлы.
  3. Terminal: Добавлен сброс полноэкранного режима просмотра при перезапуске приложения. Теперь при каждом запуске программа будет иметь полный интерфейс.
  4. MQL5: Разрешена передача массивов с приведением по знаку для следующих функций:

    • ArraySwap
    • WebRequest
    • CryptEncode
    • CryptDecode
    • StringToCharArray
    • CharArrayToString
    • StringToShortArray
    • ShortArrayToString
    • StructToCharArray
    • CharArrayToStruct

  5. MQL5: Исправлено получение состояния клавиш для MQL-программ на активном графике при помощи функции TerminalInfoInteger.
  6. MQL5: Исправлена работа функции ArrayInitialize для массивов перечислений (enum).
  7. MetaEditor: Обновлены доступные модели для AI Assistant. Теперь поддерживаются все модели GPT-4.1 и 04-mini.
  8. MetaEditor: Включены точные проверки для статуса файлов в хранилище MQL5 Storage. Теперь проверяется хэш файлов, что исключает отображение ложных индикаторов. Ранее красной иконкой могли помечаться файлы, фактически не имевшие локальных изменений по сравнению с версией в хранилище.
  9. Обновлены переводы пользовательского интерфейса.

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

 

Уважаемые MQ, когда пофиксите ArrayInitialize? Тяжело работать...

void OnStart()
  {
   uint test[];

   const int size = 1000;

   const int realsize = ::ArrayResize(test,size,0);

   const int initsize = ::ArrayInitialize(test,1);

   ::Print("realsize: ",realsize," | init: ",initsize," | error: ",GetLastError()," value: ",test[10]); // realsize: 1000 | init: 0 | error: 0 value: 1

  }
Инициализация массива при этом вроде происходит, но возвращаемое значение нулевое. Ассерты стреляют по коду везде....
 

MetaTrader 5 x64 build 5120 started for MetaQuotes Ltd. Windows 11 build 22631. Проверял и на AVX2 терминале и без AVX2.

Какую тему системы Windows не устанавливай (хоть светлую, хоть темную), если в терминале установлена тема "Системная", то терминал отображается в светлой теме.

Только если через меню терминала менять тему на "Светлая" или "Темная", то тема терминала меняется.

 
Тестер проверяли?
Работает корректно?
Как раз с пятницы не тестирует на истории.
После обновления заметил. 
Сначала обновился один мт5. При нажатии на кнопку запуска тестирования долго думает. В логах пишет что котировки подгружает . Потом пишет что не нашел котировок за данный период и останавливается. 
Второй экземпляр МТ5 запустил стандартный встроенный пример на скользящих средних - он сделал тест. Решил на нем тестировать своего робота. Через часа три перезагрузил МТ5 второй(необновленный) и при старте автоматом согласился обновиться(я тогда ещё не допер что возможно это все свящанно с обновлением) Скопировал свой робот и нажрл на запуск. Один раз прогнал тест. Поменял настройки и нажимаю на запуск, та же картина - ищет котировки, не находит и сбрасывает тестирование.
У кого такие глюки?
Как откатить версию?

Котировки все естественно имеются. Ничего не менялось с данными. Больше недели тестирую.
 

В 5120 подсветка символов в MW пропала.


 
Andrei Iakovlev #:

В 5120 подсветка символов в MW пропала.


Так выходные же, котировки не обновляются.

 
Sergei Samokhin #:
Тестер проверяли?
Работает корректно?
Как раз с пятницы не тестирует на истории.
После обновления заметил. 
Сначала обновился один мт5. При нажатии на кнопку запуска тестирования долго думает. В логах пишет что котировки подгружает . Потом пишет что не нашел котировок за данный период и останавливается. 
Второй экземпляр МТ5 запустил стандартный встроенный пример на скользящих средних - он сделал тест. Решил на нем тестировать своего робота. Через часа три перезагрузил МТ5 второй(необновленный) и при старте автоматом согласился обновиться(я тогда ещё не допер что возможно это все свящанно с обновлением) Скопировал свой робот и нажрл на запуск. Один раз прогнал тест. Поменял настройки и нажимаю на запуск, та же картина - ищет котировки, не находит и сбрасывает тестирование.
У кого такие глюки?
Как откатить версию?

Котировки все естественно имеются. Ничего не менялось с данными. Больше недели тестирую. 

Тестирование возобновляется спустя какое то время. Сделал один тест. Надо ждать минут 20 что бы второй тест сделать🙈

Люди проверьте кто нибудь тестер у себя. У кого так же? Если норм работает напишите тоже. 



Тестирование возобновляется спустя какое то время. Сделал один тест. Надо ждать минут 20 что бы второй тест сделать🙈

Люди проверьте кто нибудь тестер у себя. У кого так же? Если норм работает напишите тоже.
 
Andrei Iakovlev #:

В 5120 подсветка символов в MW пропала.


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

 
Roman #:

Так выходные же, котировки не обновляются.

Пропала подсветка по секторам.

В выходные крипта тикает.

 

Предложение:
для CryptDecode() при ошибке распаковки не только возвращать 0, как метку ошибки, но и обнулять размер выходного массива. Сейчас он содержит обрезанные данные.
Обрезанный массив вряд ли кому-то нужен и приведет к трудно уловимым ошибкам.
Вот пользовался библиотекой, которая это не контролировала и пришлось проверять ошибку костыльными методами (по ожидаемому концу файла). Все встало четко, только когда проверил код библиотеки.

Подробнее тут https://www.mql5.com/ru/forum/64405/page8#comment_56985096

Обсуждение статьи "Работаем с ZIP-архивами средствами MQL5 без использования сторонних библиотек"
Обсуждение статьи "Работаем с ZIP-архивами средствами MQL5 без использования сторонних библиотек"
  • 2025.05.31
  • Forester
  • www.mql5.com
Этот модификатор был введен разработчиками торговой платформы MetaTrader 5 для того, чтобы можно было распаковывать ответ некоторых серверов, используя стандартную функцию WebRequest.