Advanced Finite Difference Method for Quantitative Finance Theory, Applications and Computation

(code FDM)


Click here for course contents.


The goal of this four-day course  is to approximate the solution of partial differential equations (PDEs) by the Finite Difference Method (FDM) with applications to derivative pricing in computational finance. This course is an in-depth introduction from PDE model specification through efficient and accurate finite difference schemes for a range of one-factor and two-factor option pricing problems. The focus is on understanding the financial, mathematical and numerical skills needed in order to set up the discrete system of equations that we can then implement in C++11, for example.

This course is suitable for front-office and middle-office quant developers who wish to learn the finite difference method for computational finance. The contents of the course is also relevant to other disciplines such as science and engineering.


Subjects Covered

  • Specifying financial models as PDEs. Choosing the ‘best’ PDE in a given use case.
  • A range of modern finite difference schemes for one and two-factor problems.
  • Supporting numerical methods (matrix algebra, nonlinear solvers, interpolators).
  • C++11 and library integration.
  • Assembling, running and testing the discrete system of equations.



  • A complete course from PDE through FDM to implementation
  • Modern and popular finite difference methods for finance
  • Get hands-on experience on writing FD schemes A-Z
  • Worked-out C++ code examples to take home


What you learn?

  • The mathematical and numerical foundations of PDE and state-of-art FDM.
  • Applying finite difference methods to computational finance.
  • Setting up algorithms and implementing them in a programming language.
  • Running, testing and stress-testing the finite difference schemes.


What do you receive?

  • Copies of the books “Finite Difference Methods in Financial Engineering” and “Financial Instrument Pricing using C++ with source code, Second Edition” by Daniel J. Duffy. Hard copies of slides in presentation.

We also provide a C++11 software framework (with full source code) that you can use in your work to test your schemes. Of course, you can use other languages such as Python or C#, for example.



We assume basic knowledge of differential equations and finite difference theory. The models and examples in the course are taken from computational finance.

Some skills in arithmetical and algebraic manipulation are useful, especially when assembling systems of discrete equations.

Knowledge of a mathematical typesetting system (ideally, LaTeX) is strongly recommended.


Who should attend?

This course has been developed so that you can use the theory to solve existing problems as well as applying the knowledge to the pricing of new financial instruments. In particular, the course is for professionals with a strong mathematical background:

  • Financial engineers who design new pricing models 
  • Analysts and quants 
  • Other professionals who wish to understand and apply advanced numerical methods to derivatives pricing


Click here for course contents.


Your Trainer

Daniel J. Duffy started the company Datasim in 1987 to promote C++ as a new object-oriented language for developing applications in the roles of developer, architect and requirements analyst to help clients design and analyse software systems for Computer Aided Design (CAD), process control and hardware-software systems, logistics, holography (optical technology) and computational finance. He used a combination of top-down functional decomposition and bottom-up object-oriented programming techniques to create stable and extendible applications (for a discussion, see Duffy 2004 where we have grouped applications into domain categories). Previous to Datasim he worked on engineering applications in oil and gas and semiconductor industries using a range of numerical methods (for example, the finite element method (FEM)) on mainframe and mini-computers.

Daniel Duffy has BA (Mod), MSc and PhD degrees in pure and applied mathematics and has been active in promoting partial differential equation (PDE) and finite difference methods (FDM) for applications in computational finance. He was responsible for the introduction of the Fractional Step (Soviet Splitting) method and the Alternating Direction Explicit (ADE) method in computational finance. He is also the originator of the exponential fitting method for time-dependent partial differential equations.

He is also the originator of two very popular C++ online courses (both C++98 and C++11/14) on in cooperation with Quantnet LLC and Baruch College (CUNY), NYC. He also trains developers and designers around the world. He can be contacted for queries, information and course venues, in-company course and course dates.


Advanced Finite Difference Method for Quantitative Finance Theory, Applications and Computation

Fill in your personal details