ICM177-Programming for Financial Engineering
Module Provider: ICMA Centre
Number of credits: 10 [5 ECTS credits]
Level:7
Terms in which taught: Spring term module
Pre-requisites:
Non-modular pre-requisites:
Co-requisites: ICM127 Stochastic Calculus and Probability
Modules excluded:
Current from: 2020/1
Email: n.elbachir2@icmacentre.ac.uk
Type of module:
Summary module description:
This is a highly practical module. The students will be taught about building efficient programs within the scope of derivatives pricing; assessment will be based on building working code. The programming languages used in the course may vary depending on industry directions. The current focus will be on a combination of C++ and Python.
Aims:
The objective is to introduce the students to programming concepts and their usage for financial models implementation. By the end of the module, students should be able to produce a working and efficient code. 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
- Use classes and objects for pricing derivative securities
Additional outcomes:
Outline content:
To achieve good productivity, the following topics are covered: development, building, debugging, testing, and optimising code. Other tools used are source control with Git. Some widely used open-source libraries are introduced and used throughout the course.
(1) Fundamentals; Pointers, Function Overloading and Operator Overloading
(2) Classes and Objects
(3) Inheritance
(4) Applications in Financial Engineering
p>
Brief description of teaching and learning methods:
The topics are introduced in the lectures which are then followed by assignments and practical workshops.
Autumn | Spring | Summer | |
Lectures | 11 | ||
Practicals classes and workshops | 11 | ||
Guided independent study: | |||
Wider reading (independent) | 10 | ||
Advance preparation for classes | 5 | ||
Other | 15 | ||
Carry-out research project | 48 | ||
Total hours by term | 0 | 100 | 0 |
Total hours for module | 100 |
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
6 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, individual project to be submitted in August/September (counts for 100% of the final mark).
Additional Costs (specified where applicable):
Required text books:
- Mark Joshi: C++ Design Patterns and Derivatives Pricing (Mathematics, Finance and Risk) Cambridge University Press, 2008, ISBN-10: 0521721628, £54.99.
- Yves Hilpisch: Python for Finance: Mastering Data-Driven Finance, 2nd edition, O’reilly, expected December 2018, ISBN-10: 1492024333
- Yves Hilpisch: Derivatives Analytics with Python, Wiley 2015, ISBN-10: 9781119037996
Last updated: 8 April 2020
THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.