On yesterday’s post I talked about a new potential way to use Neural Networks in automated trading to contribute to a strategy’s money management and how if this worked it could lead to significant improvements for the systems as it could tremendously contribute to the reduction of future draw downs and the enhancement of future profitable periods. If a neural network is able to predict with a significant statistical edge the occurrence of future profit or draw down periods then it becomes possible to use it as a tool to enhance trading systems as the network can change money management decisions according to its “intuition”. On today’s post I want to share with you some of my first observations after a practical implementation of this idea, my first conclusions and the ways in which I will continue to tackle this problem going forward.
In order to test the idea of a Neural Network adjusted money management system I decided to use the simplest method which came to mind. I programmed the neural network into a trading system so that it used the trade outcome information (as a percentage of account balance at the moment of trade open) to predict the outcome of the next trade. The neural network started working after 120 trades had been taken and always used all the trade history (except the first 50 trades) as a way to train its responses to future outcomes. This means that the network was “learning more” as the strategy testing progressed as it gathered more trade outcome information which allowed it to have a more global view regarding the system’s results.
The modifications of the strategy’s money management were also quite simple. If the neural network predicted a positive future outcome then double the amount of money traded and if the neural network predicts a loss then cut the trading lot size by half. In this way we can see a very clear picture of the net effect of the NN adjusted money management as it has a clear and dramatic effect over the overall outcomes of the trading strategy from the moment when it starts trading. The fact that bad neural network interventions also lead to large losses also causes the neural network to be “more aware” of its brain and learn to avoid these mistakes as the testing period evolves. I run all these modifications on a prototype strategy generated through genetics (to avoid any possible unintentional hindsight I might introduce) and I ran the test for a period of 10 years.
There are some good news and some bad news regarding the results. On the bad side the neural network did not dramatically improve the results of the strategy but did cause significant volatility over the testing period. Overall results were improved by about a 30% overall profit when compared with the original trading strategy but compared to what we would expect for a random intervention (see 2nd chart of the picture above) we did not get a significant improvement in overall profit. Overall we could say that the neural network didn’t do a good job at figuring out future trade outcomes, as a matter of fact the neural network did not cause any improvement against what you would expect from simply doubling or halving of lot sizes at random.
However we should pay special attention to the good side. The neural network didn’t improve the strategy but it also didn’t cause it to do any worse, meaning that a neural network addition to a system will – at worse – equal a random distortion in money management which in the long term simply equals a higher trading volatility (probably associated with a higher Ulcer index). The second important thing is that the results of the neural network did improve significantly over the trading period as predictions became more accurate near the end of the test, this means that the learning is in fact working and the network is adapting to some of its previous mistakes. Finally the overall predictive power of the NN increases as we approach extreme profit or loss values meaning that the strategy was good at predicting direction whenever the foreseen move was large, this means that probably only “listening” to the NN when it is “screaming” an outcome might be a good idea.
There are therefore several key ways in which this approach might be improved to make it a robust addition to all of our trading systems. First we should use several networks (a committee always works best as there is more certainty about outcomes), second we should only listen to the committee when there is some sort of “significant” prediction judged by a certain threshold (which can be established in itself by the NN through time or manually at first), third the distortion of halving and doubling might be too large (25-50% distortions might work best). It might also be important to study the possibility of asymmetrical NN intervention (only reduce lot sizes on losing trades) which might also lead to improvements.
Certainly right now I am just starting to explore this field and it will probably be a few months before I get some significant conclusions as testing these implementations takes a lot of time and therefore it requires a lot of time and patience. Hopefully after much more testing I’ll be able to implement this “brain” idea into all of our Asirikuy trading systems which might also be a very significant way to adapt against broker dependency issues (as an NN might be able to identify best opportunities according to the particular broker’s trading result record). In the meantime our trading systems continue to gather trading history which will be essential to implement this solution. Expect Part Three of this post within a week or two :o)
This weekend I am also going to release an Asirikuy video showing you how to implement a NN in FreePascal so that you can start your own tests in this regard and help us reveal the “secrets” behind NN implementations around money management. If you would like to learn more about my work in automated trading and how you can increase your chances of success through education and knowledge please consider joining Asirikuy.com, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading in general . I hope you enjoyed this article ! :o)