Новая версия платформы MetaTrader 5 build 4570: улучшения веб-версии и интеграция с OpenBLAS в MQL5

 

В пятницу 27 сентября 2024 года будет выпущена обновленная версия платформы MetaTrader 5.

Мы добавили множество новых функции и улучшений в веб-версию платформы. В ней появился режим перекрестия для получения точных значений и измерения расстояния на графике, а также новый вид графика — линия. В мобильной версии появилась возможность включать дополнительную информацию в «Обзоре рынка». Также расширен список поддерживаемых горячих клавиш для более удобной работы с графиками.

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

Новая версия платформы MetaTrader 5 build 4570: улучшения веб-версии и интеграция с OpenBLAS в MQL5

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


MetaTrader 5 Client Terminal

  1. Terminal: Ограничен доступ к MQL5-функциям для торговли и получения истории при наличии подписки на сигнал на счете.

    При обнаружении подписки на счете (не имеет значения, включено ли копирование в текущем терминале) запрещается вызов любых торговых функций MQL5: получение открытых ордеров и позиций, получение истории, выполнение торговых операций. Соответствующее предупреждение выводится в журнал:
    'XXX': signal subscription detected, trading and history access functions in MQL5 and Python disabled
    Ограничения распространяются и на вызовы торговых функций Python: positions_total, positions_get, orders_total, orders_get, history_orders_total, history_orders_get, history_deals_total, history_deals_get, order_check, order_send.

    Если счет отписывается от сигнала или вы подключаетесь к другому счету, который не подписан на сигнал, ограничение снимается и в журнал выводится сообщение:
    'XXX': no signal subscription detected, trading and history access functions in MQL5 and Python enabled
    При наличии ограничения на счете функции MQL5 будут возвращать следующие коды ответа:

    • OrderSend, OrderSendAsync — RET_REQUEST_AT_DISABLED_CLIENT
    • OrdersTotal, PositionsTotal — 0
    • PositionGetSymbol, PositionSelect, PositionSelectByTicket, PositionGetTicket — ERR_MQLAPI_TRADE_POSITION_NOT_FOUND
    • OrderGetTicket, OrderSelect — ERR_MQLAPI_TRADE_POSITION_NOT_FOUND
    • HistorySelect — возвращает ERR_MQLAPI_TRADE_DEAL_NOT_FOUND

  2. Terminal: Исправлен, оптимизирован и значительно ускорен запрос тиковой истории и ее экспорт в файлы CSV\HTML.
  3. Terminal: Добавлена поддержка Microsoft Edge WebView2 для отображения HTML-страниц в торговой платформе под macOS. По сравнению с устаревшим MSHTML новый компонент существенно расширяет возможности для отображения веб-контента, предоставляя доступ к современным технологиям. Переход на WebView2 позволил улучшить внешний вид разделов «Маркет», «Сигналы», «VPS» и т.д., увеличить их производительность и создать более отзывчивые интерфейсы.

  4. Terminal: Исправлено контекстное меню в окне отправки письма через встроенную почту.
  5. Terminal: Исправлена фильтрация в диалоге выбора торговых инструментов. Теперь для скрытия истекших инструментов необязательно сначала вводить их имя в строке поиска.
  6. Terminal: Исправлен расчет ожидаемого гарантийного обеспечения (маржинальных требований) в окне спецификации контракта. Ошибка возникала для инструментов типа Exchange Stocks и Bonds.
  7. Terminal: Доработана функция массового закрытия торговых позиций для счетов с FIFO. Теперь для них не показываются несовместимые типы операций: закрытие всех прибыльных/убыточных позиций, позиций в одном направлении и встречных позиций.
  8. Terminal: Исправлена ошибка, из-за которой пользователи не могли выставить разнонаправленные отложенные ордера на счетах, где закрытие позиций происходит по правилу FIFO.
  9. Terminal: Исправлен расчет ликвидационной стоимости торгового счета при наличии позиций по инструментам с типом Exchange Futures.
  10. Terminal: Исправлен расчет плавающей прибыли для позиций по инструментам с типом Exchange Bonds и Exchange MOEX Bonds.
  11. Terminal: Отключена функция автоматического создания демонстрационного счета при запуске платформы, если в ней нет ранее добавленных счетов.
  12. Terminal: Улучшен контроль вводимого имени и email при регистрации счетов.
  13. Terminal: Исправлен расчет маржи для захеджированных позиций. Ошибка могла проявляться в некоторых случаях при использовании плавающей маржи на счете (зависит от объема/стоимости позиций на счету).
  14. Terminal: Исправлено обновление состояния кнопки «Далее» в диалоге открытия демо-счета. После ввода кода подтверждения телефона или почты кнопка могла оставаться неактивной.
  15. Terminal: Обновлены переводы пользовательского интерфейса.
  16. MQL5: Добавлена штатная интеграция с библиотекой матричных вычислений OpenBLAS.

    OpenBLAS — это высокопроизводительная библиотека линейной алгебры с открытым исходным кодом, реализующая BLAS (Basic Linear Algebra Subprograms) и некоторые функции LAPACK. OpenBLAS нацелен на повышение производительности вычислений, особенно в операциях с матрицами и векторными вычислениями, которые важны в научных и инженерных задачах, таких как машинное обучение, численные методы и симуляции.

    Основные особенности OpenBLAS:

    • Поддержка многопоточности: OpenBLAS может эффективно использовать несколько процессорных ядер для параллельных вычислений, что значительно ускоряет выполнение операций на многопроцессорных системах.
    • Оптимизация под архитектуры процессоров: OpenBLAS включает оптимизированные сборки для различных процессоров, таких как Intel, AMD, ARM и других. Библиотека автоматически определяет характеристики процессора (наборы поддерживаемых инструкций AVX/AVX2/AVX512), и выбирает наиболее подходящие реализации функций.
    • Поддержка широкого спектра операций BLAS: OpenBLAS реализует основные функции BLAS, такие как операции с векторами (например, векторное сложение и скалярное произведение), матрицами (умножение) и векторно-матричные операции.
    • Совместимость с LAPACK: библиотека поддерживает ряд функций LAPACK (Linear Algebra PACKage), которые нужны для более сложных операций линейной алгебры, таких как решения систем линейных уравнений, вычисление собственных значений матриц и другие.
    • Высокая производительность: по сравнению с другими библиотеками BLAS, OpenBLAS часто показывает лучшие результаты благодаря ручной оптимизации под конкретные процессорные архитектуры.

    OpenBLAS широко используется в приложениях, связанных с численными вычислениями, таких как:

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

    На данный момент в MQL5 доступны следующие методы:

    Сингулярное разложение:

    • SingularValueDecompositionDC — алгоритм divide and conquer. Считается наиболее быстрым среди других алгоритмов SVD (lapack-функция GESDD).
    • SingularValueDecompositionQR — алгоритм QR алгоритм. Считается классическим алгоритмом SVD (lapack-функция GESVD).
    • SingularValueDecompositionQRPivot — алгоритм QR with pivoting (lapack-функция GESVDQ).
    • SingularValueDecompositionBisect — алгоритм bisection (lapack-функция GESVDX).
    • SingularValueDecompositionJacobiHigh — алгоритм Jacobi high level (lapack-функция GEJSV).
    • SingularValueDecompositionJacobiLow — алгоритм Jacobi low level (lapack-функция GESVJ). В некоторых случаях вычисляет малые сингулярные значения и их сингулярные векторы гораздо более точно, чем другие подпрограммы SVD.
    • SingularValueDecompositionBidiagDC — алгоритм divide and conquer для бидиагональных матриц (lapack-функция BDSVDX).
    • SingularValueDecompositionBidiagBisect — алгоритм bisection для бидиагональных матриц (lapack-функция BDSVDX).

    Методы Eigen:

    • EigenSolver — вычисление собственных значений и собственных векторов обычной квадратной матрицы классическим алгоритмом (lapack-функция GEEV).
    • EigenSymmetricDC — вычисление собственных значений и собственных векторов симметричной или эрмитовой (комплексно-сопряженной) матрицы при помощи алгоритма divide and conquer (lapack-функции SYEVD, HEEVD).

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

  17. MQL5: Добавлено значение SYMBOL_SWAP_MODE_CURRENCY_PROFIT в перечисление ENUM_SYMBOL_SWAP_MODE. Если функция SymbolInfoInteger возвращает такое значение, значит свопы на счете начисляются в деньгах в валюте расчета прибыли.
  18. MQL5: Расширена поддержка ONNX Runtime. Добавлены новые типы операций машинного обучения, что позволяет запускать более сложные нейромодели.
  19. MQL5: Продолжается переход на более эффективный компилятор MQL5. Он уже используется для части функций. Переход позволит использовать новые оптимизации и увеличить скорость исполнения программ.
  20. MQL5: Добавлены новые типы данных, необходимые для поддержки библиотеки OpenBLAS:

    • complexf — комплексное число с данными float
    • vectorcf — вектор, содержащий элементы типа complexf
    • matrixcf — матрица, содержащая элементы типа complexf

  21. MQL5: Улучшена работа WebRequest при работе с веб-сайтами, которые нарушают правила формирования URL, имеют ошибки в редиректах или большие списки альтернативных имен DNS.
  22. MQL5: Исправлено одновременное присваивание нескольким переменным типа matrix или vector.
  23. MetaEditor: Обновлены доступные модели для AI Assistant. Теперь вместо GPT-3.5 Turbo используется более современная GPT-4o mini. Также добавлена модель 01-mini.
  24. MetaEditor: Исправлена ошибка в отладчике, из-за которой в некоторых случаях значения переменных не обновлялись в окне наблюдения.
  25. MetaEditor: Обновлены переводы пользовательского интерфейса.
  26. MetaTester: Исправлено сохранение коэффициентов маржи в пользовательских настройках символа.
  27. MetaTester: Исправлены утечки памяти, происходившие в некоторых случаях между проходами тестирования.

MetaTrader 5 Web Terminal

  1. Добавлен режим «Перекрестие» для просмотра точных значений и измерения расстояний на графике.

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




    Вы также можете использовать горячие клавиши: средняя кнопка мыши — для включения перекрестия, Esc или правая кнопка мыши — для отключения.

  2. Добавлено представление графика в виде простой линии, построенной по ценам закрытия баров:




  3. Добавлена возможность показать дополнительные колонки в «Обзоре рынка» в мобильном представлении. Для настройки перейдите в табличный режим и нажмите «...»:




  4. Добавлены горячие клавиши:

    • Home — прокрутка к началу графика (самой ранней дате)
    • End — прокрутка к концу графика (самой поздней дате)
    • Page Up — прокрутка графика на один экран назад
    • Page Down — прокрутка графика на один экран вперед

  5. Усилена безопасность хранения данных для подключения к счету.
  6. Улучшены прокрутка, перемещение и масштабирование графиков.
  7. Ускорена первоначальная загрузка веб-платформы на странице.
  8. Оптимизирована загрузка баров.
  9. Исправлен расчет плавающей прибыли для позиций по инструментам с типом Exchange Bonds и Exchange MOEX Bonds.
  10. Исправлен ввод объема в панели быстрой торговли на графике.
  11. Исправлена ошибка обновления объемов заявок в стакане цен. В некоторых случаях значения могли обновляться с задержкой.
  12. Исправлена проверка на минимально допустимый объем торговой операции при выставлении ордеров.
  13. Исправлен расчет маржи для захеджированных позиций. Ошибка могла проявляться в некоторых случаях при использовании плавающей маржи на счете (зависит от объема/стоимости позиций на счету).
  14. Исправлена ошибка, из-за которой кнопки Buy и Sell на панели быстрой торговли могли быть неактивными до изменения объема.

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

 

4. Terminal: Исправлено контекстное меню в окне отправки письма через встроенную почту. Теперь в нем доступны команды для работы с макросами и шаблонами.

О чем речь? Я не понимаю.

 
Alain Verleyen #:

О чем речь? Я не понимаю.

вот про это :

во вкладке Почта можно нажать Insert и отправить письмо на деревню дедушке

 
Alain Verleyen #:

О чем речь? Я не понимаю.

Mailbox - <right mouse click> - Create
 
Добрый вечер. У меня перестал открываться терминал. Вчера все было хорошо. Сегодня он просто висит в диспетчере устройств. С мт4 такой проблемы нет.
 
Maxim Kuznetsov # :

вот про это :

во вкладке Почта можно нажать Insert и отправить письмо на деревню дедушке

Sergey Golubev # :
Mailbox - <right mouse click> - Create

Спасибо, я знаю о почтовом ящике.

Мой вопрос был больше о " Теперь в нем доступны команды для работы с макросами и шаблонами. " ?

Я не вижу никакой разницы по сравнению с 4410.

 
Sergey Golubev #:
Mailbox - <right mouse click> - Create

А как быть, если нет такой опции в контекстном меню?


 
Janis Ozols #:

А как быть, если нет такой опции в контекстном меню?


У MetaQuotes-Demo - есть.

--------------------

Если про брокеров, то, наверное, это не у всех брокеров есть.
Сейчас проверил (билд 4540) - у Аль... - нет, а у Just... - есть.

 
MetaQuotes:


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

tm

 

Где искать методы для OpenBLAS ?
Документация не подготовлена для пользователя. 

И вижу только некоторые перечисления для свойств.

scr

 
Кнопка Stop бесконечно горит и все Агенты в состоянии Ready после такого события.
2024.09.14 16:27:22.080 Tester  "Examples\MACD\MACD Sample.ex5" 64 bit
2024.09.14 16:27:22.143 Tester  cache file 'tester\cache\MACD Sample.EURUSD.M1.20180101.20240801.40.2DEDC037DFC92D15BAE6E6FEC44293FE.opt' deleted
2024.09.14 16:27:22.152 Tester  Experts\Examples\MACD\MACD Sample.ex5 on EURUSD,M1 from 2018.01.01 00:00 to 2024.08.01 00:00
2024.09.14 16:27:22.152 Tester  EURUSD: history data begins from 2013.01.01 00:00
2024.09.14 16:27:22.152 Tester  EURUSD: ticks data begins from 2018.01.02 00:00
2024.09.14 16:27:22.152 Tester  complete optimization started
2024.09.14 16:27:22.152 Tester  tester_no_cache property used
2024.09.14 16:27:22.152 Core 1  connecting to 127.0.0.1:3000
2024.09.14 16:27:22.155 Core 1  connected
2024.09.14 16:27:22.160 Core 1  authorized (agent build 4540)
2024.09.14 16:27:22.498 Core 1  common synchronization completed
2024.09.14 16:27:51.903 Core 1  pass 0 tested with error "no disk space in ticks generating function" in 0:00:29.399
2024.09.14 16:27:51.903 Core 1  connection closed