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 ﬁnd 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 proﬁtable 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 proﬁtable

trading rules, this work is further discussed in section 4. Here,

our aims are twofold: to develop a system that trades proﬁtably

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 proﬁt?’ being

driven by the implications for market efﬁciency. Here we

ask the questions: ‘can a technical trader consistently make a

proﬁt?’ 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 brieﬂy 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

speciﬁcations 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 ﬁnd 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 ﬁttest’ fashion

by evolving a set of potential solutions until the most superior

ones come to dominate. GAs are highly efﬁcient 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

ﬁnite 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 ﬁnite when parameters take only discrete values

to yield a binary representation as a string of ﬁxed length.

Secondly, there needs to be a means of evaluating the ﬁtness

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 ﬁtness could

be viewed as the proﬁtability 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 ﬁrst on the

initial population. The initial population is usually generated

by randomly sampling a number of potential solutions from

398