Some interesting results from our machine learning system repository

If you have been following my blog you may know that we started building a machine learning repository some time ago and that only recently have we been able to revive this repository and start accumulating an important amount of machine learning strategies. Today I want to share with you some interesting results from the repository that came as a consequence of a small mistake but that I believe say something significant about the nature of the systems that are being generated by machine learning and how they are different from systems generated by other methods, for example systems that are generated by finding price action based patterns.


Yesterday I was doing some simulations of the machine learning repository in order to make sure that an automated back-testing script designed to test these systems was working properly. However I found that the differences between my simulations were very big. The simulations that were being executed by the automated scripts were much more profitable – and what I expected – while my other simulations were much less profitable. I spent some time debugging the back-tester to see what could be wrong and after spending an hour looking into code and checking that everything was correctly I looked into the back-tests from the script and realized what had been wrong all along.

While the script back-tests systems using a csv file that defines the system symbols, spreads and minimum stops when I back-tested without a script I had to input this information manually in the back-tester and I was inputting this information wrong. In the case above the system was supposed to be trading on the EURUSD – which the script did assign correctly – while I was performing the test on the USDJPY. Since the test was also profitable I didn’t think it was a different symbol – since with other system types this usually turns the system into a completely unprofitable strategy – and therefore I thought that was making a mistake or had introduced a bug in another way.


This phenomenon happened across a variety of different systems in the ML repository, even when going from USDJPY designed systems to EURUSD systems – as showed in the second image above – this was surprising to me as this sort of unintended profitability in symbols different from the symbol where a strategy was mined (without specifically mining for it) is indeed rare when building trading strategies. To me this implies that machine learning strategies are in a very fundamental manner different from strategies that have fixed logic. The machine learning implementation confers the strategy some plasticity that is in some cases enough to allow the strategy to also make valuable predictions on other symbols, even if their characteristics are as different as those of the EURUSD and the USDJPY.

Of course there were also cases when the above didn’t happen and the strategy turned into an unprofitable strategy immediately after changing symbols. This is the most common scenario and it is what happens when a strategy is indeed very adapted to the particular way in which the price action within a given symbol happens. Since we use 30 years of back-testing data this implies simply that the strategy is very well adapted to a fundamental core behavior of the symbol, rather than curve fitted in the negative sense (what does happens if you create a system using just 1 year of data for example). The above systems also use function adjusted trailing stops so it is not surprising that most of the time these function adjusted stops do not work so well when changing symbols, since they are fixed, while the machine learning algorithm has a lot of flexibility in how decisions are taken across two different instruments.


I am not sure whether the above means that the strategies will be more or less robust than price action based strategies. Since we have never traded machine learning portfolios for a significant period of time it is hard to answer this question but the above certainly implies that the machine learning strategies within our repository are fundamentally different from the price action strategies we have created so far. This is important as they may constitute an important source of diversification. If you would like to learn more about machine learning strategies and how you too can trade a portfolio made from strategies that use constantly retraining models please consider joining, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading.strategies.

Print Friendly
You can leave a response, or trackback from your own site.

2 Responses to “Some interesting results from our machine learning system repository”

  1. Silent says:

    That happens to the best of us at least you figured it out.

  2. Jim says:

    After the gbp crosses have had some some shock treatment today from brexit it will be interesting to see how the systems trade from here ? I found that these once in
    10 year events can change the personality of a currency and in some way alter the way it has traded. Just my opinion not founded on any facts.

Leave a Reply

Subscribe to RSS Feed Follow me on Twitter!
Show Buttons
Hide Buttons