Building and Validating FFT Methods for Option Pricing
Summary
The document seeks a practical path for implementing a Fast Fourier Transform option pricer as an algorithms project. It considers starting with Cooley–Tukey or another straightforward FFT, and choosing between Black–Scholes and more advanced models such as Heston. The proposed progression is to first price Black–Scholes options with an FFT and compare results to the closed-form price, using the comparison to study convergence and boundary behavior across strikes.
It then suggests advancing to Heston without correlation, comparing FFT output with quadrature methods, and later trying correlated Heston or a Levy model such as Variance Gamma, with a PDE implementation as another benchmark. The emphasis is on understanding accuracy, limits, and comparative strengths rather than speed. These are recommendations from forum replies, not a worked implementation or reported experiment; the document gives no parameter choices or measured results, and the best method depends on the project’s aims.
Key ideas
- Begin with Black–Scholes so FFT prices can be checked against a closed-form benchmark.
- Use comparisons to study convergence and behavior at extreme strikes.
- Progress to Heston without correlation and compare FFT with numerical quadrature.
- Explore correlated Heston or a Levy model and compare against a PDE approach.
- Assess pricing algorithms by accuracy, limits, and performance relative to alternatives.
Tags
Full text
# Implementing a Fast Fourier Transform for Option Pricing # Implementing a Fast Fourier Transform for Option Pricing So, I'm in need of some tips regarding a small project I'm doing. My goal is an implementation of a Fast Fourier Transform algorithm (FFT) which can be applied to the pricing of options. First concerns: -which FFT, there are a lot of differents Algorithms, which can be called FFT, the most famous one being Cooley-Tukey I guess. My thoughts on this: I prefer the most simple one, since this is no thesis or a big project, just a course on Algorithms. But it has to be compatible with option pricing (in contrast with the most -well in our general literature- referenced application of images/sound processing). So it depends on the form of input that is provided (on which I need some advice). I'm familiar with the several improvements, like a Fractional FFT, mixed radix FFT etc. But these seem pretty complex and optimization/performance driven, which is not relevant for my project. -which Pricing model: I Guess Black Scholes is a bit too 'flat' and I am aware of the several models that emerged after BS. So with the same objectives as stated above I'd initially prefer the Heston model. There are a lot of considerations, and truth is I just can't see the wood for the trees. Some background info: My background is a B.Sc in Mathematics (Theoretical), so I have some understanding of fourier transforms. Goal is a working FFT implementation for caclulating option pricing. (!)It does not have to be the fastest (no extreme optimization). Goals are trying to understand the chosen FFT and having a real-world working application. So could you give some advice on the choices? I've read a lot of papers on FFT + Option pricing, say all the decent hits on googles first few pages. But those studies were written with a much 'higher' cause. ## Answer by mepuzza (score 9, accepted) https://quant.stackexchange.com/a/3454 I would say - Start with Black Scholes to look at accuracy. In particular, you have a closed formula and you know what the characteristic function for lognormal is. Running FFT and comparing FFT pricing with the closed formula will give you an idea of what are the convergence issues, what is the behaviour at the boundaries (extreme strikes) etcetera. - Then step forward to Heston with no correlation. In this case many people don't even bother with FFT but use Gauss-Legendre (or Gauss-Hermite or Gauss-Lobatto). Again, running FFT versus these alternative methods will teach you some lessons about convergence etcetera. - Finally try Heston with correlation and some simple Levy model like Variance Gamma for example and compare with a PDE implementation. In my opinion a pricing algorithm is worth talking about only if it is superior to all the others. That's why if I look at an algorithm the first think I want to know is how it compares with the others, what are its limits and its strenghts. ## Answer by nkhuyu (score 2) https://quant.stackexchange.com/a/7439 This note may be helpful you. Especially, chapter 4 in the note covered the FFT method for option pricing, the author also gave the algorithm and MATLAB code. ## Answer by pyCthon (score 1) https://quant.stackexchange.com/a/7442 This is public knowledge what you need is a good book on how option strategies are built and used... Heres some good starting points/books in which you can get a good framework to start building and applying your FFT option pricing method of choice The volatility surface Options futures and other Derivatives Options Volatility and Pricing ## Answer by jaehyukchoi49 (score 1) https://quant.stackexchange.com/a/71156 I found this jupyter notebook on Github extremely helpful for applying Fourier transform methods to option pricing. Python code is all available.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.