New MetaTrader 5 Platform Build 4730: Extended OpenBLAS support and general performance optimization

 

The MetaTrader 5 platform update will be released on Friday, December the 6th, 2024.

The MQL5 update introduces support for more OpenBLAS library functions, as well as the TransposeConjugate and CompareEqual functions. They will provide wider opportunities for working with matrices and vectors. In addition, we have fixed the compatibility for the Python integration package. It now operates with any Python version up to 3.13.

We have also optimized and accelerated platform operations related to price data.


MetaTrader 5 Platform beta build 4695: Extended OpenBLAS support and general performance optimization

MetaTrader 5 Client Terminal

  1. Terminal: Changed calculations for the position, order and deal values. The value is now displayed in the account deposit currency rather than the base currency of the trading symbol:


    The value of positions, orders and trades is now displayed in the account deposit currency

  2. Terminal: Added field for entering date of birth when opening demo accounts.



    Added field for entering date of birth when opening demo accounts


  3. Terminal: Fixed scaling of indicators displayed in the chart subwindow. For some oscillators, the minimum and maximum scale values could previously be selected incorrectly.
  4. Terminal: Optimized and accelerated unpacking of tick data and price history, which will increase the chart loading speed.
  5. Terminal: Fixed text color editing in the internal email compose window.
  6. Terminal: Updated user interface translations.
  7. MQL5: Added new OpenBLAS methods:

    • EigenSolver2 – compute generalized eigenvalues and eigenvectors for a pair of ordinary square matrices (lapack function GGEV).
    • EigenSolverX – compute eigenvalues and eigenvectors of a regular square matrix in Expert mode, i.e. with the ability to influence the computation algorithm and the ability to obtain accompanying computation data (lapack function GEEVX).
    • EigenSolver2X – compute eigenvalues and eigenvectors for a pair of regular square matrices in Expert mode, i.e. with the ability to influence the computation algorithm and the ability to obtain accompanying computation data (lapack function GGEVX).
    • EigenSolverShur – compute eigenvalues, the upper triangular matrix in Schur form, and the matrix of Schur vectors (lapack function GEES).
    • EigenSolver2Shur – compute eigenvalues, generalized eigenvectors, generalized Schur forms, and left and right Schur vectors for a pair of regular square matrices (lapack function GGES).
    • EigenSolver2Blocked – compute generalized eigenvalues and eigenvectors for a pair of regular square matrices using a block algorithm (lapack function GGEV3).
    • EigenSolver2ShurBlocked – for a pair of regular square matrices, compute eigenvalues, generalized eigenvectors, generalized Schur forms, and left and right Schur vectors using a block algorithm (lapack function GGES3).
    • EigenSymmetricRobust – compute eigenvalues and eigenvectors of a symmetric or Hermitian (complex conjugate) matrix using the Multiple Relatively Robust Representations, MRRR algorithm (lapack functions SYEVR, HEEVR).
    • EigenSymmetricBisect – compute eigenvalues and eigenvectors of a symmetric or Hermitian (complex conjugate) matrix using the bisection algorithm (lapack functions SYEVX, HEEVX).

  8. MQL5: Added new methods for complex matrices:

    • TransposeConjugate – create a conjugate-transposed matrix.
      matrix<complex<T>> matrix<complex<T>>::TransposeConjugate(void) const;
      The method returns a new conjugate-transposed matrix in which the elements of the original matrix are transposed and converted to their complex conjugates.

      If an error occurs, an empty matrix is returned. Use the GetLastError function to get the error code.

    • CompareEqual – absolute comparison of two matrices.
      int matrix<T>::CompareEqual(const matrix<T>& mat) const
      The return values are:

      • -1 – if the element of matrix A is less than the corresponding element of matrix B.
      • 0 – if all elements of matrices A and B are identical.
      • 1 – if the element of matrix A is greater than the corresponding element of matrix B.

      The method can also return errors if the input data is invalid. To get the error code, use the GetLastError function.

  9. MQL5: Added Python support up to version 3.13 for the corresponding integration package. To update the package, run the following command:

    pip install --upgrade MetaTrader5

  10. MQL5: Fixed skipping of the first Timer event. An error occurred if a timer was started within the OnTimer handler.
  11. MetaEditor: Fixed calculation of values for input variables in the debugger mode. In some cases, the message "unknown identifier" was displayed instead of the value.
  12. Tester: Fixed search for required cross rates for currency conversion when testing applications using exchange instruments.


MetaTrader 5 Web Terminal

  1. Added support for the Request execution type for large-volume orders.
  2. Added support for an extended description of the reason for requests rejected by a broker.
  3. Fixed account opening form. Information is now requested according to the broker settings.
  4. Fixed country detection during the registration of demo accounts.
  5. Fixed alignment in the dialog displaying the one-click trading warning.


The update will be available through the Live Update system.

 
When will the issue of backtest swap calculation errors be resolved?
 
Can you add distance metric functions like wasserstein distance,cosine distance, manhattan distance etc.. to your future updates?
 
Long time account not issue,the time open close open issue and accses not fungsi and eror,please,happy new year team 
 
Is there any future plans to introduce anchored or floating walk forward analysis, monte carlo simulations and all of the other "robustness" testing metrics?
 
When do you fix the core agent bugs and the IDE bug? I can't use both of them since the build 4735 and 4737
 
When you ask for something to be fixed, please at least add a link to the corresponding detailed report (or add the explanation right here).
 
Dominic Michael Frehner #:
When do you fix the core agent bugs and the IDE bug? I can't use both of them since the build 4735 and 4737
Use a 4368
 
Kabedi Gemima #:
Use a 4368

What was the mysterious bug in the IDE and agents in betas 4735 and 4737? What's so special about beta 4368, other than it being below the minimum build 4410?

[Deleted]  
I noticed that MT5 cannot use proxy. MT4 still works fine.