Skip to main content

Financial Modelling and Data Science

Overview

  • Credit value: 30 credits at Level 7
  • Tutor: Dr Brad Baxter
  • Assessment: coursework (20%) and a three-hour examination (80%)

Module description

In this module we introduce you to the main mathematical and numerical techniques used in quantitative finance. The module is divided into three parts:

  • Stochastic Processes for Finance
  • Theoretical Numerical Methods for Finance
  • Programming in C++

You will also become acquainted with suitable languages and computer packages for financial applications (C++ and Matlab).

Learning objectives

By the end of this module, you should:

a) Stochastic Processes for Finance

  • understand the basic concepts of stochastic calculus, in particular Brownian motion and stochastic integrals
  • understand Ito calculus and its applications to stochastic differential equations (SDEs)
  • understand the numerical solution of an SDE
  • be able to appreciate the connections between probability theory and partial differential equations via the Feynman-Kac formula

b) Theoretical Numerical Methods for Finance

  • be able to solve SDEs using Monte Carlo simulation
  • understand the fundamental algorithms for the numerical solution of parabolic partial differential equations (PDEs)
  • understand the binomial method for option pricing as a finite difference method, particularly its disadvantages
  • be able to appreciate the importance of stability in numerical algorithms for PDEs
  • understand numerical methods for the solution of nonlinear equations and some basic optimization techniques
  • know the basics of relevant numerical methods, eg data fitting
  • be able to illustrate the above by examples and exercises in Matlab

c) Programming in C++

  • understand the language fundamentals of C and C++
  • be able to use arrays, dynamic memory allocation and data input/output
  • understand and be able to construct classes, illustrated by classes for complex numbers and matrix algebra
  • be able to use numerical libraries.