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.

• 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.

• 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

David R. Cheriton School of Computer Science
University of Waterloo