Using Genetic Algorithms To Forecast Financial Markets

Burton suggested in his book, "A Random Walk Down Wall Street", (1973) that, "A blindfolded monkey throwing darts at a newspaper's financial pages could select a portfolio that would do just as well as one carefully selected by experts." While evolution may have made man no more intelligent at picking stocks, Charles Darwin's theory has quite effective when applied more directly. (To help you pick stocks, check out How To Pick A Stock.)

Genetic algorithms (GAs) are problem solving methods (or heuristics) that mimic the process of natural evolution. Unlike artificial neural networks (ANNs), designed to function like neurons in the brain, these algorithms utilize the concepts of natural selection to determine the best solution for a problem. As a result, GAs are commonly used as optimizers that adjust parameters to minimize or maximize some feedback measure, which can then be used independently or in the construction of an ANN.

In the financial markets, genetic algorithms are most commonly used to find the best combination values of parameters in a trading rule, and they can be built into ANN models designed to pick stocks and identify trades. Several studies have demonstrated that these methods can prove effective, including "Genetic Algorithms: Genesis of Stock Evaluation" (2004) by Rama, and "The Applications of Genetic Algorithms in Stock Market Data Mining Optimization" (2004) by Lin, Cao, Wang, Zhang. (To learn more about ANN, see Neural Networks: Forecasting Profits.)

How Genetic Algorithms Work

Genetic algorithms are created mathematically using vectors, which are quantities that have direction and magnitude. Parameters for each trading rule are represented with a one-dimensional vector that can be thought of as a chromosome in genetic terms. Meanwhile, the values used in each parameter can be thought of as genes, which are then modified using natural selection.

Apply mutation or crossover operators to the selected parents and generate an offspring.

Recombine the offspring and the current population to form a new population with the selection operator.

Repeat steps two to four.

Over time, this process will result in increasingly favorable chromosomes (or, parameters) for use in a trading rule. The process is then terminated when a stopping criteria is met, which can include running time, fitness, number of generations or other criteria. (For more on MACD, read Trading The MACD Divergence.)

Using Genetic Algorithms in Trading

While genetic algorithms are primarily used by institutional quantitative traders, individual traders can harness the power of genetic algorithms - without a degree in advanced mathematics - using several software packages on the market. These solutions range from standalone software packages geared towards the financial markets to Microsoft Excel add-ons that can facilitate more hands-on analysis.

When using these applications, traders can define a set of parameters that are then optimized using a genetic algorithm and a set of historical data. Some applications can optimize which parameters are used and the values for them, while others are primarily focused on simply optimizing the values for a given set of parameters. (To learn more about these program derived strategies, see The Power Of Program Trades.)

Important Optimization Tips and Tricks

Curve fitting (over fitting), designing a trading system around historical data rather than identifying repeatable behavior, represents a potential risk for traders using genetic algorithms. Any trading system using GAs should be forward-tested on paper before live usage.

Choosing parameters is an important part of the process, and traders should seek out parameters that correlate to changes in the price of a given security. For example, try out different indicators and see if any seem to correlate with major market turns.

The Bottom Line

Genetic algorithms are unique ways to solve complex problems by harnessing the power of nature. By applying these methods to predicting securities prices, traders can optimize trading rules by identifying the best values to use for each parameter for a given security. However, these algorithms are not the Holy Grail, and traders should be careful to choose the right parameters and not curve fit (over fit). (To read more about the market, check out Listen To The Market, Not Its Pundits.)