CARL PAULIN - DIVA PORTAL

Page created by Kevin Bowen
 
CONTINUE READING
Option pricing models: A comparison between
models with constant and stochastic volatilities as
           well as discontinuity jumps

                           Carl Paulin
                      (calle.paulin@outlook.com)
                         Maja Lindström
                        (majaumea@gmail.com)

                            June 10, 2020

        Thesis presented for a Bachelor degree in mathematics

Supervisor                                                   Examiner
Markus Ådahl                                                   Lisa Hed
markus.adahl@umu.se                                    lisa.hed@umu.se
Abstract
The purpose of this thesis is to compare option pricing models. We have investigated the
constant volatility models Black-Scholes-Merton (BSM) and Merton’s Jump Diffusion
(MJD) as well as the stochastic volatility models Heston and Bates. The data used were
option prices from Microsoft, Advanced Micro Devices Inc, Walt Disney Company, and
the S&P 500 index. The data was then divided into training and testing sets, where the
training data was used for parameter calibration for each model, and the testing data was
used for testing the model prices against prices observed on the market. Calibration of
the parameters for each model were carried out using the nonlinear least-squares method.
By using the calibrated parameters the price was calculated using the method of Carr and
Madan. Generally it was found that the stochastic volatility models, Heston and Bates,
replicated the market option prices better than both the constant volatility models, MJD
and BSM for most data sets. The mean average relative percentage error for Heston and
Bates was found to be 2.26% and 2.17%, respectively. Merton and BSM had a mean
average relative percentage error of 6.90% and 5.45%, respectively. We therefore suggest
that a stochastic volatility model is to be preferred over a constant volatility model for
pricing options.

                                            i
Sammanfattning
Syftet med denna tes är att jämföra prissättningsmodeller för optioner. Vi har undersökt
de konstanta volatilitetsmodellerna Black-Scholes-Merton (BSM) och Merton’s Jump
Diffusion (MJD) samt de stokastiska volatilitetsmodellerna Heston och Bates. Datat
vi använt är optionspriser från Microsoft, Advanced Micro Devices Inc, Walt Disney
Company och S&P 500 indexet. Datat delades upp i en träningsmängd och en test-
mängd. Träningsdatat användes för parameterkalibrering med hänsyn till varje modell.
Testdatat användes för att jämföra modellpriser med priser som observerats på mark-
naden. Parameterkalibreringen för varje modell utfördes genom att använda den icke-
linjära minsta-kvadratmetoden. Med hjälp av de kalibrerade parametrarna kunde priset
räknas ut genom att använda Carr och Madan-metoden. Vi kunde se att de stokastiska
volatilitetsmodellerna, Heston och Bates, replikerade marknadens optionspriser bättre
än båda de konstanta volatilitetsmodellerna, MJD och BSM för de flesta dataseten.
Medelvärdet av det relativa medelvärdesfelet i procent för Heston och Bates beräknades
till 2.26% respektive 2.17%. För Merton och BSM beräknades medelvärdet av det relativa
medelvärdesfelet i procent till 6.90% respektive 5.45%. Vi anser därför att en stokastisk
volatilitetsmodell är att föredra framför en konstant volatilitetsmodell för att prissätta
optioner.

                                            ii
Contents
1 Introduction                                                                                                                               1

2 Theory of financial mathematics                                                                                                            2
  2.1 Options . . . . . . . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     2
  2.2 Pricing Options . . . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     2
  2.3 Stochastic calculus . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     4
  2.4 Black-Scholes-Merton model . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     6
  2.5 Put-Call Parity . . . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     7
  2.6 Volatility smiles and skews . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     7
  2.7 Heston model . . . . . . . . . .     .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     8
  2.8 Merton’s Jump Diffusion model        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .     9
  2.9 Bates model . . . . . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    10

3 Method                                                                                 10
  3.1 Data selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
  3.2 Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 Results                                                                                                                                   14
  4.1 Microsoft Corporation (MSFT) . . .               .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    14
  4.2 Advanced Micro Devices, Inc (AMD)                .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    16
  4.3 Walt Disney Company (DIS) . . . .                .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    18
  4.4 S&P 500 Index (SPX) . . . . . . . .              .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    20

5 Discussion and conclusion                                                                                                                 22

References                                                                                                                                  24

A Calibrated parameters                                                                                                                    A-1

B More results                                                                                                                             B-3
1    Introduction
An option is an agreement between an option exhibitor and an option holder that gives
the holder the right, but not the obligation, in the future to buy or sell an underlying
asset (often a stock) at a predetermined price. Pricing options can be very cumbersome
due to the fact that the underlying stock is uncertain in the future. This measure of
uncertainty is called volatility and describes how much the stock price varies over time
and gives an intuition about the risk of the underlying asset.

Different models can be used to describe the volatility and therefore the price of an op-
tion. The most simple and popular one which is the foundation when modeling how stock
prices move is the Geometric Brownian Motion (GBM) which leads to an option pric-
ing formula called Black-Scholes-Merton (BSM) model. This model assumes a constant
volatility and that the price of the underlying stock is log-normal (Gaussian) distributed.
These assumptions are not optimal since it leads to a phenomenon called volatility smiles
or skews in option prices which arises because of the market’s fear against more extreme
events which grew after the crash in 1987 [1]. In the Gaussian distribution, the tails of
the distribution are much smaller than in reality where the likeliness to observe these
more extreme events are larger than predicted, this should produce fatter tails in the
distribution.

Another major disadvantage with GBM, and therefore also the BSM model, is that
stock prices do not always change continuously which BSM assumes. We may have cer-
tain events on the stock market (which we can not foretell) that affects the stock prices
directly and give us so called discontinuity jumps. We will in this thesis provide differ-
ent model extensions of the GBM including stochastic volatility as well as discontinuity
jumps and compare these models to investigate what improvements can be done to more
accurately price options.

Due to these deficiencies in the BSM, it is interesting to see if other models could better
capture the market. Therefore, the purpose of this thesis is to compare different option
pricing models and investigate how good the models can replicate market data.

The thesis is structured in such a way that it first introduces the subject of financial
mathematics and the different option pricing models, then introduces the calibration
problem of pricing options, and lastly, the results are presented. If one is proficient in
the subject of financial mathematics one could skip the first parts and start at section
3 for the calibration or just jump directly to the conclusion for a brief overview of the
thesis.

                                            1
2     Theory of financial mathematics
2.1   Options
European call options are options that give the holder the right, but not the obligation,
to buy one share of the underlying asset at a predetermined price (strike price) and
expiration date (or maturity date) [2]. If the price of the underlying asset is above the
strike price at expiration the holder will exercise the option and buy one share of the
underlying asset to the price of the strike. But if the value of the asset is below the strike
price at expiration, the holder of the option will not exercise it because the option has
no value. Therefore, the price of a European call option [3] at expiration day T is

                                C(T ) = max[S(T ) − K, 0],                                (1)

where K is the strike price and S(T ) is the stock price at expiration.

On the other hand, European put options gives the holder the right, but not the obliga-
tion, to sell one share of the underlying asset [2]. If the price of the underlying asset is
below the strike price at expiration the holder will exercise the option and sell one share
of the asset to the price of the strike. But if the value of the asset is above the strike
price at expiration, the holder of the option will not exercise it because it has no value.
The price of a European put option at expiration [3] is therefore

                                P (T ) = max[K − S(T ), 0].                               (2)

We will work with both European options and American options. Compared to Euro-
pean options, American options can be exercised at any time before the expiration date.
However, the value of an American call option will have the same value as a European
call option because it will never optimal to exercise an American call option early given
that the risk-free rate is positive and assuming no dividend is paid out [2]. This can be
viewed in further detail in section 2.5. Since American options and European options
can be treated alike with these two assumptions, we can use the same theory for both
of them. Therefore, we have from now on only considered the theory for European call
options, however, one has to remember that this theory can be applied to American
options as well.

2.2   Pricing Options
When we have a complete market that also is arbitrage-free [4], options can be priced at
any time t using the risk-neutral valuation formula [5]

                                Vt (K) = e−r(T −t) E Q [V (T )],                          (3)

                                               2
where Vt (K) is the price of the option with strike price K, r is the constant risk-free
rate, V (T ) is the price of the option at expiration T, and E Q is the expectation under
the risk-neutral measure (Q-measure) which can be calculated as
                                             Z       ∞
                              Q
                            E [V (T )] =                 V (T )fd (ST )dST ,             (4)
                                                 0

where fd (ST ) is the risk-neutral density function of the underlying asset, S, at expiration
T [5]. This way of calculating option prices will always work, no matter how complex
the model is. However, it could be very difficult to find the density function and it could
be computationally expensive depending on the complexity of the model [1]. Therefore
we often choose to work with the less frequently used characteristic function which is the
Fourier transform of the density function [6] defined as
                                         Z   ∞
                               f (φ) =               eiφST fd (ST )dST                   (5)
                                         −∞

where i is the unit imaginary number and φ is the characteristic function variable.
The Fourier transform [7] that is applied when finding the characteristic function as
described above is very commonly used when we want to transfer a function from one
domain to another domain (often from time to frequency). This is a very powerful tool
in for example statistics and for solving differential equations. The Fourier transform of
a function g that is squared integrable can be defined as
                                             Z       ∞
                                  G(w) =                   g(t)eiwt dt                   (6)
                                                     −∞

and the original domain can then be recreated by its inverse which is defined as
                                             Z   ∞
                                       1
                               g(t) =                     G(w)e−iwt dw,                  (7)
                                      2π     −∞

where t and w represents the time and angular frequency, respectively.
If the characteristic function of the model is known, the fast Fourier transform, which is
an efficient algorithm for calculating a discrete Fourier transform, can be used to value
European call options. This method was introduced by Carr and Madan in 1999 [6] as
follows

                                    e−αk ∞ −iuk
                                         Z
                           Ct (k) =             e    Ψt (u)du
                                      π    0
                                                                                         (8)
                                     e−r(T −t) f (u − (α + 1)i)
                           Ψt (u) = 2                           ,
                                    α + α − u2 + ui(2α + 1)

                                                      3
where Ct (k) is the price of a European call option where k = ln(K), α is the damping
factor and u is the integration variable.

To find this expression using the Fourier transform the authors of [6] multiplies the
European call option price with an exponential factor as follows,

                                       ct (k) = eαk Ct (k).                               (9)

If α > 0 the expression is square-integrable in k for real values. Then the authors use
Fourier transform on Equation (9) and get from Equation (6),
                                            Z   ∞
                                 Ψt (u) =               eiuk ct (k)dk.                   (10)
                                             −∞

By then using the inverse Fourier transform of Equation (7) on Equation (10) together
with Equation (9), European call option prices can be written as

                                                    ∞
                                      e−αk
                                                Z
                             Ct (k) =                    e−iuk Ψt (u)du.                 (11)
                                       π        0

This equation is true since the imaginary part of Ψt (u) is odd and the real part is even.
Then an analytical expression of Equation (10) in terms of the characteristic function is
found to be

                                        e−r(T −t) f (u − (α + 1)i)
                            Ψt (u) =                               .                     (12)
                                       α2 + α − u2 + ui(2α + 1)

2.3   Stochastic calculus
To be able to price options we need a model that exhibits the same stochastic behavior
as a stock as well as giving us the deterministic growth (or decline) that we generally
see on the stock market. One way to do this is to use diffusion processes and stochastic
differential equations. From [4] we have that a stochastic process X is a diffusion process
if its dynamics can be approximated as a stochastic difference equation

                   X(t + ∆t) − X(t) = µ(t, X(t))∆t + σ(t, X(t))Z(t),                     (13)

where Z(t) a normally distributed interference term which only depends on what happens
at that point of time, t, whereas µ and σ are deterministic functions. The inherent
understanding is that, over a time interval [t, t + ∆t], the diffusion process X(t) is piloted
by two separate terms. The first one is the drift term µ(t, X(t)), and can be thought of

                                                    4
as a deterministic velocity. Secondly, the term σ(t, X(t))Z(t) is a stochastic Gaussian
disturbance term, weighted by the diffusion function σ.
This means that we have a model for financial assets using a deterministic and a stochastic
term, and intuitively one can think of the asset as having a known drift term that sets
the trend of the asset, as well as having a noise term that gives us the variability seen
in, for example, stock prices.
To model the Gaussian disturbance term, Z(t), in Equation (13) we will make use of the
Wiener process. In [8] they define it and say that a stochastic process W is a Wiener
process if it possesses the following characteristics
1. W (0) = 0
2. The process W has independent increments, i.e if z < q ≤ s < t then W (z) − W (q)
and W (s) − W (t) are independent stochastic variables.
3. For q < s the stochastic variable W (q) − W (s) has the Gaussian distribution
     √
N [0, q − s].
4. W has continuous trajectories.
Replacing the Gaussian disturbance term in Equation (13) with the Wiener process yields

                 X(t + ∆t) − X(t) = µ(t, X(t))∆t + σ(t, X(t))∆W (t),                  (14)
where ∆W (t) is defined by
                              ∆W (t) = W (t + ∆t) − W (t).

From the definition of the Wiener process, we know that it is continuous which means
intuitively that if we were to draw the process we would never have to lift our pen.
However, if we were to look at the curve of W (t) on smaller and smaller scales, it would
become erratic, so if we wanted to try to fit a tangent to the curve we would not be
successful. This tells us an important fact about the Wiener process. The Wiener
process is nowhere differentiable. So in Equation (14) we can not divide by ∆t and let
it go towards zero i.e take the derivative, instead we let ∆t go towards zero without
dividing with it which gives us the expression
                        dX(t) = µ(t, X(t))dt + σ(t, X(t))dW (t),
                                                                                      (15)
                         X(0) = x0 ,
and by writing Equation (15) on integral form we end up with the following integral
equation                    Z t                Z t
                X(t) = x0 +     µ(s, X(s))ds +     σ(s, X(s))dW (s).           (16)
                                0                   0

Generally, we will refer to Equation (15) since it has a more intuitive explanation com-
pared to the corresponding integral form. Equation (15) is a general form for the move-
ment of a financial asset and we will now work with different ways to model the drift (µ)

                                            5
and diffusion (σ) functions in Equation (15). Starting with the most simple case, Geomet-
ric Brownian Motion (GBM) which is a very important basic concept when determining
stock prices and their movements. The GBM assumes that the drift and diffusion (which
also can be called volatility when we talk about stock price movements) are constant
functions and can be modeled as [4]

                            dX(t) = µX(t)dt + σX(t)dW (t),
                                                                                      (17)
                             X(0) = x0 ,

where W (t) is the Wiener process described above.

The solution to Equation (17) is

                                                  1   2 )t+σW (t)
                                X(t) = x0 e(µ− 2 σ                  .                 (18)

2.4   Black-Scholes-Merton model
The Black-Scholes-Merton (BSM) model is a Nobel memorial prize-winning (1997) model
that can be derived from the GBM and is used to determine the price of European call
options. The BSM model, published in [9], requires some assumptions which, in a way,
explain a "perfect" market. Firstly it is assumed that the price of the underlying stock is
log-normal (Gaussian), secondly, there are no dividends as well as no transaction costs,
thirdly it is assumed that we have a market where risk-free assets can be traded, and
lastly it is assumed that we do not have arbitrage opportunities which would prevent us
from making a profit that is risk-free. The bond (B) and stock (S) movements are on
the following form

                            dB(t) = rB(t)dt,
                            dS(u) = µS(u)du + σS(u)dW (u),                            (19)
                              S(t) = s,

where µ is the constant drift and σ is the constant volatility. This, together with Equa-
tions (1), (4), (18) and some elementary calculations that can be seen in [9] gives us the
BSM equation which tells us the theoretical price of a European call option at time t
with expiration date T and strike price K,

                     C(t, s) = sN [d1 (t, s)] − e−r(T −t) KN [d2 (t, s)],
                                      1         s          1
                     d1 (t, s) = √          [ln( ) + (r + σ 2 )(T − t)],              (20)
                                 σ T −t         K          2
                                              √
                     d2 (t, s) = d1 (t, s) − σ T − t,

                                              6
where N is the cumulative distribution function for the normal distribution with mean 0
and standard deviation 1.

2.5   Put-Call Parity
Above, we have shown that the BSM model can easily be used to price European call
options with expiration date T and strike price K. The corresponding European put
option, with the same expiration date and strike, can be priced as well by using the
so-called put-call parity which was introduced by Hans R. Stoll in 1969 [10]. It tells us
the relationship between prices of European put versus call options and looks as follow

                           P (t, s) = Ke−r(T −t) + C(t, s) − s,                      (21)

where we assume a zero dividend yield and P (t, s) is the value of a European put option
and C(t, s) is the value of a European call option.

For a European call option we have that the value of the option at t = 0 is

                               C ≥ max(S0 − Ke−rT , 0),                              (22)

since C ≥ 0, because the worst thing that could happen to a European call option is that
it is worthless at expiry. An American call option is like a European call option but has
the opportunity to be exercised early. Therefore, the value of an American call option,
c, is greater or equal to the value of the European call option, C, that is c ≥ C, where
we assume that there are no dividends. So we also have that

                                c ≥ max(S0 − Ke−rT , 0).                             (23)

Assuming positive risk-free rate, r, and T > 0, it follows that c > S0 − K. So c is always
larger than the intrinsic value before maturity. We can, therefore, conclude that it is
never optimal to exercise an American call option early, which follows from the put-call
parity, and we have that C = c [2]. From now on we will treat American call options
and European call options equally and the put-call parity will hold as well.

2.6   Volatility smiles and skews
The implied volatility is the market’s prognosis of a probable movement in a security’s
price [2]. If we knew the option prices we could obtain the implied volatilities from the
BSM equation. The BSM model assumes constant volatility which means that if we were
to plot the implied volatility against multiple strike prices for the same expiration date
we would get a straight line. But in reality, this is not the case. If we plot the implied

                                            7
volatility against the strikes of real market data we will often observe so-called volatility
smiles or skews. These appear because of the markets fear against sudden extreme price
changes. Before the crash in 1987, we did not have these smiles or skews in the market
and therefore the BSM model did a very good job replicating option prices. However,
today the model is not optimal since it does not consider these volatility smiles and skews
that we observe on the market [1].

Two plots of implied volatility versus strike prices can be seen in Figure 1 where the
left picture shows market data and the right picture shows how the market data are
predicted by the BSM model. As can be seen, we observe a volatility skew in the market
data which the BSM model fails to capture and we will therefore try some other models
that take these into account.

                        0.6                                                                                  1.4

                                                                                                             1.2
                       0.55
                                                                                                               1
                        0.5
                                                                                                             0.8
  Implied Volatility

                                                                                        Implied Volatility

                       0.45
                                                                                                             0.6

                        0.4                                                                                  0.4

                                                                                                             0.2
                       0.35
                                                                                                               0
                        0.3
                                                                                                             -0.2
                       0.25
                                                                                                             -0.4

                        0.2                                                                                  -0.6
                           80   100   120   140            160    180   200   220                                80   100   120   140            160   180   200   220
                                                  Strike                                                                                Strike

                                             (a)                                                                                   (b)

            Figure 1 – Figure shows implied volatility plotted against strike prices, showing the
            volatility skew as seen on the market (a) and as predicted by the BSM pricing model (b).

2.7                           Heston model
The most well-known stochastic volatility model is the Heston model (1989) which un-
like the BSM model assumes non-constant volatility. In this model, we also take into
account the mean reversion rate and the leverage effect [11] which describes how an as-
set’s volatility is correlated with its returns. The Heston model [12] can be described
as

                                                                                p
                                                             dS(t) = µS(t)dt +    V (t)S(t)dW1 ,
                                                                                       p
                                                            dV (t) = κ(θ − V (t))dt + σ V (t)dW2 ,                                                                   (24)
                                                                 ρdt = dW1 · dW2 ,

                                                                                    8
where S(t) is the stock price at time t, µ is the constant drift, V (t) is the variance of the
stock, θ is the long run price variance, κ is the mean reversion rate back to θ and σ is the
volatility of the variance. The last row shows that we have a correlation between the two
Wiener processes, W1 and W2 , with correlation parameter ρ which can vary between -1
and 1, with this we consider the leverage effect which, in the market, is often observed
to be negative. If the return of the stock goes up the volatility goes down and vice versa.
We want to investigate if we can calibrate these parameters to be able to replicate option
prices.
To calculate the prices of European call options using the Carr and Madan method,
Equation (8), we use the risk-neutral characteristic function which is given in [12]

                                                      
            fHeston (φ) = exp C + DV0 + iφln(S(t)) ,
                    κθ h                                          1 − ged(T −t) i
   C = riφ(T − t) + 2 (κ + λV olRisk − ρσiφ + d)(T − t) − 2ln                       ,
                     σ                                                1−g
                          κ + λV olRisk − ρσiφ + d  1 − ed(T −t) 
                      D=                                            ,                    (25)
                                     σ2              1 − ged(T −t)
                          κ + λV olRisk − ρσiφ + d
                       g=                          ,
                          κ + λV olRisk − ρσiφ − d
                          p
                       d = (κ + λV olRisk − ρσiφ)2 + σ 2 (iφ + φ2 ),

where r is the risk-free rate, φ=u − (α + 1)i is the characteristic function variable and
λV olRisk is the volatility risk premium which is the additional reimbursement stockhold-
ers require in order to hold a security that is unstable. However, for our calculations we
assume it to be zero.

2.8   Merton’s Jump Diffusion model
On the stock market we may observe discontinuities which can be a consequence of
unexpected events that are caused by the arrival of new information. The BSM and
the Heston model do not take these events into account and therefore an extension of
the BSM can be done to include discontinuities or jumps. One way to do this is to use
an extension of BSM called Merton’s Jump Diffusion (MJD) model [14] which assumes
that the jumps are random and lognormal distributed. The risk-neutral process can be
modeled as

                   dS(t) = (r − λk)S(t)dt + σS(t)dW (t) + kS(t)dq(t),                    (26)

where S(t) is the stock price at time t, r is the risk-free rate, dq is a Poisson process (in-
dependent of the Wiener process) with an intensity of the random jump, λ, and random

                                              9
percentage jump size conditional on the jump occuring, k. k denotes the mean of k. As
can be seen, the MJD model approaches to the BSM model if λ=0.

The characteristic equation of the MJD model [14], which is used to price European call
options using Equation (8), is, for the risk-neutral measure given by

                                                               (iφ)2
                                        h                            i          
                                                      2   1
fM erton (φ) = fBS (φ)exp λ(T − t)(1 + k) (1 + k)iφ eδ − 2 iφ+ 2 − 1 − λ(T − t)kiφ ,
                   h                 σ2        i φ2 σ 2             
    fBS (φ) = exp iφ ln(S(t)) + (r − )(T − t) −             (T − t) ,
                                      2                 2
                                                                                (27)

where δ is the standard deviation of ln(1 + k) and T is the expiration date.

2.9    Bates model
In 1996, David S. Bates introduced the Bates model [15] where he takes into account
both discontinuity jumps and stochastic volatility by combining the MJD model with
the Heston model,

                                             p
                  dS(t) = (µ − λk)S(t)dt +    V (t)S(t)dW1 + kS(t)dq(t),
                                             p
                  dV (t) = κ(θ − V (t))dt + σ V (t)dW2 ,                                           (28)
                    ρdt = dW1 · dW2 .

The characteristic equation for the risk neutral measure of the Bates model [15] is

                                           
    fBates (φ) = exp C + DV0 + iφln(S(t)) ·
                                   h             2   − 12 iφ+
                                                                 (iφ)2
                                                                               i                 (29)
               · exp λ(T − t)(1 + k) (1 + k)iφ eδ                  2         − 1 − λ(T − t)kiφ ,

where C and D are given in Equation (25).

3     Method
3.1    Data selection
We used three different stocks and one index in the calibration procedure to test how
well each method can replicate the market on different data sets containing option prices.
The stocks used were Microsoft Corp (MSFT), Advanced Micro Devices, Inc (AMD) and

                                              10
Walt Disney Company (DIS) which are all American options. The index we used, S&P
500 (SPX), is the same as a European option. These data sets were chosen because they
are liquid which means that they are traded frequently such that the bid and ask prices
agree quite well. The data we collected from the stocks and index was multiple maturity
dates, ranging from 2 months up to 16 months in the future, strikes for all of the maturity
dates as well as option call prices for each strike. A data set corresponds to one day of
option data, we then used one data set to calibrate a set of parameters.

3.2   Calibration
To be able to use the different models described above to price the index and Ameri-
can call options we need to calibrate the parameters in each model by using historical
data found on the market. The goal is to find parameters that are consistent with
market prices. In the calibration process we used the MATLAB functions optByMertonFFT,
optByHestonFFT and optByBatesFFT which applies the calculation method given by Carr
and Madan [6], Equation (8), by using the characteristic functions in Equations (25), (27)
and (29) for each model as well as using Fast Fourier transform (FFT). We want the cal-
ibrated parameters to give prices that are as close as possible to the prices observed on
the market. They were therefore estimated by minimizing the difference between market
and model option prices using the nonlinear least-squares method. To do this we used
the function lsqnonlin in MATLAB that solves the nonlinear least-squares curve-fitting
problem of the form

                 minx kf(x)k22 = minx f1 (x)2 + f2 (x)2 + ... + fn (x)2 ,
                                                                       
                                                                                      (30)

where x is the model parameters and f(x) is the vector

                                                              
                             f(x) = f1 (x), f2 (x), ..., fn (x) ,                     (31)
containing the difference between the model and market call option price given a strike
K and maturity T ,

                           fi (x) = Ct (K)model − Ct (K)market .                      (32)

Since lsqnonlin looks for solutions that minimize the sum of the squared functions for
all values of x we need to provide some lower and upper bounds such that we only get
parameters that are compatible in an economical sense. For σ, V0 and θ we would expect
the values to be between 0 and 1, since the volatility cannot be negative and a value
larger than 1 is not expected (but possible) since we use an index and stocks that are
rather stable, in the sense that the price or value for a share is not expected to change
more than 100%. For the mean reversion rate, κ, the value should be larger than 0
and does not need an upper bound since it only tells us the speed of which the stock

                                             11
will revert to the long run variance θ. The correlation between the Wiener processes, ρ,
should be between -1 and 1 to make mathematical sense, since two processes cannot be
more correlated or uncorrelated than 100%. However, on the market one usually sees
that ρ is negative, which means that when the volatility goes up, the share price goes
down. The risk-free rate, r, used in the calculations was the US 10 year treasury rate
that varied depending on which date we downloaded the option data. The dividend was
assumed to be zero for all options. The annual jump frequency, λ, is assumed to be able
to take values between 0 and infinity. The mean of the magnitude of the jump, k̄, and δ
is assumed to be between 0 and 1, which is based on the results by Bates in [15]. For each
market data collected we got a new set of parameters which can be found in Appendix A.

The optimization technique lsqnonlin is a local optimizer which means that it finds a
solution that is smaller or equal than other points around it, but there might exist other
minima that are not found. Using global optimization, one finds the point that is the
smallest of all points at the cost of computation. There exist several arguments for both
methods, however, we chose to use a local optimizer since they are often easier and faster.
Nonetheless, a trade-off for using a local optimizer is that it is strongly dependent on
the starting parameters used, which means that we can find multiple different solutions
for the optimization Equation (30). We solved this problem by studying other papers
with similar calibrations, for example [16], [17] and [18]. We then used these same initial
parameters and boundaries for all data sets and models to achieve results that could be
compared to each other. These parameters can be seen in Table 1.

                          Table 1 – Initial values for parameters

                 Parameters    σ     V0     θ     κ   ρ      λ   δ     k̄
                 Value         0.1   0.05   0.1   1   -0.2   5   0.8   0.08

A comparison between four different parameters with different values can be seen in Fig-
ure 2, where one can see what effect different parameters can have on the price. We can
see that both ρ and k̄ have the smallest impact on the price, while σ and θ have a larger
impact on the variation in the price.

                                            12
15                                                                    15
                                                                                                                                     =1
                                                                                                                                     =0
                                                                                                                                     =-0.5
                                                                                                                                     =-1

                  10                                                                    10
          Price

                                                                                Price
                  5                                                                     5

                  0                                                                     0
                   20   25   30   35    40      45   50   55          60                 20   25   30   35    40      45   50   55           60
                                       Strike                                                                Strike

                                       (a)                                                                   (b)

                  15                                                                    15
                                                               =0.1                                                                  =0
                                                               =0.5                                                                  =0.2
                                                               =1.0                                                                  =0.5
                                                               =1.5                                                                  =0.75

                  10                                                                    10
          Price

                                                                                Price

                  5                                                                     5

                  0                                                                     0
                   20   25   30   35    40      45   50   55          60                 20   25   30   35    40      45   50   55           60
                                       Strike                                                                Strike

                                       (c)                                                                   (d)

   Figure 2 – A comparison between four different parameters and their effect on an option
   call price. It shows that the volatility σ and the long run variance θ have a large variation
   in price between different parameters. The mean of the magnitude of the jump k̄ as well
   as the correlation between Wiener processes ρ have a lower impact on the option price.

After the calibration, we used the obtained parameters to price the index and American
call options using the Carr and Madan method for the different models. Remember
that the Carr and Madan method can be used to price both European call options and
American call options since these can be treated the same under the assumptions of a
positive risk-free rate and that the stocks pay no dividends. The data set we used when
pricing the options was a completely new set of data that we did not use during the
calibration. We did this practically by leaving out some of the data before calibrating
the parameters, this set of data was then used when pricing the options and is called the
test set. The data used when calibrating the parameters is called the training set. This
method of leaving out some of the data and use this for prediction is used frequently
in machine learning which is a very effective problem-solving method used in multiple
fields.

                                                                           13
4           Results
We can now compare the prices obtained by the BSM model, Heston model, MJD model
and Bates model with the prices found on the market for different stocks to see how well
the methods performed in real life and how the methods performed in comparison to
each other.

4.1              Microsoft Corporation (MSFT)
For the Microsoft options, we have collected data from February 27, 2020 and February
28, 2020. The option prices for these data sets calculated using the different models for
maturity date March 19, 2021, can be seen in Figure 3. From these figures, we can see
that the BSM and Merton models, price the options higher than what is observed on the
market. However, we can see that both Bates and Heston follow the market rather well.
This can also be seen in Table 2 and 3, where Bates and Heston both had low average
relative percentage error (arpe) while Merton and BSM had a rather high arpe.

            55                                                                          55
                                                            BSM                                                                         BSM
            50                                              Bates                       50                                              Bates
                                                            Heston                                                                      Heston
                                                            Merton                                                                      Merton
            45                                                                          45
                                                            Market                                                                      Market

            40                                                                          40

            35                                                                          35
    Price

                                                                                Price

            30                                                                          30

            25                                                                          25

            20                                                                          20

            15                                                                          15

            10                                                                          10
             120   130   140   150            160   170   180        190                 110   120   130   140            150   160   170        180
                                     Strike                                                                      Strike

                                (a)                                                                         (b)

    Figure 3 – European call option prices collected 27/02/2020 (a) and 28/02/2020 (b) of
    the Microsoft data plotted against the strike prices for each model at maturity date March
    19, 2021.

                                                                           14
Table 2 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the MSFT stock data collected 27/02/2020 for the different models.

                        Model      rmse    ape       aae     arpe (%)
                        Heston     0.426   0.0121    0.338   1.59%
                        Bates      0.414   0.0121    0.339   1.55%
                        Merton     1.15    0.0322    0.903   5.31%
                        BSM        0.916   0.0256    0.717   4.22%

   Table 3 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the MSFT stock data collected 28/02/2020 for the different models.

                        Model      rmse    ape       aae     arpe (%)
                        Heston     0.649   0.0160    0.470   1.59%
                        Bates      0.656   0.0156    0.457   1.57%
                        Merton     1.32    0.0407    1.19    4.12%
                        BSM        1.25    0.0349    1.024   3.10%

This could be explained somewhat by looking at the implied volatility plot for the dif-
ferent pricing models in Figure 4 which shows the data collected on 27/02/2020. In this
figure, we can see a skew in the market data that is clearly visible which the stochastic
volatility models seem to capture while the constant volatility model does not. From
this one could conclude that Bates or Heston would fit the market best, which is also
what we got. The Merton model is the worst performing one of the four tested on the
MSFT data, even though it is a more complicated model than BSM, it still is not able
to perform better.

                                              15
0.3
                                                                                       BSM
                                                                                       Bates
                                     0.29                                              Heston
                                                                                       Merton
                                                                                       Market

                                     0.28
                Implied Volatility

                                     0.27

                                     0.26

                                     0.25

                                     0.24
                                        120   130   140   150            160   170   180        190
                                                                Strike

   Figure 4 – Implied volatility for Microsoft using BSM, Heston, Bates, Merton pricing
   models for data collected on 27/02/2020.

4.2   Advanced Micro Devices, Inc (AMD)
For the AMD options we have collected data from February 27, 2020 and February 28,
2020. The option prices for these data sets calculated using the different models for
maturity date March 19, 2021, can be seen in Figure 5. In Figure 5(a) we can see that
Bates and Heston follow the market better than BSM and Merton, while in Figure 5(b)
all the pricing models follow the market very well. However, in Tables 4 and 5 we can once
again see that Bates and Heston are the two best performing models, where Heston is the
best one for the data collected on 27/02/2020 and Bates is the best for the second data
set collected on 02/03/2020. This could mean that either Bates or Heston is sufficient
for pricing the AMD stock, but it depends on the data which one fits the market best.

                                                                16
30                                                                35
                                              BSM                                                                  BSM
                                              Bates                                                                Bates
                                              Heston                         30                                    Heston
           25
                                              Merton                                                               Merton
                                              Market                                                               Market Price
                                                                             25
           20

                                                                             20
   Price

                                                                     Price
           15
                                                                             15

           10
                                                                             10

           5
                                                                             5

           0                                                                 0
            20   30   40    50      60   70            80                     10     20      30       40      50   60             70
                           Strike                                                                    Strike

                           (a)                                                                    (b)

   Figure 5 – European call option prices collected 27/02/2020 (a) and 28/02/2020 (b) of
   the AMD data plotted against the strike prices for each model at maturity date March
   19, 2021.

   Table 4 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the AMD stock data collected 27/02/2020 for the different models.

                              Model      rmse               ape              aae          arpe (%)
                              Heston     0.389              0.0239           0.314        2.51%
                              Bates      0.385              0.0280           0.367        4.13%
                              Merton     0.775              0.0529           0.695        10.7%
                              BSM        0.703              0.0477           0.627        9.53%

   Table 5 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the AMD stock data collected 02/03/2020 for the different models.

                              Model      rmse               ape              aae          arpe (%)
                              Heston     0.339              0.0196           0.276        2.48%
                              Bates      0.338              0.0193           0.272        2.29%
                              Merton     0.471              0.0303           0.426        4.23%
                              BSM        0.472              0.0300           0.422        4.05%

The implied volatility for the different models plotted against the strike price for the first
data set can be seen in Figure 6. As for the Microsoft data, the market seems to have a
skew that Heston and Bates can capture and therefore give better pricing models than
Merton and BSM. Here we can observe that both Bates and Heston give lower implied

                                                              17
volatility than what is observed on the market, this means that the two models will value
the option lower than the market. We can also see that Heston is the one that closest
follows the implied volatility, which could mean that it will best match the market.

                                     0.75
                                                                           BSM
                                                                           Bates
                                                                           Heston
                                      0.7                                  Merton
                                                                           Market
                Implied Volatility

                                     0.65

                                      0.6

                                     0.55

                                      0.5
                                         20   30   40    50      60   70            80
                                                        Strike

   Figure 6 – Implied volatility for AMD using BSM, Heston, Bates, Merton pricing model
   for data collected on 27/02/2020.

4.3   Walt Disney Company (DIS)
For the DIS options, we have collected data from February 28, 2020 and March 2, 2020.
The option prices for these data sets calculated using the different models for maturity
date January 15, 2021, can be seen in Figure 7. In these figures, we once again see that
BSM and Merton overvalue the option, while Bates and Heston follow the market rather
closely. In Tables 6 and 7 we can see that Bates get the lowest error, with Heston as a
close second.

                                                        18
50                                                                    50
                                                 BSM                                                                               BSM
           45                                    Bates                           45                                                Bates
                                                 Heston                                                                            Heston
                                                 Merton                                                                            Merton
           40                                                                    40
                                                 Market                                                                            Market

           35                                                                    35

           30                                                                    30
   Price

                                                                         Price
           25                                                                    25

           20                                                                    20

           15                                                                    15

           10                                                                    10

           5                                                                     5
            80   90   100    110     120   130            140                     70     80     90    100            110   120   130        140
                            Strike                                                                          Strike

                            (a)                                                                        (b)

   Figure 7 – European call option prices collected 27/02/2020 (a) and 02/03/2020 (b) of
   the Disney data plotted against the strike prices for each model at maturity date January
   15, 2021.

   Table 6 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the DIS stock data collected 27/02/2020 for the different models.

                               Model       rmse                 ape              aae          arpe (%)
                               Heston      0.517                0.0211           0.472        2.90%
                               Bates       0.469                0.0192           0.428        2.77%
                               Merton      0.946                0.0346           0.774        7.35%
                               BSM         0.759                0.0280           0.625        5.91%

   Table 7 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the DIS stock data collected 02/03/2020 for the different models.

                               Model       rmse                 ape              aae          arpe (%)
                               Heston      1.212                0.0193           1.16         2.36%
                               Bates       0.911                0.0136           0.816        1.56%
                               Merton      4.50                 0.0674           4.05         9.30%
                               BSM         3.68                 0.0599           3.60         6.46%

The implied volatility for the different models plotted against the strike price for the first
data set can be seen in Figure 8. Also here, a skew appears in the market data that
Merton or BSM cannot capture. Bates and Heston follow the pattern but not closely.

                                                                  19
0.32
                                                                             BSM
                                    0.31                                     Bates
                                                                             Heston
                                     0.3                                     Merton
                                                                             Market
                                    0.29
               Implied Volatility

                                    0.28

                                    0.27

                                    0.26

                                    0.25

                                    0.24

                                    0.23

                                    0.22
                                        80   90   100    110     120   130            140
                                                        Strike

  Figure 8 – Implied volatility for Disney using BSM, Heston, Bates, Merton pricing model
  for data collected on 27/02/2020.

4.4   S&P 500 Index (SPX)
We collected the SPX data from February 13, 2020 and March 2, 2020. In Figure 9 we
can see the prices of SPX European call options for maturity date September 18, 2020.
In Tables 8 and 9 we can see that Heston and Bates perform the best for the first data
set, while BSM has the lowest errors in the second data set. One can observe that the
errors observed in the second data set are generally higher than the first data set. One
possible explanation for this is that the market that day was very volatile and dropped
unexpectedly, which made it so that no model was able to capture the volatility of the
market.

                                                        20
320                                                                                400
                                                            BSM                                                                               BSM
                                                            Bates                                                                             Bates
           300                                              Heston                                                                            Heston
                                                            Merton                                                                            Merton
                                                            Market                                                                            Market
           280                                                                                350

           260

           240                                                                                300
   Price

                                                                                      Price
           220

           200                                                                                250

           180

           160                                                                                200

           140

           120                                                                                150
             3150   3200   3250             3300   3350              3400                       2700   2750    2800             2850   2900            2950
                                   Strike                                                                              Strike

                                  (a)                                                                                 (b)

   Figure 9 – European call option prices collected 13/02/2020 (a) and 02/03/2020 (b) of the
   S&P 500 data plotted against the strike prices for each model at maturity date September
   18, 2020.

   Table 8 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the S&P 500 data collected 13/02/2020 for the different models.

                                      Model          rmse                   ape                aae     arpe (%)
                                      Heston         2.24                   0.00920            2.04    0.980%
                                      Bates          2.12                   0.00850            1.88    0.940%
                                      Merton         6.30                   0.0274             6.07    2.74%
                                      BSM            8.91                   0.0352             7.79    3.23%

   Table 9 – The root mean square error (rmse), the average absolute error as a percentage of
   the mean price (ape), the average absolute error (aae) and the average relative percentage
   error (arpe) of the S&P 500 data collected 02/03/2020 for the different models.

                                        Model             rmse              ape               aae      arpe (%)
                                        Heston            16.9              0.0524            14.6     5.30%
                                        Bates             16.3              0.0496            13.8     4.84%
                                        Merton            25.0              0.0835            23.3     8.02%
                                        BSM               14.7              0.0427            11.9     4.01%

The implied volatility for the different models plotted against the strike price for the first
data set can be seen in Figure 10. This data set also confirms a skew in the market which
Bates and Heston capture but not Merton and BSM.

                                                                              21
0.15
                                                                                      BSM
                                                                                      Bates
                                                                                      Heston
                                      0.145                                           Merton
                                                                                      Market

                                       0.14
                 Implied volatility

                                      0.135

                                       0.13

                                      0.125

                                       0.12

                                      0.115
                                          3150   3200   3250            3300   3350            3400
                                                               Strike

    Figure 10 – Implied volatility for S&P 500 using BSM, Heston, Bates, Merton pricing
    model for data collected on 13/02/2020.

5     Discussion and conclusion
Our results suggest that Heston and Bates give the lowest errors and should be used
when pricing options with our methods. They result in a mean average relative percent-
age error of 2.26% and 2.17%, respectively. Merton and BSM only have a mean average
relative percentage error of 6.90% and 5.45%, respectively. However, the BSM model
performs the best on the second SPX data which is not in agreement with the results
from the other data sets. Overall we got that Heston and Bates perform the best and
this was also confirmed when we tested on other data sets including Apple which can
be found in Appendix B. Further, our calibration procedure does not work very good
when calibrating the jumps in the Merton model which can be seen in our results where
Merton always performs worse than all the other models.

Our findings are in agreement with Bates in his paper [15] where he calibrates multiple
stochastic jump diffusion models and comes to the conclusion that parameter instability
is one of the major shortcomings of these models. This was also our biggest problem
when working on this thesis, not only for the jump diffusion model but for the other
models as well. We had a very hard time calibrating the parameters in an optimal way
which mainly was because the initial parameters and boundaries were very sensitive to
small changes.

The parameters obtained from the calibration for each model was the optimal ones using

                                                               22
least squares for the training data, however, they are not optimal for the test data. This
is because the test data was not used during the calibration. To optimize the parameters
even more one could have used more training data than we did but it was not very easy to
obtain option prices for a lot of maturity dates which was why we became limited. There
exist a lot of other methods to optimize the parameters, for example, neural networks as
in [16] where they use Keras to train pricing models on market data. We used a local
optimization method, but there also exist several global optimization methods that could
be used. For example, in [19] they use Particle Swarm and Genetic algorithm to find a
global solution to the calibration problem.

During our work with this thesis it was a major market crash due to the Coronavirus
disease (COVID-19) which had a strong impact on the market as a whole. The most
visible part of the crash happened in the later part of February to early March 2020
which was around the time when we collected some of our data. For example, this is
noticeable in the SPX data where the first data set collected in the middle of February
performed as expected while the other data set that we collected at the beginning of
March gave us larger errors and worse performance from the stochastic volatility models.
The BSM model actually priced the option better than the other models which probably
was due to the fact that no model could anticipate that large of a crash so no model did
a very good job pricing the options. The Coronavirus may have affected our results in
even larger scales but we do not think it disturbed our work too much due to the fact
that we used liquid stocks and index.

Some improvements that could be done for future work is to collect more data which
should include more options over a longer time period. Some other calibration methods
might also be studied, including global optimization methods. The work can also be
extended to examine other types of options for example Asian options, barrier options,
and other exotic options. Furthermore, in this thesis we studied some of the most com-
monly used methods for pricing options but there are a lot more that could be examined
for example the stochastic model SABR, the discontinuity jump model called CGMY or
some combined models like the Barndorff-Nielsen-Shephard model, Blacher’s model or
Lipton’s model. One might also investigate models that deal with stochastic times, for
example, the NIG-OUΓ model or the VG-CIR model. All these methods are described a
bit more in detail in [1].

In conclusion, it seems like the stochastic volatility models, Bates and Heston, does a
better job pricing European options than Merton and BSM do. This seems logical since
the data we used all had a skew in the implied volatility plots which Merton and BSM
could not capture due to their constant volatilities. Unfortunately with our calibration
method and market data, the discontinuity jumps models seemed to not make that big
of a difference.

                                           23
References
[1] E. Magnusson, Implied Volatility Surface Construction (Master thesis). Umeå univer-
    sitet, Teknisk-naturvetenskapliga fakulteten, Institutionen för fysik (2018). Available
    at http://www.diva-portal.se/smash/get/diva2:1191887/FULLTEXT01.pdf.
[2] John C. Hull, Options, Futures and Other Derivatives, Ninth edition, Pearson Edu-
    cated Limited 2018.
[3] P. Glasserman, Monte Carlo Methods in Financial Engineering, Springer Science +
    Buisness Media, Inc 2003.
[4] T.Björk, Arbitrage Theory in Continuous Time, Third edition, OXFORD University
    Press, 2009.
[5] R. Crisóstomo, An Analysis of the Heston Stochastic Volatility Model: Implementa-
    tion and Calibration using Matlab. CNMV Working papers, no. 58. (2014).
[6] P. Carr and F.B. Madan. Option valuation using the fast Fourier transform. Journal
    of Computational Finance, 2:61–73, 1999.
[7] G.B. Folland, Fourier analysis and its applications, University of Washington, Brook-
    s/Cole Publishing Company A Division of Wadsworth, Inc (1992).
[8] Y.V. Prokhorov & A.N. Shiryaev (1998) Probability Theory III Stochastic Calculus,
    1st ed. 1998. Berlin, Heidelberg: Springer Berlin Heidelberg.
[9] F. Black and M. Scholes. The Pricing of Options and Corporate Liabilities. The
    Journal of Political Economy, Vol. 81, No. 3 (May - Jun., 1973), pp. 637-654.
[10] H.R. Stoll. The relationship between put and call option prices. The Journal of Fi-
    nance, Vol. XXIV, No. 5. (December 1969), pp. 801-824.
[11] Y. Aıt-Sahalia, J.Fan and Y. Li, The Leverage Effect Puzzle: Disentangling Sources
    of Bias at High Frequency. Princeton University and Hong Kong University of Sci-
    ence and Technology (2013). Available at https://www.princeton.edu/~yacine/
    leverage.pdf.
[12] S. Heston, (1993), A closed-form solution for options with stochastic volatility with
    applications to bond and currency options, Review of Financial Studies, volume 6,
    number 2, pp. 327-343. Available at: http://citeseerx.ist.psu.edu/viewdoc/
    download?doi=10.1.1.139.3204&rep=rep1&type=pdf.
[13] H. Albrecher, P. Mayer, W. Schoutens, and J. Tistaert. The little Heston trap. Radon
    Institute, Austrian Academy of Sciences, Linz and Graz University of Technology
    (2006).
[14] R.C. Merton. Option pricing when underlying stock returns are discontinuous. Jour-
    nal of Financial Economics, Volume 3 (January–March 1976), Issues 1–2, Pages 125-
    144.

                                            24
[15] D.S. Bates. Jumps and Stochastic Volatility: Exchange Rate Processes Implicit in
    Phlx Deutschemark Options. The Review of Financial Studies Spring 1996, Vol.9,
    No.1, pp.69-107.
[16] O. Pironneau. Calibration of Heston Model with Keras (2019). hal-02273889. Avail-
    able at: https://hal.sorbonne-universite.fr/hal-02273889/document.
[17] G. Balaraman, Heston Model Calibration Using QuantLib Python and Scipy
    Optimize (2016). Available at:       http://gouthamanbalaraman.com/blog/
    heston-calibration-scipy-optimize-quantlib-python.html
[18] S. Mikhailov, U. Nögel, Heston’s Stochastic Volatility Model Implementation,
    Calibration and Some Extensions, Fraunhofer Institute for Industrial Mathemat-
    ics, Kaiserslautern, Germany, Wilmott magazine. Available at: https://pdfs.
    semanticscholar.org/2646/51a3435bed02885ef892d8e4d5a749f7fefd.pdf
[19] Y. Kovachev. Calibration of Stochastic Volatility Models. Departments of math-
    ematics, Uppsala University (2014). Available at: https://uu.diva-portal.org/
    smash/get/diva2:729886/FULLTEXT01.pdf

                                         25
A     Calibrated parameters
    Table A.1 – The calibrated parameters for the Microsoft data for the data collected
    27/02/2020 for each model using the Carr and Madan method.

        Parameters       σ        V0          θ        κ            ρ            λ        δ          k̄
        Heston           1.00     0.141       0.0641   10.4         -0.999       -        -          -
        Merton           0.283    -           -        -            -            0.0221   4.46e-5    0
        Bates            1.00     0.125       0.0478   9.38         -0.999       0.437    0.199      0
        BSM              0.283    -           -        -            -            -        -          -

    Table A.2 – The calibrated parameters for the Microsoft data for the data collected
    28/02/2020 for each model using the Carr and Madan method.

       Parameters    σ           V0           θ          κ          ρ         λ       δ         k̄
       Heston        0.490       0.0777       0.0536     6.88       0.999     -       -         -
       Merton        0.249       -            -          -          -         0       0         0
       Bates         0.263       0.0360       0.0271     1.38       0.789     1.43    0.0260    0.138
       BSM           0.249       -            -          -          -         -       -         -

    Table A.3 – The calibrated parameters for the AMD data for the data collected
    27/02/2020 for each model using the Carr and Madan method.

      Parameters     σ           V0       θ        κ            ρ            λ        δ         k̄
      Heston         0.645       0.467    0.280    6.44         -0.951       -        -         -
      Merton         0.579       -        -        -            -            0.236    0.0318    0.0013
      Bates          0.943       0.318    0.124    0.754        -0.781       1.90     0.191     0.129
      BSM            0.579       -        -        -            -            -        -         -

    Table A.4 – The calibrated parameters for the AMD data for the data collected
    28/02/2020 for each model using the Carr and Madan method.

        Parameters       σ        V0          θ        κ            ρ        λ        δ        k̄
        Heston           0.555    0.375       0.224    10.9         0.996    -        -        -
        Merton           0.518    -           -        -            -        0        0        0
        Bates            0.397    0.212       0.0688   9.22         0.784    6.48     0.0054   0.161
        BSM              0.518    -           -        -            -        -        -        -

                                                   A-1
Table A.5 – The calibrated parameters for the Disney data for the data collected
28/02/2020 for each model using the Carr and Madan method.

 Parameters     σ        V0         θ        κ        ρ           λ        δ              k̄
 Heston         0.769    0.145      0.0414   4.00     -0.468      -        -              -
 Merton         0.307    -          -        -        -           0.0562   2.89e-5        2.34e-5
 Bates          0.576    0.135      0.0234   3.68     -0.649      0.816    0.112          0.0154
 BSM            0.307    -          -        -        -           -        -              -

Table A.6 – The calibrated parameters for the Disney data for the data collected
02/03/2020 for each model using the Carr and Madan method.

 Parameters     σ        V0         θ         κ       ρ           λ        δ              k̄
 Heston         0.242    0.101      0.0130    2.68    0.856       -        -              -
 Merton         0.275    -          -         -       -           0.0274   1.92e-5        6.48e-5
 Bates          0.205    0.0774     0.0128    8.36    0.344       2.82     4.93e-4        0.112
 BSM            0.275    -          -         -       -           -        -              -

Table A.7 – The calibrated parameters for S&P 500 for the data collected 13/2/2020 for
each model using the Carr and Madan method.

  Parameters     σ        V0        θ         κ        ρ          λ        δ              k̄
  Heston         0.134    0         0.0148    16.2     0.998      -        -              -
  Merton         0.121    -         -         -        -          0.0488   0              0
  Bates          0.143    0.001     0.0136    14.3     0.999      0.875    0.0285         0.0229
  BSM            0.121    -         -         -        -          -        -              -

Table A.8 – The calibrated parameters for S&P 500 for the data collected 02/03/2020
for each model using the Carr and Madan method.

     Parameters      σ         V0   θ         κ           ρ        λ       δ         k̄
     Heston          0.662     0    0.116     0.176       0.240    -       -         -
     Merton          0.107     -    -         -           -        0       0         0
     Bates           0.204     0    0.0443    0.443       0.391    0.001   0.001     0.001
     BSM             0.107     -    -         -           -        -       -         -

                                             A-2
B     More results
    Table B.1 – The root mean square error (rmse), the average absolute error as a per-
    centage of the mean price (ape), the average absolute error (aae) and the average relative
    percentage error (arpe) of the Apple data collected 28/02/2020 for the different models.

                         Model      rmse    ape       aae     arpe (%)
                         Heston     0.481   0.0061    0.354   0.91%
                         Bates      0.816   0.0110    0.640   0.94%
                         Merton     3.59    0.0555    3.21    7.83%
                         BSM        3.83    0.0655    3.80    7.49%

    Table B.2 – The root mean square error (rmse), the average absolute error as a per-
    centage of the mean price (ape), the average absolute error (aae) and the average relative
    percentage error (arpe) of the Apple data collected 02/03/2020 for the different models.

                         Model      rmse    ape       aae     arpe (%)
                         Heston     1.07    0.0170    1.02    1.99%
                         Bates      0.743   0.0106    0.634   1.11%
                         Merton     4.49    0.0674    4.05    9.35%
                         BSM        3.68    0.0599    3.59    6.46%

                                               B-3
You can also read