CS983 – Evolutionary Computation For Finance 1

Credits 10
Level 5
Semester 2
Prerequisites N/A
Availability Available only to MSc Quantitative Finance, MSc Fintech, MSc Data Analytics students
Contact Lectures: 5 | Labs: 15 | Homework / Private Study: 80
Assessment Individual assignments (50%), and a one-hour examination
Resit By examination (1-hour)
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, genetic programming and neural networks in particular) – to a range of financial applications such as forecasting and portfolio optimisation.

The course is very practical in its nature: much of the learning is achieved via a number (around 3) of assessed 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 class 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, and also neural networks.
  • Understand how the computation approaches covered in the class may be applied 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
  • 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
  • Principals of basic neural networks
  • Forecasting and Prediction – This topic looks at how it is possible to use genetic programming and/or neural networks to generate predictive functions for time-series data.

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.