Discussion of article "Neural networks made easy (Part 4): Recurrent networks"

 

New article Neural networks made easy (Part 4): Recurrent networks has been published:

We continue studying the world of neural networks. In this article, we will consider another type of neural networks, recurrent networks. This type is proposed for use with time series, which are represented in the MetaTrader 5 trading platform by price charts.

Of course, the use of 4 internal neural layers in each LSTM block and the complexity of the algorithm itself affected the performance, and thus the speed of such a neural network is somewhat lower than the previously considered convolutional network. However, the root mean square error of the recurrent network is much less.


In the process of recurrent neural network training, the target hitting accuracy graph has a pronounced, almost straight, upward trend.

Only rare pointers to predicted fractals are visible on the price chart. In the previous tests, the price chart was full of prediction labels.

Author: Dmitriy Gizlyk

 

Neural networks are a very necessary topic for trading.

At the same time, neural networks should take into account the nature of the process.

Financial markets are behavioural systems, and the process of price movement is non-stationary.

Within the impulse equilibrium theory the behavioural factor is taken into account - these are specific parameters - "elementary structure (M-shape)", "inducing amplitude", "active" impulse", and "super active impulse".

It would be interesting to give this information to the neural network as a reference.

 
Very interesting work.
 
Thank you for sharing your work, Dimitriy!
Is there a way to make the NN use all CPU cores when training?
 

Nice discussion on NN! Hope to find something on how to load in MQL5 an externally trained NN in MT5.

In my case I a have a mxnet, which I whish could be loaded in mql5. I have checked the code base, but haven't found any example as to which libraries to use. Any help? 

 

Fascinating research and parsing of details. The author's professionalism is undoubted - the implementation of the software blocks confirms it. The question arises as follows: If Python and, accordingly, Keras, TensorFlow, PyTorch are allowed to be used in MQL5 programmes, would it be easier and more promising to implement neural networks with these tools using the rich toolkit?

 
Roman Korotchenko #:

Fascinating research and parsing of details. The author's professionalism is undoubted - the implementation of the software blocks confirms it. The question arises as follows: If Python and, accordingly, Keras, TensorFlow, PyTorch are allowed to be used in MQL5 programmes, would it be easier and more promising to implement neural networks with these tools using the rich toolkit?

There are several reasons.
1. This article allows you to see the principles of the algorithm. If you are not interested, you can always use ready-made libraries of Python and other programming languages.
2. The first Python integration was added on 12 June 2019 build 2085 in which you could only get quotes. Since then, the integration capabilities have been continuously expanded. But even now it is not complete. The possibilities of MQL5 are wider.
3. Many people here are not professional programmers. And for them, learning integration and another programming language may be difficult. Perhaps, someone may find the article difficult to understand, but they can always use the attached ready code for their developments.

Take a look at Python. The libraries you mentioned were also once created and use integration with other programming languages, which the user may not even realise. And the creation of such libraries in MQL5 only expands its capabilities.

MetaTrader 5 build 2085: Интеграция с Python и массовые улучшения в тестере стратегий
MetaTrader 5 build 2085: Интеграция с Python и массовые улучшения в тестере стратегий
  • 2019.06.12
  • MetaQuotes
  • www.metatrader5.com
Добавлено API для запроса данных из терминала MetaTrader 5 через приложения, использующие язык Python. Python является современным высокоуровневым языком программирования для разработки сценариев и приложений. Содержит множество библиотек для машинного обучения, автоматизации процессов, анализа и визуализации данных. Пакет MetaTrader для Python...