Thalesian Webinar: Daniel J. Duffy: PDEs and FDM for Computational Finance

Daniel Duffy

C++ author, trainer
Joined
10/4/07
Messages
10,436
Points
648
25 August 2021



Thalesians

Partial Differential Equations (PDEs) and Finite Difference Method (FDM) for Computational Finance

Daniel J. Duffy, Datasim



In this talk we give an overview of the numerical solution of PDEs using finite difference methods. We focus on one-factor and two-factor PDEs and their applications to computational finance. In particular, we discuss the Black Scholes equation and its applications to equity, fixed income and hybrid models. Some common use cases between these models are:

. Option pricing and option sensitivities (“Greeks”).

. Early exercise features (American options).

. Calibration (Kolmogorov, Fokker-Planck PDE).

. The relationship between stochastic calculus and PDEs.



We address these use cases by modelling them as PDEs and subsequent approximation by various finite difference schemes that are unambiguously expressed in algorithmic form. We use a number of well-known schemes in finance as well as schemes that are less known in finance but which are nonetheless popular in other disciplines. We also some original schemes as developed in Duffy (2021):



. Crank Nicolson and extrapolation methods.

. Alternating Direction Explicit (ADE).

. Splitting Methods.

. Method of Lines (MOL).

. Front-fixing and variational methods.

. Some original results based on my research work.



We give guidelines on which scheme is optimal (in terms of accuracy, applicability, robustness and maintainability) for a given problem in computational finance.

We conclude the talk with a discussion of pricing a two-factor model with early exercise features in order to trace the steps from PDE specification through FDM algorithms and their design in C++.


This talk is aimed at a wide audience, but it should be of particular interest to MSc and MFE students as well as quants in computational finance. In particular, there are opportunities for new research projects and applications to production systems.



Reference

Duffy, Daniel J. (2021) NUMERICAL METHODS IN COMPUTATIONAL FINANCE A Partial Differential Equation (PDE/FDM) Approach (John Wiley & Sons).

(to appear November2021)



Daniel Duffy has a PhD in Mathematics from the University of Dublin (Trinity College).
 
Last edited:
Why isn't there any exercises in the book?
Also, is there a GitHub repository related to the book?
 
Why isn't there any exercises in the book?
Also, is there a GitHub repository related to the book?
I decided not to in that book. (and a common problem is hacking of my work, so no way José),
ON THE OTHER hand, purchasers of my books who request code will receive it.
Exercises are in my 2018 C++ book and most of the code is there are well. So, with that code and some grafting it is very doable.
I have published so much stuff that it should be possible to

1. Adapt the PDE to your cases.
2. Program it up.

My MSc students work like that. They prefer to code it up themselves.


That's the business model as it were.
 
Last edited:
One more thing ... the publisher has stopped with CDs and code on their site (w/o informing me).
 
I decided not to in that book. (and a common problem is hacking of my work, so no way José),
ON THE OTHER hand, purchasers of my books who request code will receive it.
Exercises are in my 2018 C++ book and most of the code is there are well. So, with that code and some grafting it is very doable.
I have published so much stuff that it should be possible to

1. Adapt the PDE to your cases.
2. Program it up.

My MSc students work like that. They prefer to code it up themselves.


That's the business model as it were.
I'm sorry to hear that. It would have been helpful for those who are self-studying it.

(Although I'm not sure what you mean by "hacking" your work.)

I'm considering ordering your 2022 book from Amazon. I would like to receive the C++ code, so should I send a screenshot of the receipt (please send me your email address)? However, I won't include my real name or address. That's for sure; it's my private data.
 
I dislike the publisher "Wiley" a lot for many reasons—it's very amateurish.
 
I'm sorry to hear that. It would have been helpful for those who are self-studying it.

(Although I'm not sure what you mean by "hacking" your work.)

I'm considering ordering your 2022 book from Amazon. I would like to receive the C++ code, so should I send a screenshot of the receipt (please send me your email address)? However, I won't include my real name or address. That's for sure; it's my private data.

I'm sorry to hear that. It would have been helpful for those who are self-studying it.

(Although I'm not sure what you mean by "hacking" your work.)

I'm considering ordering your 2022 book from Amazon. I would like to receive the C++ code, so should I send a screenshot of the receipt (please send me your email address)? However, I won't include my real name or address. That's for sure; it's my private data.
The kids have to eat. It doesn't grow on trees.
I'm not Mother Theresa.

Seriously, if you want C++ code, I provide it for purchasers of my 2018 C++ book.
My 2022 is maths/numerics and not a C++ book. The book does not state that I supply code. The terms and conditions are in the Preface, page xix.
 
Last edited:
I dislike the publisher "Wiley" a lot for many reasons—it's very amateurish.
What are your dislikes, precisely? Or just a feeling?
Wiley is one of the best publishers around in my opinion.. I published > 10 books with them.
 
What are your dislikes, precisely? Or just a feeling?
Wiley is one of the best publishers around in my opinion.. I published > 10 books with them.
E.g. sometimes a book will refer to publisher's (Wiley's) website for some materiale, but there are no where to be found.
 
The kids have to eat. It doesn't grow on trees.
I'm not Mother Theresa.

Seriously, if you want C++ code, I provide it for purchasers of my 2018 C++ book.
My 2022 is maths/numerics and not a C++ book. The book does not state that I supply code. The terms and conditions are in the Preface, page xix.
Regarding "I provide it for purchasers of my 2018 C++ book.": How? You mean in codes is in the book? Why not create a GitHub repository for the book with code, errata etc.?
 
Regarding "I provide it for purchasers of my 2018 C++ book.": How? You mean in codes is in the book? Why not create a GitHub repository for the book with code, errata etc.?
This discussion is going nowhere.
Again, the terms and conditions are in the book's preface.
No one is forcing your to buy a a book from a publisher you don't like.

Your are stating to repeat yourself. see my post of 4/23/23 where I explained it all to you.
 
Last edited:
Hi @Daniel Duffy

I have completed my first-year studies in an MFE in a tier-2 program.

I am interested in the following courses and have also gone through the course content.
- C++ Programming for Financial Engineering
- Advanced C++ and Modern Design
-The Finite Difference Method (FDM) for Ordinary, Partial and Stochastic Differential Equations
- Applied Numerical Methods
- Computational and Quantitative Finance in C++

my question in what particular order do I need to go through your courses?

What is the estimated time(guess) one might take to finish your courses?

Thank you.
 
Hi @Daniel Duffy

I have completed my first-year studies in an MFE in a tier-2 program.

I am interested in the following courses and have also gone through the course content.
- C++ Programming for Financial Engineering
- Advanced C++ and Modern Design
-The Finite Difference Method (FDM) for Ordinary, Partial and Stochastic Differential Equations
- Applied Numerical Methods
- Computational and Quantitative Finance in C++

my question in what particular order do I need to go through your courses?

What is the estimated time(guess) one might take to finish your courses?

Thank you.
Woohoo love to see it! Enjoy!
 
Hi @Daniel Duffy

I have completed my first-year studies in an MFE in a tier-2 program.

I am interested in the following courses and have also gone through the course content.
- C++ Programming for Financial Engineering
- Advanced C++ and Modern Design
-The Finite Difference Method (FDM) for Ordinary, Partial and Stochastic Differential Equations
- Applied Numerical Methods
- Computational and Quantitative Finance in C++

my question in what particular order do I need to go through your courses?

What is the estimated time(guess) one might take to finish your courses?

Thank you.
That's a big list!
I don't know what your precise background is, but I recommmend

1. Quantnet C++ (16 weeks)
2. My ODE/PDE course (3-4 months)


for starters.
 
Back
Top Bottom