CS971 – Evolutionary Computation For Finance

Credits 20
Level 5
Semester 2
Prerequisites N/A
Availability Available only to MSc Quantitative Finance students
Contact Lectures: 16 | Tutorials: 0 | Labs: 20 Assignments: 80 | Self study: 84
Assessment 100% coursework. The assessment will comprise four individual assignments.
Resit TBC
Lecturer Dr Marc Roper

General Aims

This class aims to provide an overview of the application of evolutionary computation techniques – those which mimic natural evolutionary processes (genetic algorithms and genetic programming in particular) – to a range of financial applications such as forecasting, portfolio optimisation and algorithmic trading.

The course is very practical in its nature: it is assessed entirely by a set of small mini-projects, and students are expected to develop solutions to problems using evolutionary computation techniques, evaluate these on real data sets, and compare them with other more traditional approaches. Consequently, a large amount of self-directed study and learning is expected.

Learning Outcomes

After completing this module participants will be able to:

  • Understand the benefits and opportunities for evolutionary computing in the context of financial applications
  • Understand the principles of evolutionary computation: genetic programming and genetic algorithms in particular
  • Discuss the application of EC tools to financial problem solving and understand their limitations
  • Develop and evaluate practical solutions to finance-based problems.


  • Programming using R (Students will have some familiarity with R, typically from a statistic point of view, but this initial section looks at its use as a programming language)
  • Principles of genetic algorithms and genetic programming
  • Forecasting and Prediction – This topic looks at how it is possible to use genetic programming to generate predictive functions for time-series data.
  • Portfolio Optimisation – This topic looks at how you can use evolutionary algorithms, and GAs in particular, to develop an optimal portfolio – a balanced set of investments that will yield the best return for the least risk.
  • Algorithmic Trading – Algorithmic trading is a very broad area which sees the application of both GAs and GP (and sometimes both) to a wide variety of trading-related problems.
  • Self-Selected Topic – The purpose of this final topic is to let you choose and explore some area of interest, carry out some practical investigations into the area, and produce a report which discusses your findings.

Recommended Text/Reading

The class lecturer will recommend a mixture of specific and generic references for each part of the course. Where possible, free online material will be recommended.