ICM112-C++ for Financial Engineering

Module Provider: ICMA Centre
Number of credits: 10 [5 ECTS credits]
Terms in which taught: Spring term module
Non-modular pre-requisites:
Co-requisites: ICM103 Quantitative Methods for Finance
Modules excluded:
Current from: 2018/9

Module Convenor: Dr Naoufel El Bachir

Email: naoufel.elbachir@reading.ac.uk

Type of module:

Summary module description:

This is a highly practical module. The students will be taught about building efficient C++ programs within the scope of derivatives pricing; assessment will be based on building a working C++ code.


The objective is to introduce the students to the C++ language and its usage for financial models implementation. The aim is to quickly reach a stage where students can produce a working and efficient code at the expense of a detailed presentation of the language. The focus is on using the more straightforward and most widely used features of C++. Special emphasis is placed on coding style and some essential software engineering principles are introduced. To achieve good productivity, the following topics are covered: development, building, debugging, testing, and optimising code in the Visual Studio environment. Other tools used are Excel interfacing and source control with Subversion (svn). Some facilities from the standard template library (STL) and Boost library are also used.

Assessable learning outcomes:
By the end of the module, it is expected that students will be able to:

  • Design and construct simple pricing applications in C++
  • Use classes and objects for pricing derivative securities
  • Apply templates and the inheritance property
  • Use Excel as interface for C++ programs

Additional outcomes:

Outline content:
1) Fundamentals; Pointers, Function Overloading and Operator Overloading
(2) Classes and Objects
(3) Inheritance [point initially numbered 4 removed]
(4) Interactions with Excel
(5) Applications in Financial Engineering

Brief description of teaching and learning methods:

The topics are introduced in the lectures which are then followed by assignments and practical workshops. Via the assignments and throughout the practical workshops students will be expected to build and use specially designed Excel spreadsheets.

Contact hours:
  Autumn Spring Summer
Lectures 11
Practicals classes and workshops 11
Guided independent study 78
Total hours by term 100.00
Total hours for module 100.00

Summative Assessment Methods:
Method Percentage
Written assignment including essay 30
Project output other than dissertation 70

Summative assessment- Examinations:

Summative assessment- Coursework and in-class tests:

1 group project, to be submitted in week 3 of Summer term

4 individual assignments

Formative assessment methods:

Penalties for late submission:
Penalties for late submission on this module are in accordance with the University policy. Please refer to page 5 of the Postgraduate Guide to Assessment for further information: http://www.reading.ac.uk/internal/exams/student/exa-guidePG.aspx

Assessment requirements for a pass:
50% weighted average mark

Reassessment arrangements:

As part of the overall examination arrangements for the MSc programme, to be submitted in August/September (the re-submitted project counts for 100% of the final mark).

Additional Costs (specified where applicable):
1) Required text books: 1. Bjarne Stroustrup: Programming: Principles and Practice Using C++ Addison Wesley, 2014, ISBN-10: 0321992784, £42.29.
2. Mark Joshi: C++ Design Patterns and Derivatives Pricing (Mathematics, Finance and Risk) Cambridge University Press, 2008, ISBN-10: 0521721628, £54.99.
2) Specialist equipment or materials:
3) Specialist clothing, footwear or headgear:
4) Printing and binding:
5) Computers and devices with a particular specification:
6) Travel, accommodation and subsistence:

Last updated: 15 August 2018


Things to do now