- Department: Mathematics
- Credit value: 20 credits
- Credit level: M
- Academic year of delivery: 2023-24
- See module specification for other years: 2024-25
This module covers a number of computational methods appropriate to finance, such as tree, finite difference, and Monte Carlo simulation approaches. Computational techniques are developed in a risk management or derivatives pricing context, alongside Python programming skills.
Pre-requisite modules
Co-requisite modules
- None
Prohibited combinations
- None
Prerequisites are Mathematical Methods of Finance OR Mathematical Finance in Discrete Time for 2024/25.
This module has no formal prerequisites for MSc students taking it as a core module. Elective / MSc students should have a basic probability and statistics and linear algebra. Familiarity with stochastic processes and mathematical finance would be beneficial but not as important as a willingness to learn new material in the context of the techniques studied in the module.
The module is suitable for students who are new to programming.
Occurrence | Teaching period |
---|---|
A | Semester 2 2023-24 |
This module covers a number of computational methods appropriate to finance, such as tree, finite difference, and Monte Carlo simulation approaches. Computational techniques are developed in a risk management or derivatives pricing context, alongside Python programming skills.
By the end of the module, students will be able to:
Construct trees to approximate continuous time stochastic processes described by stochastic differential equations in order to solve problems arising in finance.
Implement finite difference schemes to solve ordinary and partial differential equations arising in finance.
Implement efficient Monte Carlo simulation schemes in the context of financial applications.
Critically evaluate the appropriateness and effectiveness of computational techniques in specific financial applications.
Use Python effectively as a computing language for implementing a range of numerical techniques relevant to finance.
The following topics will be covered:
Brief introduction to quantitative finance and stochastic calculus from an applied point of view.
Binomial and trinomial tree methods for approximating continuous time stochastic processes in finance.
Finite difference schemes, including explicit, implicit and Crank-Nicolson schemes, for solving partial differential equations in the context of financial applications.
Monte Carlo simulation schemes, including generating random numbers from certain distributions, discretizing and simulating stochastic differential equations and a number of variance reduction techniques, such as antithetic variates, control variates and importance sampling.
Use of these approaches to solve problems in a financial setting, for example, computing the prices and hedge ratios of options in the Black-Scholes model.
Python programming skills will be developed alongside the computational techniques. Python will be used to implement the methods listed above. Other techniques relevant to finance, such as root finding, calibration methods and Fourier based methods, will be used to illustrate facets of Python programming in a financial context.
Task | % of module mark |
---|---|
Essay/coursework | 90 |
Essay/coursework | 10 |
None
If a student has a failing module mark, only failed components need to be reassessed
Task | % of module mark |
---|---|
Essay/coursework | 90 |
Essay/coursework | 10 |
Current Department policy on feedback is available in the student handbook. Coursework and examinations will be marked and returned in accordance with this policy.
Y. Hilpisch: Python for Finance: Mastering Data-Driven Finance, O’Reilly 2019.
A. Hirsa: Computational Methods in Finance, Chapman & Hall/CRC Financial Mathematics Series, 2012.
R. U. Seydel: Tools for Computational Finance, Springer, 2009.
E. Smith: Introduction to the Tools of Scientific Computing, Springer 2020.