Monday, November 14, 2011

Genetic Programming Performance

There is a whole lot of literature on the subject of genetic and evolutionary algorithms for trading strategies. The quality of the work seems to vary considerably. I have yet to discover the canonical and seminal lines of work in the field. Unlike in programming languages research and perhaps other scientific fields, the bibliographies do not all follow the same chain of citations. Or perhaps they do, but I have yet to discover it. More on this after the jump.

One author from Taiwan's Cheng Chi (Government and Politics) University, Shu-Heng Chen, seems to be quite prolific in an area called agent-based economic modeling. He has a paper showing that genetic programming better than random strategy construction but only barely [PDF]. The conclusion is that genetic programming discovers only very basic programs. The strategy grammar that this paper studies is quite simple. The only control construct is an if-conditional. This line of work got into the Handbook of Financial Engineering.

Michael Dempster out of Cambridge has a fairly well cited paper on "A real-time adaptive trading system using genetic programming" [PDF] where he demonstrates that too much adaptability may be loss-making, trading on any individual technical signal would also be, but picking the best strategy that works on a combination of signals is modestly profitable.

A more recent paper studies accurate price modeling by fuzzy neural networks (a variant called Takagi-Sugeno-Kang) [PDF], which is apparently a fairly widely studied technique for automated trading. This work only studies the modeling of two individual securities, SGX and WFC. It claims to have much better returns (in terms of minimizing the mean-squared-error) over other fuzzy neural network techniques. Another using similar technology, fuzzy logic and evolutionary algorithms [PDF] claims very good results. Ghandar et al has a paper [PDF] on evolutionary algorithms and fuzzy logic rules for portfolio management. Among other metrics, they use one called information performance rank (aka appraisal ratio). They claim that their evolutionary algorithm performs well in term of appraisal ratio as well as Sharpe ratio, alpha, and returns.

Looking up different papers on genetic algorithms for trading strategies led to to ask the question: how can one rigorously evaluate these techniques. There are certainly metrics such as the Sharpe ratio, annualized returns, and various volatility measures, but what is the correct benchmark? In the Chen et al paper, the baseline was zero-knowledge strategy creation, but that only gives a very low bar baseline. What is the best a strategy can do? A strategy can maximize either the Sharpe ratio or annualized returns. To benchmark strategies, one needs both the random baseline and an optimal benchmark. There are a lot of possibilities for optimal too. Apart from Sharpe ratio optimization, one can optimize portfolio construction or single security/index. There might be distinct online and offline optimality. Buy-and-hold is a frequently used benchmark, but for high-frequency applications, that does not make as much sense. I found a couple of papers on optimal strategies. One paper develops optimal strategies w.r.t. Sharpe ratio [PDF]. Another optimal strategy using Monte Carlo method [PDF] primarily in the context of portfolio construction. The underlying model assumption for the latter paper is a variant on Wiener process called Ornstein-Uhlenbeck, which is supposed to have an analytic optimal trading solution.

It is interesting that most of the work in the area (except the first) relies on technical analysis alone. That is probably reasonable except for the fact that most do not test for the existence of autocorrelation in the time series being experimented upon. In fact, in the above sampling of papers, no two papers use the same time series for experiments.

This is a follow-up to a previous post on GP.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.