M A H Dempster and C M Jones QUANTITATIVE F INANCE
presented a system-based approach, but here the emphasis
is on a broad-based system that encompasses data-capture
and storage through to bookkeeping, as opposed to a trading
system per se. Furthermore, there has been little attention
paid to systematic adaptation within trading systems (with the
exception of Moody et al (1997)) despite the degree to which
systematic traders constantly change their rules. In this paper
we focus on system construction and consider adaptation.
Also, for realism, we use intraday data in this work. The
consideration of such data is particularly useful when analysing
returns of technical trading rules; many traders apply rules at
intraday frequencies
3
and of those traders who only analyse
daily data for entry signals, many will use intraday data for
trade exit, especially when stops
4
are placed in the market.
Thus, the use of intraday data adds realism when analysing
trading rules.
Other work in this area includes Levitt (in Refenes (1995))
who has proposed using the method of genetic-based global
learning in a FX trading system. Here, genetic algorithms are
used to attempt to find the best combination indicators (out
of the moving average crossover and a more complex moving
average-based indictor—the ADX) for prediction and trading.
Results are shown to be profitable but are reported in too little
detail for objective scrutiny.
Dunis et al (in Dunis and Zhou (1998)) have developed
a FX trading system that uses genetic algorithms to optimize
parameters (in the style of Colin in Deboeck (1994)) for a
simple technical trading indicator—the RSI. This work has
considerable merit since intraday data are used. However, the
study considers a period of only 129 days and so results are
far from conclusive. It is noted that the ultimate aim of such a
project would be to create a system based on an ensemble of
indicators—a task we attempt below.
In this paper, we introduce a framework for systematic
trading system construction and adaptation, based on genetic
algorithms (GAs)—in fact, genetic programmes (GPs).
Previously, Neely et al (1997) and Allen and Karjalainen
(1999) have used genetic programming to discover profitable
trading rules, this work is further discussed in section 4. Here,
our aims are twofold: to develop a system that trades profitably
and to emulate the behaviour of a technical trader who adapts
to the market. Previously, academics have asked the question
‘can technical trading rules consistently make a profit?’ being
driven by the implications for market efficiency. Here we
ask the questions: ‘can a technical trader consistently make a
profit?’ and ‘should a technical trader or trading system adapt
to market conditions or is it better to use a static system?’ The
work that follows provides at least some provisional answers,
which are further investigated in Dempster and Jones (2000)
and Dempster et al (2000).
The paper is laid out as follows. Sections 2 and 3
respectively introduce briefly the concepts of GAs and GPs
3
As a whole, the operations of intraday FX traders account for 75% of FX
market volume (Bank of International Settlements 1998).
4
A stop is a predetermined price level at which the trader will exit the trade.
A stop that is placed in such a way that a trade is exited after the price moves
down a set amount from the maximum price attained during the trade (and
similarly mutatis mutandis for short trades) is known as a trailing stop (see
Schwager (1996) and James and Thomas (1998)).
and describe the GBP/USD data used. The trading system
developed is described in section 4, while the details of the
genetic programme utilized are given in section 5. Section
6 contains our trading results for both static and dynamic
trading strategies. Conclusions are drawn and current research
described in section 7 and an appendix contains precise
specifications of the six technical indicators used in this study.
2. Genetic algorithms and genetic
programming
Genetic algorithms, initially developed by Holland (1992,
revised reprint of his 1975 PhD thesis, see also Holland (1976,
1980, 1986)), are iterative systems that aim to find near-optimal
solutions to multi-extremal problems by imitating the process
of evolution. GAs are search algorithms that differ from more
standard search algorithms in that the search is conducted using
a population of structures rather than a direction or single
structure. GAs consider many structures as potential candidate
solutions and work with a high level of global sampling of the
search space which increases the probability of convergence
to a global optimum. Although convergence to the global
optimum is not guaranteed, GAs are quite robust in producing
near-optimal solutions to a wide range of problems including
problems with high levels of uncertainty and problems which
are not easily reduced to a precise mathematical formulation.
The search is carried out in a ‘survival of the fittest’ fashion
by evolving a set of potential solutions until the most superior
ones come to dominate. GAs are highly efficient in searching
large spaces for attractive solutions to complex problems and
so would seem well suited to trading rule selection using a
large search space of rules tested over a considerable number
of time series data.
The starting point in using GAs to solve a problem is
to represent the problem in a way that a GA can work with.
This often amounts to representing the solution space as a
finite number of strings of binary digits. Binary strings are
an effective form of representation since complex statements
of Boolean logic as well as numerical values of parameters can
be represented in this form, e.g. the statement
IF (Function 1 evaluated at Frequency 1) = TRUE
AND (Function 2 evaluated at Frequency 2) = TRUE
THEN Buy US T-Bond Futures
can be easily expressed as a binary string. The resulting
search space is finite when parameters take only discrete values
to yield a binary representation as a string of fixed length.
Secondly, there needs to be a means of evaluating the fitness
of the constituents of the solution space, i.e. the suitability
of each potential solution, for how well they perform. For
example, in the case of selecting trading rules the fitness could
be viewed as the profitability of the rule tested over a time
series of historical price data. Finally, an initial population
of suitable solutions needs to be generated. The population
is the subset of the solution space on which the GA operates
at any one time step and in each trial it operates first on the
initial population. The initial population is usually generated
by randomly sampling a number of potential solutions from
398