Accessibility statement

Computational Finance with Python - MAT00113M

« Back to module search

  • Department: Mathematics
  • Module co-ordinator: Dr. Alet Roux
  • Credit value: 20 credits
  • Credit level: M
  • Academic year of delivery: 2024-25
    • See module specification for other years: 2023-24

Module summary

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.

Related modules

Co-requisite modules

  • None

Prohibited combinations

  • None

Additional information

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.

Module will run

Occurrence Teaching period
A Semester 2 2024-25

Module aims

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.

Module learning outcomes

By the end of the module, students will be able to:

  1. Construct trees to approximate continuous time stochastic processes described by stochastic differential equations in order to solve problems arising in finance.

  2. Implement finite difference schemes to solve ordinary and partial differential equations arising in finance.

  3. Implement efficient Monte Carlo simulation schemes in the context of financial applications.

  4. Critically evaluate the appropriateness and effectiveness of computational techniques in specific financial applications.

  5. Use Python effectively as a computing language for implementing a range of numerical techniques relevant to finance.

Module content

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.

Assessment

Task Length % of module mark
Essay/coursework
Essay : Summative coursework assignment
N/A 90
Essay/coursework
Other assessment : Time-limited computer-based assessment
N/A 10

Special assessment rules

None

Additional assessment information

If a student has a failing module mark, only failed components need to be reassessed

Reassessment

Task Length % of module mark
Essay/coursework
Essay : Summative coursework assignment
N/A 90
Essay/coursework
Other assessment : Time-limited computer-based assessment
N/A 10

Module feedback

Current Department policy on feedback is available in the student handbook. Coursework and examinations will be marked and returned in accordance with this policy.

Indicative reading

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.



The information on this page is indicative of the module that is currently on offer. The University is constantly exploring ways to enhance and improve its degree programmes and therefore reserves the right to make variations to the content and method of delivery of modules, and to discontinue modules, if such action is reasonably considered to be necessary by the University. Where appropriate, the University will notify and consult with affected students in advance about any changes that are required in line with the University's policy on the Approval of Modifications to Existing Taught Programmes of Study.