Revised Sept 24, 2015

CS 476: Numeric Computation for Financial Modeling


Watch a video introduction to this course on YouTube.

General description

This course provides an overview of modern numerical algorithms used in financial applications.

Logistics

Audience

  • Usually taken in fourth year. Modern finance makes extensive use of sophisticated numerical algorithms for option pricing and hedging, risk management, and portfolio optimization. This course is beneficial for students who are in business related programs or have an interest in financial applications.

Normally available

  • Winter

Related courses

  • Pre-requisites: (AMATH 242/CM 271/CS 371 or CS 370) and STAT 231/241; Not open to General Mathematics students. Students who get a good grade in CS 335 may contact the CS Advisors, who will work with the instructor, to determine if the student can take the course without the formal prerequisites.

For official details, see the UW calendar.

Software/hardware used

  • MatLab

Typical reference(s)

  • R. Seydel, Springer, Tools for Computational Finance, 2012
  • Printed Course Notes

Required preparation

At the start of the course, students should be able to

  • Program in a high-level procedural programming language and use control instructions, such as loops and conditional statements, and simple data structures, such as arrays
  • Perform basic mathematical computations and have knowledge of limits, partial derivatives, Taylor series, matrix computations
  • Perform basic statistical analysis using concepts, such as cumulative distributions and moments of distributions
  • Analyze stability and conditioning of numerical problems

Learning objectives

At the end of the course, students should be able to

  • Explain the principles of no-arbitrage pricing of financial derivatives
  • Perform basic manipulations using stochastic calculus
  • Compute the no-arbitrage price of simple options using lattice, partial differential equation (PDE), and Monte Carlo algorithms
  • Analyse the risk of hedging using a combination of Monte Carlo and PDE techniques
  • Analyse the stability and convergence of PDE methods
  • Compare PDE, Monte Carlo, and lattice methods in terms of the complexity versus error tradeoff

Typical syllabus

Introduction (3 hours)

  • Two state lattice for no-arbitrage option pricing and hedging
  • Modelling asset prices: Brownian motion

Lattice methods (6 hours)

  • Discrete random walk on a lattice
  • Convergence to continuous Brownian motion
  • No-arbitrage lattice methods for pricing European/American option

Black-Scholes equation (3 hours)

  • Basic concepts of stochastic calculus (e.g., Ito's Lemma)
  • Derivation of Black-Scholes partial differential equation
  • Relationship to discrete hedging on a lattice
  • Newton iteration for implied volatility

Stochastic differential equations (9 hours)

  • Basic idea of Monte Carlo option pricing
  • Properties of random number generators, problems in high dimensions, algorithms for normally distributed random numbers
  • Strong vs. weak convergence for SDEs
  • Convergence properties of forward Euler and Milstein methods
  • Brownian Bridge
  • Correlated random numbers

Numerical solution of the Black-Scholes equation (9 hours)

  • Basic finite difference methods
  • Explicit and implicit methods, stability
  • American options
  • Equivalence of lattice and explicit finite difference methods
  • Positive coefficient methods

Dynamic Portfolio optimization (6 hours)

  • Methods for constructing the efficient frontier
  • Formulation as an optimal stochastic control problem
  • Numerical solution of the nonlinear Hamilton Jacobi Bellman PDE