Having taken a few months off, it’s time to dip back in and carry on my quest to discover whether artificial intelligence can predict financial markets.
Over the years my profits have come from more conventional trading, but I believe investment will become ever more automated (both the investment decisions and the execution) as AI continues to develop.
I started to study Genotick a while ago and got distracted when I discovered I would have to learn Java, a popular programming language but one I had not studied.
Happily if you can programme in one language, it’s not generally too much effort to pick up another.
To be blunt, there is very little evidence that the direction of financial markets can be predicted at all, let alone by AI. Typically what you want is for the software to tell you before the open of the market each day whether to be long, short or out.
If you are using daily data (the open, high, low and close) then before your market opens you download yesterday’s prices and run algorithms to have them tell you what to do when the market opens. So it’s 9 am in London and the US markets open at around 2pm if you are trading the S&P in New York or a commodity future in Chicago.
You leave plenty of time to run the software, cope with any glitches and put your order in for the market open. You can of course choose to trade on a lower latency than daily, in which case you will have to link your trading software up to your brokerage and let it run automatically, 24 hours a day. I don’t do that – I prefer to take trades that last a day or two or longer and place them manually.
Genotick is a fascinating program written by Lukasz Wotjow and you can join in discussion with him at his Google based forum.
It is based on genetic or evolutionary algorithms relying on bio-inspired operators such as mutation, crossover and selection.
You can forget all the nonsense about technical and fundamental analysis and let a self learning algorithm make your stock picks for you. The program starts with a clean slate: hundreds (or thousands if you want) of arbitrary systems each of which comes up with one of three decisions on each day: “Buy”, “Sell” or “Out”.
If you choose to generate 200 arbitrary systems, they will be weighted and averaged to produce one cumulative decision per stock or instrument.
The systems or robots learn as they go along. Systems which consistently get it wrong will be ditched or their signals used in reverse. Systems will mutate by combining rules in search of greater accuracy. Old systems will die off and new child systems will be created from parents.
Wikipedia provides a reasonable overview of genetic algorithms but if you are really interested there is no substitute for downloading the program and seeing for yourself what it does.
Actually I studied machine learning in Python (not Java) and among other helpful tomes I bought a three volume series by Jeff Heaton.
Enough for the day. If you have some play money by all means try and shoot the lights out by punting small using AI. But don’t bet the ranch – I have no confidence just at the moment that AI can predict chaotic systems such as stock markets.
If you want to learn more be prepared to put in many hours of work. No other way around it I fear.