Neural Networks in Trading: Paqarin, Almost Ready for Action

Several months ago I wrote a blog post about a new neural network system which I was developing for the Asirikuy community. This neural network based system – called Paqarin – uses a simple neural network technique based on normalization and the forecasting of buying and selling decisions in order to generate profitable back-testing results. Thanks to the very significant advances made on the F4 framework front I have now been able to fully port and back-test this strategy, adding several improvements which were possible thanks to the easy availability of the TA-lib indicators on the F4 framework. With this technique fully coded it will now be possible to release it to the Asirikuy community so that we can start the testing and improvement process for this strategy. On today’s post I will be talking a little bit more about Paqarin, why it is different from Sunqu – our other neural network trading technique – and what it has been able to achieve.

The idea with Paqarin was to take Neural Network trading in Asirikuy to the next level by including better normalization, use of symmetric functions for initialization and propagation and more direct forecasting of buying and selling decisions.  Since the NN technique implemented within Sunqu is not very straightforward, my aim with Paqarin was to create a much more transparent NN that aimed to make much clearer forecasts. The idea was to create a trading strategy that was different and complimentary to our first NN technique while maintaining aspects that make trading with NN so interesting, such as constant adaptation to market variations and the ability to interpret NN forecasts when they are expressed as probabilities.

When I first began building Paqarin I used my previously implemented Delphi template along with the Delphi FANN libraries. This approach allowed me to test some of my ideas but it was clear that things were becoming too complicated as I became bound by the limitations of the Delphi approach. Although these limitations were not technical – anything can be coded in Pascal – implementing ideas was a pain since I had no access to simple technical indicators that are needed to test simple ideas based on volatility adaptations, averaging, medians, etc. Having to code everything by myself meant slow progress and slow results. However, thanks to the F4 framework, these problems were all solved since on F4 I have access to the powerful TA-lib library and the more flexible FANN C library which allowed me to implement Paqarin in a quick and painless way. Additionally I was also able to test many new ideas, thanks to my ability to use these additional libraries inside F4 without any additional coding effort.

The latest version of Paqarin – the one to be released with the next F4 update – has several interesting improvements over the last one. First of all, I created a new normalization routine based on the ATR – making NN inputs volatility normalized – and I also implemented a new input/output mechanism that gives much better results, based on a direct forecasting of buying and selling signals (Asirikuy members should expect a detailed explanation on Asirikuy’s video about Paqarin). Overall the system now achieves what I wanted most, it implements a much more transparent neural network technique that predicts very clear buying and selling signals with inputs similar to those that would be used by a manual trader (price action information).

Paqarin is also very different from Sunqu. Although both systems have 25 year profitable back-tests that validate the constant re-training process of the neural network committees and both systems are based on the taking of decisions based on the daily time frame (with a similar number of candles used for each training process), Paqarin has some very different trading characteristics. While it is clear that I cannot know the exact trading technique used by either of them – since the interpretation of a neural network black box is tremendously complex – I can in fact say that their trades in back-testing are certainly different.  Sunqu can be said to be a mainly mean-reverting strategy while Paqarin likes to take trades that last much longer and tackle medium term trends. The character of both systems change with the years but both of them remain more or less within these frameworks.

With Paqarin we now have a second neural network system that helps us diversify our portfolio of NN strategies and helps us clarify what neural network approaches work – from a practical perspective – to tackle trading decisions. With these two systems it is now clear that you can indeed build NN strategies that have a statistical edge (since they are both retrained constantly through the back-testing process on past data) and hopefully in the near future we will improve or add new techniques to tackle new fronts. Right now my biggest challenge in the NN front is to create a profitable system that works for other pairs, something I think I will be able to do thanks to the tips I have got from the development of Hamuq, Sunqu and Paqarin.

If you want to learn more about neural networks in trading and how historically profitable NN based strategies can be created please consider joining, 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)

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

2 Responses to “Neural Networks in Trading: Paqarin, Almost Ready for Action”

  1. kew says:

    Good work.

    Do you train NN just once in the beginning with 12 years data or is NN training going on constantly? If later how often and on what time interval?


    • admin says:

      Hi Kew,

      Thank you for your post :o) Training is done constantly, on each daily bar, using the past 100-300 bars of data. The back-testing results show that constant retraining works. I hope this answers your question!

      Best Regards,


Leave a Reply