8.3 Option Pricing with FFT
In the last section, three asset price models and their
characteristic functions were presented. In this section, we
describe a numerical approach for pricing options which utilizes
the characteristic function of the underlying instrument's price
process. The approach has been introduced by
Carr and Madan (1999) and is based on the FFT. The use of the
FFT is motivated by two reasons. On the one hand, the algorithm
offers a speed advantage. This effect is even boosted by the
possibility of the pricing algorithm to calculate prices for a
whole range of strikes. On the other hand, the cf of the log price
is known and has a simple form for many models considered in
literature, while the density is often not known in closed
form.
The approach assumes that the cf of the log-price is given
analytically. The basic idea of the method is to develop an
analytic expression for the Fourier transform of the option price
and to get the price by Fourier inversion. As the Fourier
transform and its inversion work for square-integrable functions
(see Plancherel's theorem, e.g. in Rudin, 1991) we do not consider directly the option price but a modification of
it.
Let
denote the price of a European call option with
maturity
and strike
:
where
is the risk-neutral density of
. The function
is not square-integrable because
converges to
for
. Hence, we consider a modified function:
which is square-integrable for a suitable
. The choice of
may depend on the model for
. The Fourier
transform of
is defined by:
The expression for
can be computed directly after an
interchange of integrals:
where
is the Fourier transform of
. A sufficient
condition for
to be square-integrable is given by
being finite. This is equivalent to
A value
fulfills this condition for the models of
Section 8.2. With this choice, we follow Schoutens et al. (2003) who found in an empirical study that this value leads to stable algorithms, i.e. the prices are well replicated for many model parameters.
Now, we get the desired option price in terms of
using
Fourier inversion
This integral can be computed numerically as:
where
, and
is the
distance between the points of the integration grid.
Lee (2004) has developed bounds for the sampling and
truncation errors of this approximation. Formula (8.14)
suggests to calculate the prices using the FFT, which is an
efficient algorithm for computing the sums
To see why this is the case see Example 1 below, which illustrates the basic idea of the FFT.
In general, the strikes near the
spot price are of interest because such options are traded most
frequently. We consider thus an equidistant spacing of the
log-strikes around the log spot price
:
where
denotes the distance between the log strikes.
Substituting these log-strikes yields for
:
Now, the FFT can be applied to
for  |
|
provided that
This constraint leads, however, to the following trade-off: the
parameter
controls the computation time and thus is often
determined by the computational setup. Hence the right hand side
may be regarded as given or fixed. One would like to choose a
small
in order to get many prices for strikes near the
spot price. But the constraint implies then a big
giving a
coarse grid for integration. So we face a trade-off between
accuracy and the number of interesting strikes.
Example 1
The FFT is an algorithm for computing (8.15).
Its popularity stems from its remarkable speed: while a naive
computation needs
operations the FFT requires only
steps. The algorithm was first published by
Cooley and Tukey (1965) and since then has been continuously
refined. We illustrate the original FFT algorithm for
.
Writing
and
as binary numbers:
with
the formula (8.15) is
given as:
where
. Because of
we get
Now, the FFT can be described by the following three steps
While a naive computation of (8.15) requires
complex
multiplications the FFT needs only
complex
multiplications. This explains the speed of the FFT because
complex multiplications are the most time consuming operations in
this context.