Machine Learning Trading
Having seen Haley Joel Osment staring longingly for eternity in the closing scenes of the movie A.I. Artificial Intelligence, soon after having watched Robin Williams breathe his last as the Bicentennial Man, I was a little wary of artificial intelligence and machine learning, to put it mildly! However, both machine learning and I have come a long way since then. Let me tell you why.
Machine learning is a useful trading tool because it can help achieve greater predictive accuracy, based on algorithms that receive input data, which is statistically analyzed to predict the outcome within an acceptable range. With the computer’s obvious computational prowess, devoid of human error and emotions, and late night outs resulting in hungover mornings, what you get is pure analysis based on pre-decided predictors or features. At present, the top two programming languages that have tools for machine learning and time series forecasting are Python and R language. Some prefer Python because it is better at backtesting than R and has several Machine Learning Libraries, although R is considered to have better statistical forecasting libraries.
Applications of Machine Learning for Trading
With advances in software and hardware technology, artificial intelligence today uses various learning methods, including neural networks, to identify and analyze predictors (factors or features) with economic value. This application of AI is what is known as machine learning. In fact, the use of machine learning to develop both long-term and short-term trading strategies has been gaining popularity in recent times, with some hedge funds currently using it successfully.
Here’s a look at applying machine learning for the purposes of trading:
- Indicator Selection
Regardless of whether you prefer fundamental analysis or technical analysis for your trading decisions, the most important choice to make is the indicators that you will use for analysis and how you interpret these indicators. In machine learning, the selection of indicators is just as crucial. It is known as “feature selection.” Many believe that the key to success in machine learning-based trading is the strength of the algorithm used. However, in reality, it is the indicators or features that you choose for analysis that play a far more vital role.
A good way to choose indicators is to use a decision tree. This is an incredibly versatile algorithm that is very easy to interpret. It actually eases the process of choosing from the huge number of indicators and price movement of your asset of choice. The decision tree will help you find both the indicators and indicator values, while splitting the data into price increases and decreases. It will also provide a set of rules for you to use while trading based on these indicators.
While the decision tree is a powerful tool, for you to use it efficiently, make sure you prune it properly and test it for overfitting.
The next step in using machine learning for trading is optimization, which is choosing the right parameter values to increase your chances of success. The parameters that one usually has to choose from, based on their trading strategy, could include entry and exit parameters, indicator settings, take profit and stop loss levels, position sizing, etc.
In fact, given that different strategies have a large number of parameters to choose from, machine learning can actually help you make smarter choices. There are genetic algorithms that replicate the process of “natural selection” by creating for you a set of unique “child” strategies, based on a mix of the top “parent” strategies, with some probability of mutation.
For this, you will start off with a large number of strategies that come with various combinations of parameters. To select the top strategies, you will need to run a test set of each strategy and repeat the process till you meet your pre-decided performance criteria. The premise is that only the strongest strategy will “survive” this testing. However, for optimization to be successful, you need to ensure that you choose the right performance metrics and test the final strategy to make sure that there is no overfitting to any data set.
3. Live Trading
The beauty of machine learning is that the algorithm is capable of learning and adapting to the ever-changing market conditions. However, to trust and make use of these capabilities for a live trading account, you first need to understand how the algorithm works and test it for yourself. This will create transparency by letting you understand why and when a trading decision is taken.
In fact, machine learning algorithms have patterns and most experts recommend that you use these patterns to create trading rules for yourself. These rules are easy to use and can be adapted to the changing market conditions, without you needing to be a math or programming geek.
For now, we are still waiting for most trading platforms to integrate machine learning. But when it does become available to the common trader, it just might turn the markets in your favour. Of course, with the application of artificial intelligence comes reduced need for human involvement. How this will affect the market and price movements, only time will tell.
If you liked this educational article please consult our Risk Disclosure Notice before starting to trade. Trading leveraged products involves a high level of risk. You may lose more than your invested capital.