In the previous article, we discussed relational models which use attention mechanisms in their architecture. We used this model to create an Expert Advisor, and the resulting EA showed good results. However, we noticed that the model's learning rate was lower compared to our earlier experiments. This is due to the fact that the transformer block used in the model is a rather complex architectural solution performing a large number of operations. The number of these operations grows in a quadratic ...
When we design artificial intelligence models, we often need to prepare data first. Good data quality will allow us to get twice the result with half the effort in model training and validation. But our foreign exchange or stock data is special, which contains complex market information and time information, and data labeling is difficult, but we can easily analyze the trend in historical data on the chart. This section introduces a method of making data sets with trend marks by EA ...
The article continues the topic of ready-made templates for using indicators in EAs. We have already considered the templates for connecting oscillators and volume and Bill Williams' indicators to EAs. Here we will look at connecting to EAs and using trend indicators. As in the previous articles, we will display the data received from indicators on the dashboard created in the first article of this series. The article will not differ in any way from ...
We discussed in the previous article how to use socket (websocket) to communicate between EA and python server to solve the backtesting problem, and also discussed why we adopted this technique. In this article, we will discuss how to use onnx, which is natively supported by mql5, to perform inference with our model, but this method has some limitations. If your model uses operators that are not supported by onnx, it may end in failure, so this method is not suitable for all models (of course, you ...
In the previous article, we used two ONNX models to arrange the voting classifier. The entire source text was organized as a single MQ5 file. The entire code was divided into functions. But what if we try to swap models? Or add another model? The original text will become even bigger. Let's try the object-oriented approach. more...