0% found this document useful (0 votes)
209 views9 pages

Mixed Log Normal Volatility Model OpenGamma

The document describes a mixed log-normal volatility model with two versions. The first version produces a single arbitrage-free volatility smile for a given expiry but not a consistent volatility surface. The second version can produce an arbitrage-free implied volatility surface and corresponding local volatility surface through simple analytic expressions. Both versions represent the terminal stock price as a mixture of log-normal distributions, allowing option prices to be calculated as weighted sums of Black-Scholes prices. The second version also allows derivation of the local volatility surface in closed form.

Uploaded by

mshchetk
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
209 views9 pages

Mixed Log Normal Volatility Model OpenGamma

The document describes a mixed log-normal volatility model with two versions. The first version produces a single arbitrage-free volatility smile for a given expiry but not a consistent volatility surface. The second version can produce an arbitrage-free implied volatility surface and corresponding local volatility surface through simple analytic expressions. Both versions represent the terminal stock price as a mixture of log-normal distributions, allowing option prices to be calculated as weighted sums of Black-Scholes prices. The second version also allows derivation of the local volatility surface in closed form.

Uploaded by

mshchetk
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Mixed Log-Normal Volatility Model

Richard White

First version: 2 August 2012; this version

August 17, 2012


Abstract
We present two versions of a Mixed Log-Normal Volatility Model. The rst is applicable
to produce a single, arbitrage free, volatility smile (i.e. it produces a single terminal Proba-
bility Density Function (PDF) for some expiry) but not a consistent volatility surface. The
second version can produce an arbitrage free implied volatility surface and the corresponding
local volatility surface via simple analytic expressions. These surfaces are useful for testing
other numerical methods, in particular methods to calculate the fair value of variance swaps
as the true value is known from the parameters of the model via another simple expression.
1 Single Horizon Model
Let the terminal stock price S
T
be given by
S
T
= F
T
e
X
(1)
where F
T
is the forward and X is a random variable with density (x) given by a mixture of
normal distributions:
(x) =
N

i=1
w
i

_
x;
_


2
i
2
_
T,
2
i
T
_
N

i=1
w
i
= 1 w
i
0 i (2)
where (x; ,
2
) denotes a normal distribution with mean and variance
2
. In order that
E[S
T
] = F
T
, we we require E[e
X
] = 1, hence
N

i=1
w
i
e

i
T
= 1 (3)
Except in the special case of
i
= 0 i, equation 3 can only be satised at one expiry T - this is
why this setup can only produce a single smile not a full volatility surface.
The price of a European call is given by
C(T, k) = P(0, T)
_

(F
T
e
x
k)
+
(x)dx
= P(0, T)
N

i=1
w
i
B(F

i
, k, T,
i
)
(4)

[email protected]

Version 1.1
1
where F

i
= F
T
e

i
T
and B() is the Black formula for the forward price
B(F, k, T, ) = F(d
1
) k(d
2
)
d
1
=
ln
_
F
K
_
+

2
T
2

T
d
2
= d
1

T
(5)
Where () is the cumulative Normal distribution. Hence options prices in this model are
given simply by a weighted sum of Black prices. Implied volatilities are found by numerically
inverting (root nding) the Black formula in the the usual way. Clearly Greeks are also given by
the weighted sum of Black greeks.
1.1 Calibration
If the drifts are all set to zero, then the model has 2N 1 free parameters (one free parameter
is absorbed by the weights constraint

N
i=1
w
i
= 1) - the N volatilities and the N1 parameters
that form the weights. Call these N 1 parameters the vector y R
N1
, then we require a
mapping
y w such that
N

i=1
w
i
= 1 and w
i
0 i (6)
Various non-linear mappings (normally trigonometric functions) exist and are discussed in the
appendix. Calibration can then proceed by nding the 2N 1 parameters that minimised the
squared dierence between the model and market prices.
1
In the case of non-zero drifts, there are 3N 2 free parameters. Let a
i
w
i
e

i
T
, then
the second constraint is

N
i=1
a
i
= 1 a
i
0 i, which is exactly the same form as the
weight constraint. Having found the a
i
from an additional N 1 free parameters, the drifts are

i
=
1
T
ln
_
a
i
w
i
_
. So once again calibration can then proceed by nding the 3N 2 parameters
that minimised the squared dierence between the model and market prices.
1.2 Variation of the Model
The constraint of equation 3 can be rewritten as
N

i=1
w
i

F
i
= 1 where

F
i
=
F

i
F
T
(7)
and the call price as
C(T, k) = P(0, T)F
T
N

i=1
w
i
B(

F
i
, x, T,
i
) (8)
where x =
k
F
T
is the moneyness. If the relative forward terms,

F
i
, are treated as constant
across expiries, then equation 8 gives European option prices for all T and k while preserving
the forward. However the interpretation is thus: at time zero, the stock price, S
0
, jumps to one
of N levels

F
i
S
0
, it then follows a geometrical Brownian motion with volatility
i
such that
E[S
t
|state
i
] =

F
i
F
t
and E[S
t
] =
N

i=1
w
i
E[S
t
|state
i
] = F
t
(9)
1
It is best to do this between market and model implied volatilities or prices weighted by vega.
2
This jump at time zero is somewhat unphysical and means it is not possible to delta hedge.
2 Multi Horizon Model
We make small change from equation 1 and write the stock price as
S
t
= F
t
e
X
t

t
(10)
where
t
is the drift compensator, which ensures that E[S
t
] = F
t
t. Its value is given by

t
= ln
_
N

i=1
w
i
e

i
t
_
(11)
Writing the relative forward,

F
i
(t) as

F
i
(t) e

i
t
t

i
t

N
i=1
w
i
e

i
t
(12)
then the call price is again given by
C(T, k) = P(0, T)F
T
N

i=1
w
i
B(

F
i
(T), x, T,
i
) (13)
however the interpretation is dierent: at time zero the stock goes into one of N states, but the
stock price does not jump, instead it follows a geometrical Brownian motion with volatility
i
such that
E[S
t
|state
i
] = F
t
e

i
t
t
and E[S
t
] =
N

i=1
w
i
E[S
t
|state
i
] = F
t
(14)
Since we can nd an arbitrage free price at any expiry, T, and any strike, k, we can nd the
corresponding implied volatility, hence we have a complete volatility surface.
2.0.1 Implied Volatility for T 0
For an ATM option we have
C(T, F) = F
_
2
_

T
2
_
1
_
(15)
so for small times
2
(or zero drifts) the ATM implied volatility is
(T, F) =
2

1
_
N

i=1
w
i

T
2
__
(16)
2
small times mean when diusion dominates, i.e.

t t t

2
, and since is nearly always
numerically greater than , this means any time signicantly less than a year.
3
In the limit of T 0 this becomes
3
(0, F) =
N

i=1
w
i

i
(17)
This should be very accurate for expiries less than a few days.
2.1 Local Volatility
Dening the fractional call price[Whi12b] as

C(T, x) =
C(T, xF
T
)
P(0, T)F
T
(18)
we have

C(T, x) =
N

i=1
w
i
B(

F
i
(T), x, T,
i
) (19)
The local volatility can be found by a slight modication of the Dupire formula [Dup94,
Whi12b]
(T, x)
2
= 2


C
T
x
2

2
C
x
2
(20)
The local volatility given here is parameterised by moneyness, x - the local volatility parame-
terised by strike, k, is given by (T, k) =
_
T,
k
F
T
_
.
The term in the denominator of equation 20,

2

C
x
2
, is the (modied) dual gamma. It is given
by

2

C
x
2

x
=
N

i=1
w
i

x
(

F
i
(T), x, T,
i
)
where
x
(F, x, T, ) =
(d
2
)
x

T
=
F(d
1
)
x
2

T
(21)
() is the Normal PDF.
The numerator is the modied theta
4
, it is given by


C
T
=
N

i=1
w
i
_
(

F
i
(T), x, T,
i
) + (

F
i
(T), x, T,
i
)


F
i
(T)
T
_
where (F, x, T, ) =
F(d
1
)
2

T
, (F, x, T, ) = (d
1
)
and


F
i
(T)
T
=

F
i
(T) (
i

T
) where

T
=

N
j=1
w
j

j
e

j
T

N
j=1
w
j
e

j
T
(22)
3
We have used the well know result that (x)
1
2
+
x

2
for x 0
4
theta is normally dened as an options time decay - the change in price with respect to calendar time. The
theta here is the sensitivity of (fractional) option price to expiry.
4
Putting this all together, we have an expression for the local volatility
(T, x)
2
=

N
i=1
w
i

F
i
(T)
_
(d
1,i
)
i
+ 2

T(d
1,i
)(
i

T
)
_

N
i=1
w
i

F
i
(T)
(d
1,i
)

i
where d
1,i
=
ln
_

F
i
(T)
x
_
+

2
i
T
2

T
(23)
It should be noted that switching from call delta, (d
1,i
), to put delta, (d
1,i
) (d
1,i
) 1,
gives the same local volatility (as it must) by virtue of the denition of

T
, and one should use
the one for out of the money options (i.e. call for strike greater than forward).
2.1.1 Calendar Arbitrage
While the denominator of equation 20 is always positive, the numerator is not. If the numerator
does become negative, the local volatility does not exist at that point and the model is not valid
for times at and beyond that point. The condition
N

i=1
w
i

F
i
(T)
_
(d
1,i
)
i
+ 2

T(d
1,i
)(
i

T
)
_
0 T, x (24)
cannot be satised for arbitrary - this limits its applications as care must be taken in the
choice of parameters.
2.1.2 Regularisation
At extreme strikes, the values |d
1,i
| can be quite large and thus the (d
1,i
) terms are very small -
this division of two very small numbers can give spurious results (and not-a-number in extreme
cases). If j is the index of the smallest value of |d
1,i
| and we dividend top and bottom by (d
1,j
),
we rewrite the expression as as
(T, x)
2
=

N
i=1
w
i

F
i
(T)
_
exp
_
d
2
1,j
d
2
1,i
2
_

i
+ 2

2T exp
_
d
2
1,j
2
_
(d
1,i
)(
i

T
)
_

N
i=1
w
i

F
i
(T)

i
exp
_
d
2
1,j
d
2
1,i
2
_ (25)
The term exp
_
d
2
1,j
2
_
(d
1,i
) can still be problematic, however for very large negative d
1,i
we can
use the approximation
(x)
(x)

1 +x
2
for x 0 (26)
and write the term as
exp
_
d
2
1,j
2
_
(d
1,i
)
exp
_
d
2
1,j
d
2
1,i
2
_

2
_
1 +d
2
1,i
(27)
2.1.3 Local Volatility for T 0
In the limit of T 0, the ATM (i.e. x = 1) local volatility is given by
(0, 1)
2
=

N
i=1
w
i

N
i=1
w
i

i
(28)
5
If we dene y =
ln(x)

T
then the local volatility for T 0 is
(T, x)
2
=

N
i=1
w
i
exp
_

y
2
2
2
i
_

N
i=1
w
i
exp
_

y
2
2
2
i
_
1

i
(29)
That is, it is a function of y only. For T < T
0
where T
0
is some small expiry cut-o
5
, we have
(T, x) =
_
T
0
, x

T
0
T
_
(30)
In this way we can extrapolate the local volatility surface to T = 0 without numerical problems.
2.2 Variance Swaps
The pricing of variance swaps from implied and local volatility surfaces is discussed here [Whi12a].
When the underlying is a pure diusion process (i.e. no jumps), the expected value of the
annualised realised variance is given by [DDKZ99, Gat06]
EV (T) =
2
T
E
_
ln
_
S
T
F
T
__
(31)
For the mixed log-normal model this becomes
EV (T) =
2
T
(E[X
T
]
T
)
=
2
T
_
N

i=1
w
i
_


2
i
2
_
T ln
_
N

i=1
w
i
e

i
T
__
= 2
_
1
T
ln
_
N

i=1
w
i
e

i
T
_

i=1
w
i
_


2
i
2
_
_
(32)
In the limit of T 0 (or
i
= 0 i) this becomes simply
EV (T 0) =
N

i=1
w
i

2
i
(33)
So we have a very simple formula for the exact value of a variance swap under a mixed log-normal
model. The volatility surfaces (implied and local) that this model produces can be treated as
extraneously given, and use in numerical procedures to calculate the value of variance swaps -
thus providing an excellent test of the numerical procedures.
2.3 Examples
Figures 1 and 2 show the implied and local volatility surfaces from a model with N = 3, w =
{0.7, 0.25, 0.05}, = {0.3, 0.6, 1.0} and = {0.0, 0.3, 0.5}. The spot is 100 and drift is 5%.
5
T
0
= 10
4
is general suitable
6
0
.
0
1
0
.
0
8
9
6
0
.
1
6
9
2
0
.
2
4
8
8
0
.
3
2
8
4
0
.
4
0
8
0
.
4
8
7
6
0
.
5
6
7
2
0
.
6
4
6
8
0
.
7
2
6
4
0
.
8
0
6
0
.
8
8
5
6
0
.
9
6
5
2
1
.
0
4
4
8
1
.
1
2
4
4
1
.
2
0
4
1
.
2
8
3
6
1
.
3
6
3
2
1
.
4
4
2
8
1
.
5
2
2
4
1
.
6
0
2
1
.
6
8
1
6
1
.
7
6
1
2
1
.
8
4
0
8
1
.
9
2
0
4
2
0.30
0.40
0.50
0.60
0.70
0.80
0.90
1.00
1
0
1
9
2
7
3
6
4
5
5
4
6
2
7
1
8
0
8
8
9
7
1
0
6
1
1
4
1
2
3
1
3
2
1
4
1
1
4
9
1
5
8
1
6
7
1
7
5
1
8
4
1
9
3
2
0
1
2
1
0
2
1
9
2
2
8
2
3
6
2
4
5
2
5
4
2
6
2
2
7
1
2
8
0
2
8
8
2
9
7
Expiry
strike
Implied Volatility
Figure 1: The Implied Volatility Surface from a mixed log-normal model.
0
0
.
0
8
0
.
1
6
0
.
2
4
0
.
3
2
0
.
4
0
.
4
8
0
.
5
6
0
.
6
4
0
.
7
2
0
.
8
0
.
8
8
0
.
9
6
1
.
0
4
1
.
1
2
1
.
2
1
.
2
8
1
.
3
6
1
.
4
4
1
.
5
2
1
.
6
1
.
6
8
1
.
7
6
1
.
8
4
1
.
9
2
2
0.30
0.40
0.50
0.60
0.70
0.80
0.90
1.00
1.10
1.20
1.30
1
0
1
9
2
7
3
6
4
5
5
4
6
2
7
1
8
0
8
8
9
7
1
0
6
1
1
4
1
2
3
1
3
2
1
4
1
1
4
9
1
5
8
1
6
7
1
7
5
1
8
4
1
9
3
2
0
1
2
1
0
2
1
9
2
2
8
2
3
6
2
4
5
2
5
4
2
6
2
2
7
1
2
8
0
2
8
8
2
9
7
time
spot
Local Volatility
Figure 2: The LocalVolatility Surface from a mixed log-normal model.
7
A Sum to a Fixed Number Constraint
The constraint
N

i=1

2
i
= C C > 0 (34)
where C is some constant, occurs frequently We can rescale to C = 1 without any loss of
generality. The constraint
N

i=1
w
i
= 1 w
i
0 i (35)
is equivalent by setting w
i
=
2
i
. For N = 2 the obvious solution is

1
= cos

2
= sin
(36)
where the angle is unconstrained
6
. The vector = (
1
,
2
)
T
, lies on the unit circle. This can
be extended to higher dimensions by describing a point on the N-dimensional unit hypersphere
using N 1 angles. One such scheme [Reb04] is to build the N scheme from the N 1 scheme.
If the vector
N1
satises equation 34 then

N
i
=
_
c
1
for i = i
s
1

N1
i
for i > 1
where s
i
sin
i
& c
i
cos
i
(37)
will also satisfy the equation. Starting from the N = 2 case, the general expression is

i
=
_
i2

k=1
s
k
_

_
c
i
for i < N
s
N1
for i = N 1
(38)
where the product term is set to 1 if it contains no terms (i.e. i < 3).
This does not evenly distribute the number of trigonometric terms among the s -
N
has
N 1 terms while
1
has only a single cosine. This means that a uniformly distributed set of
points in the N 1 hypercube, will map to a set of points heavily concentrated around the poles
of the hypersphere.
7
The eect grows with N and can aect search algorithms.
In order to democratise the distribution of trigonometric terms, we prepose the following
scheme. Firstly assume that we have two schemes of size N
1
and N
2
with vectors
N
1
and
N
2
both satisfying equation 34. The scheme for N = N
1
+N
2
is then

i
=
_
s
N1

N
1
i
for i N
1
c
N1

N
2
iN
1
for i > N
1
(39)
and it is easy to verify that this also satises equation 34. So by partitioning N into two near
equal sized parts N
1
and N
2
and repeating until N = 1, we can build up the scheme starting
6
of course only some 2 range is unique.
7
This is the opposite of what happens when a global is projected onto a plane (i.e. a map), making Greenland
disproportionally large.
8
from the trivial
N=1
1
= 1. For the case of N = 7 the following scheme results:

1
= s
1
s
2
s
4

2
= s
1
s
2
c
4

3
= s
1
c
2
s
5

4
= s
1
c
2
c
5

5
= c
1
s
3
s
6

6
= c
1
s
3
c
6

7
= c
1
c
3
1
(40)
We have included the multiply by 1 term in
7
for clarity. The maximum number of trigono-
metric terms for any is log
2
N and the minimum is one less than this. Also the number of
multiplication has been reduced from
N(N1)
2
to N log
2
N.
References
[DDKZ99] Demeter, Derman, Kamal, and Zou. More than you ever wanted to know about
volatility swaps. Technical report, Goldman Sachs Quantitative Strategies Research
Notes, 1999.
[Dup94] Bruno Dupire. Pricing with a smile. Risk, 7(1):1820, 1994. Reprinted in Derivative
Pricing:The Classical Collection, Risk Books (2004).
[Gat06] J. Gatheral. The Volatility Surface: a Practitioners Guide. Finance Series. Wiley,
2006.
[Reb04] Riccardo Rebonato. Volatility and Correlation. John Wiley & Sons, 2nd edition,
2004.
[Whi12a] Richard White. Equity variance swap with dividends. Technical report,
OpenGamma working paper, 2012. http://developers.opengamma.com/
quantitative-research/Equity-Variance-Swaps-with-Dividends-OpenGamma.
pdf.
[Whi12b] Richard White. Local volatility. OG notes, OpenGamma, 2012. http://developers.
opengamma.com/quantitative-research/Local-Volatility-OpenGamma.pdf.
9

You might also like