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: 2019/0

Module Convenor: Dr Naoufel El Bachir

Email: n.elbachir2@icmacentre.ac.uk

Type of module:

Summary module description:

This is a practical module. The students will be taught about building C++ programs using sound design principles 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. By the end of the module, students should be able to produce a working and efficient code. 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.

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

Additional outcomes:

Outline content:

To achieve good productivity, the following topics are covered: development, building, debugging, testing, and optimising code in the Visual Studio environment. Some facilities from the standard template library (STL) are also used.

1) Fundamentals; Pointers, Function Overloading and Operator Overloading

(2) Classes and Objects

(3) Inheritance

(4) 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.

Contact hours:
  Autumn Spring Summer
Lectures 11
Practicals classes and workshops 11
Guided independent study:      
    Wider reading (independent) 20
    Preparation of practical report 58
Total hours by term 0 100 0
Total hours for module 100

Summative Assessment Methods:
Method Percentage
Project output other than dissertation 70
Set exercise 30

Summative assessment- Examinations:

1 Final take-home group project

Summative assessment- Coursework and in-class tests:

3 take-home programming assignments during the term

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) 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: 8 April 2019


Things to do now