MetaTrader 5 Python User Group - how to use Python in Metatrader - page 34

 
Renat Fatkhullin:

Has anyone already used Python integration in MetaEditor in builds 2302 and above (better beta 2304)?


The first version of integration into the editor is working now, and the next will be:

  • running scripts (not experts) and services as Python *.py programs
  • a completely rewritten metatrader5 python library with access to charts, symbols, ability to trade, trading history
  • highlight in editor

Already running *.py and *.ipynb programs in the editor works.

Please give it a try.


After the machine learning via python scripts is complete, we will move on to implementing WinML with ONNX natively in MQL5 itself.

Looked at what WinML is, pretty interesting thing, I'd like to understand it all ))
Do I understand correctly that after implementing WinML with ONNX, machine learning will be available in mql5 out of the box MetaTrader5 ?
And the trained models in WinML, can be used directly in MetaTrader5 programs ?

 
Roman:

Looked what WinML is, pretty interesting thing, I'd like to understand it all ))
Do I understand correctly that after the implementation of WinML with ONNX, machine learning will be available in mql5 out of the box MetaTrader5 ?
And the trained models in WinML, can be used directly in MetaTrader5 programs ?

Yes, that's right.

It will be possible to create very complex systems and sell them in the Market. And in theory they should work faster.

Research can be carried out in any system, then the trained models can be exported to ONNX format and run in native WinML.

 
Renat Fatkhullin:

Yes, that's right.

You could build very sophisticated systems and sell them on the market. And, in theory, they should work faster.

Research can be done in any system, then the trained models can be exported to ONNX format and run natively in WinML.

Another question in this context.
How do you plan to integrate the trained models into the mql5 program code ?
Will it be a direct integration of the trained code into the mql code?
Or each model will be saved in a separate file, and this file will be connected like inclusion?

 

In addition to Python integration, we are working on native support for big data functions both in code and in MetaEditor:

  1. SQLite Browser in MetaEditor is already available in betas



  2. Tabular viewing of CSV files, including zip/gz packages

    Datasets are usually distributed in CSV formats, including those packed in gz/zip. We give you a possibility to view (and edit probably) huge files in tabular view, which is almost unavailable in other editors.

  3. DatabaseXXX extension functions like DatabasePrint, DatabaseExport, DatabaseImport

    With these functions you can easily convert CSV files to SQLite databases, export or print them.

    Just import a CSV text database into SQLite once, and then use the awesome (C++-level) data access and retrieval speed. Our SQLite implementation is virtually lossless compared to C++ implementations.

  4. We allow to add SQLite files as resources into EX5 programs

    Resources are automatically compressed, allowing you to both distribute programs of moderate size and use them in the cluster network.

 
Renat Fatkhullin:

Yeah, that's right.

You could create very complex systems and sell them on the market. And they should work faster in theory.

Research can be done in any system, then export the trained models into ONNX format and run in native WinML.

nay. Alglib, as I understand it, are you not planning to update to the latest versions?

 
Roman:

Related to this, another question.
How do you plan to integrate trained models into mql5 program code ?
Will it be a direct integration of the trained code into the mql code ?
Or each model will be saved in a separate file, and this file will be connected like inclusion?

ONNX + WinML: https://docs.microsoft.com/en-us/windows/ai/

Read on your own on this topic. It's huge and can't be explained on the fingers in the forum.

Windows AI
Windows AI
  • mattwojo
  • docs.microsoft.com
Transform your Windows application with the power of AI.
 
Maxim Dmitrievsky:

nay. Alglib, as I understand it, has no plans to update to the latest versions?

I have an idea to update to the new features of MQL5 compiler, but I haven't got around to it yet.
 
Renat Fatkhullin:

Renat, I apologise for the off-topic question.
Could you please tell me how to link library with .lib or .a extension in ME project?
If projects do not support this linking, will this feature be added?
Currently, I have to make a dll from static libraries, and only then link them into the project,
it is not logical and convenient to link to a dll, when there are files .lib or .a

.

 

Don't judge harshly, maybe there are python lovers out there trying to integrate it into anything and everything.

Python is a C++ library, is it not better to make MQL SB(standard library)?

MQ was initially going in this way, but then gave up under the onslaught of Ruto, RWods and Algibods )

In my opinion, the whole problem is that MQ are afraid to go beyond "sandbox", like R, Py, Alglib is not our problem anymore.

They added a link to other "programming languages" and let the other Yaps do what they want.

Reminds me of an ostrich )))

 

The problem is the narrowness of perception of the topic among the masses and a lack of understanding of the trends in the development of algotrading:

  • Machine learning is the next technological step in algotrading
  • Python is not a C++ library, but a winning machine learning platform
  • Python's integration into editor and terminal gives you the ability to instantly use off-the-shelf and completely intolerable decision-making libraries
  • Integrations are the norm, we have Native DLL, .NET DLL, OpenCL, DirectX, SQLite in addition to a large set of native functions and standard library
  • Metatrader 5 and MQL5 are rapidly evolving to support machine learning: first via Python, Terminal API integration library and functions for working with massive data, and then to the standard WinML and open ONNX model formats.

Ostrich is exactly the kind of person

  • trying to argue about the complexity of MQL5 and the benefits of MT4
  • Not developing, saving their energy
  • Trying to stop progress


To better understand the algotrading industry:

  1. Think large scale with tens of millions of consumers rather than personal/private perceptions or opportunities
  2. Evaluate 5-10 year periods and development trends, public information is sufficient.
  3. the products (robots, indicators, ...) are mainly developed by more or less professional programmers, who need more and more possibilities, including distribution
  4. mass users use the output of professional developers often without understanding the complexity of applied technologies
  5. there is enough layer of not public, but super capacious developers and consumers in the form of hedge-funds
  6. You either embrace progress or you are left out - the train is running non-stop.
If one stays within the framework of "there is only me and my interests, why should I think about the general and the future" assessment, one legitimately loses the ability to defend their position on a large scale.