Since my last post, NNATS has matured a lot. I have learnt much more about the Betfair exchange, its API and about how to make (and lose) money.
In the beginning, NNATS had in excess of a hundred analogue input neurons. However, thanks to some clever pre-processing and my greater understanding of what is actually important, NNATS now has only one analogue input neuron (inverse of the current price) and twenty-three binary input neurons (on/off technical indicators).
The neural network supporting NNATS consists of four layers, comprising of the twenty-four input neurons mentioned already, six hidden neurons, two hidden neurons and one output neuron. The penultimate layer is deliberately two-dimensional, so that I can visualise what the network is doing – see my previous blog on this subject.
Using the network visualiser, I am quickly able to see how network training is progressing and tune as appropriate. The most significant thing to note is that I am not looking for an exact fit, as market price movements are probabilistic.
In the screenshot of the network visualiser below, the green points represent market conditions that have previously resulted in at least 25% profit. The red points represent market conditions where 25% profit could not be achieved.
The landscape is divided by a single hyper-plane. The hyper-plane defines a region, the “profit zone”, where NNATS believes there is a high probability of achieving at least 25% profit from a single trade. You will notice that there are still a few red points in the “profit zone” – this is because the market is probabilistic and cannot be predicted with 100% certainty. However, the number of green points in the “profit zone” far exceeds the number of red points, which means that profits should outweigh losses.
The other significant change I have made to NNATS is to remove completely the human trading interface - and subsequently me from the trading process. I had originally built myself a trading interface similar to Bet Angel, complete with trading ladders and charts. However, I have since discovered that I am my own worst enemy, and cannot prevent myself from overruling NNATS. The only time I have ever lost significant amounts of money is when I have ignored the advice provided by NNATS – therefore I have made the bold move to remove myself entirely.
Initial testing against trading simulations looks very promising. I just need to do some final plumbing and refinements before I trade for real again – all I lack is time. Work is very busy at the moment, and I’m about to go on yet another skiing holiday – it’s a tough life :-)
Once I have started trading for real, I will start posting P&Ls on this blog.

