MetaTrader 5 build 4620: исправления ошибок в MQL5 и новые методы OpenBLAS

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

11 октября 2024

Terminal

  1. Исправлена ошибка, в результате которой в некоторых случаях запрашивалась неполная тиковая история.
  2. Исправлено автодополнение при выборе символов для языков, отличных от английского. Когда пользователь вводит название символа в поле поиска, система начинает автоматически предлагать подходящие варианты. Теперь поиск работает корректно и регистронезависимо для любых локалей.

MQL5

  1. В документацию MQL5 добавлено описание новых методов OpenBLAS. На данный момент добавлено 15 новых методов для матриц и векторов, работа по наполнению продолжается.
    OpenBLAS — эффективное решение с открытым исходным кодом для высокопроизводительных вычислений, особенно при работе с большими наборами данных.
    Функция Действие

    SingularValueDecompositionDC

    Singular Value Decomposition, алгоритм divide and conquer. Считается наиболее быстрым среди других алгоритмов SVD (lapack-функция GESDD).

    SingularValueDecompositionQR

    Singular Value Decomposition, QR-алгоритм. Считается классическим алгоритмом SVD (lapack-функция GESVD).

    SingularValueDecompositionQRPivot

    Singular Value Decomposition, алгоритм QR with pivoting (lapack-функция GESVDQ).

    SingularValueDecompositionBisect

    Singular Value Decomposition, алгоритм bisection (lapack-функция GESVDX).

    SingularValueDecompositionJacobiHigh

    Singular Value Decomposition, алгоритм Jacobi high level (lapack-функция GEJSV).

    SingularValueDecompositionJacobiLow

    Singular Value Decomposition, алгоритм Jacobi low level (lapack-функция GESVJ). В некоторых случаях вычисляет малые сингулярные значения и их сингулярные векторы гораздо более точно, чем другие подпрограммы SVD.

    SingularValueDecompositionBidiagDC

    Singular Value Decomposition, алгоритм divide and conquer для бидиагональной матрицы (lapack-функция BDSDC).

    SingularValueDecompositionBidiagBisect

    Singular Value Decomposition, алгоритм bisection для бидиагональных матриц (lapack-функция BDSVDX).

    EigenSolver

    Вычисление собственных значений и собственных векторов обычной квадратной матрицы классическим алгоритмом (lapack-функция GEEV).

    EigenSymmetricDC

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

    SingularSpectrumAnalysisSpectrum

    Функция-метод расчета относительных вкладов спектральных компонент по собственным значениям.

    SingularSpectrumAnalysisForecast

    Функция-метод расчета реконструированных и прогнозируемых данных с использованием спектральных компонент входного временного ряда.

    SingularSpectrumAnalysisReconstructComponents

    Функция-метод расчета реконструированных компонент входного временного ряда и их вклады.

    SingularSpectrumAnalysisReconstructSeries

    Функция-метод расчета реконструированного временного ряда с использованием первых component_count компонент.

  2. Исправлены ошибки при запуске старых версий исполняемых файлов MQL5-программ (.ex5 файлы), в которых используются методы matrix::CopyRates. Такие ошибки не возникали в файлах, скомпилированных после установки необходимых обновлений.
  3. Исправлена проверка типов объектов, разрешенных в union.

MetaTester

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