Download 3. Monte Carlo Simulations - Department of Mathematics and Statistics

Document related concepts

Black–Scholes model wikipedia , lookup

Lattice model (finance) wikipedia , lookup

Transcript
3. Monte Carlo Simulations
Math6911 S08, HM Zhu
References
1. Chapters 4 and 8, “Numerical Methods in Finance”
2. Chapters 17.6-17.7, “Options, Futures and Other
Derivatives”
3. George S. Fishman, Monte Carlo: concepts,
algorithms, and applications, Springer, New York,
QA 298.F57, 1995
2
Math6911, S08, HM ZHU
3. Monte Carlo Simulations
3.1 Overview
Math6911 S08, HM Zhu
Monte Carlo Simulation
• Monte Carlo simulation, a quite different approach from
binomial tree, is based on statistical sampling and
analyzing the outputs gives the estimate of a quantity
of interest
Math6911, S08, HM ZHU
Monte Carlo Simulation
• Typically, estimate an expected value with respect to
an underlying probability distribution
– eg. an option price may be evaluated by computing
the expected payoff w.r.t. risk-neutral probability
measure
• Evaluate a portfolio policy by simulating a large
number of scenarios
• Interested in not only mean values, but also what
happens on the tail of probability distribution, such as
Value-at-risk
Math6911, S08, HM ZHU
Monte Carlo Simulation in Option Pricing
• In option pricing, Monte Carlo simulations uses the
risk-neutral valuation result
• More specifically, sample the paths to obtain the
expected payoff in a risk-neutral world and then
discount this payoff at the risk-neutral rate
Math6911, S08, HM ZHU
Learning Objectives
• Understanding the stochastic processes of the
underlying asset price.
• How to generate random samplings with a given
probability distribution
• Choose an optimal number of simulation experiments
• Reliability of the estimate, e.g. a confidence interval
• Estimate error
• Improve quality of the estimates: variance reduction
techniques, quasi-Monte Carlo simulations.
Math6911, S08, HM ZHU
3. Monte Carlo Simulation
3.2 Modeling Asset Price Movement
Math6911 S08, HM Zhu
Randomness in stock market
9
Math6911, S08, HM ZHU
Outlines
1.
2.
3.
4.
5.
Markov process
Wiener process
Generalized Wiener process
Ito’s process, Ito’s lemma
Asset price models
10
Math6911, S08, HM ZHU
References
1. Chapter 12, “Options, Futures, and Other Derivatives”
2. Appendix A for Introduction to MATLAB, Appendix B for
review of probability theory, “Numerical Methods in
Finance: A MATLAB Introduction”
11
Math6911, S08, HM ZHU
Markov process
• A particular type of stochastic process whose future
probability depends only on the present value
• A stochastic process x(t) is called a Markov process if for
every n and t1 < t 2 < < t n , we have
P(x(t n ) ≤ xn x(t ) for all t ≤ t n −1 ) = P (x(t n ) ≤ xn x(t n −1 ))
• The Markov property implies that the probability
distribution of the price at any particular future time is not
dependent on the particular path followed by the price in
the past
12
Math6911, S08, HM ZHU
Modeling of asset prices
• Really about modeling the arrival of new info that affects
the price.
• Under the assumptions,
ƒ The past history is fully reflected in the present asset
price, which does not hold any further information
ƒ Markets respond immediately to any new information
about an asset
• The anticipated changes in the asset price are a Markov
process
13
Math6911, S08, HM ZHU
Weak-Form Market Efficiency
• This asserts that it is impossible to produce
consistently superior returns with a trading rule
based on the past history of stock prices. In
other words technical analysis does not work.
• A Markov process for stock prices is clearly
consistent with weak-form market efficiency
Math6911, S08, HM ZHU
Example of a Discrete Time Continuous
Variable Model
• A stock price is currently at $40.
• Over one year, the change in stock price has
a distribution Ν(0,10) where Ν(µ,σ) is a
normal distribution with mean µ and standard
deviation σ.
Math6911, S08, HM ZHU
Questions
• What is the probability distribution of the change of the
stock price over 2 years?
– ½ years?
– ¼ years?
– ∆t years?
• Taking limits we have defined a continuous variable,
continuous time process
Math6911, S08, HM ZHU
Variances & Standard Deviations
• In Markov processes, changes of the variable in
successive periods of time are independent. This
means that:
– Means are additive
– variances are additive
– Standard deviations are not additive
Math6911, S08, HM ZHU
Variances & Standard Deviations
(continued)
• In our example it is correct to say that the variance
is 100 per year.
• It is strictly speaking not correct to say that the
standard deviation is 10 per year.
Math6911, S08, HM ZHU
A Wiener Process (See pages 265-67, Hull)
•
•
•
Consider a variable z follows a particular Markov
process with a mean change of 0 and a variance rate
of 1.0 per year.
The change in a small interval of time ∆t is ∆z
The variable follows a Wiener process if
1.∆ z = ε ∆t where ε is N(0,1)
2. The values of ∆z for any 2 different (nonoverlapping) periods of time are independent
Math6911, S08, HM ZHU
Properties of a Wiener Process
∆z over a small time interval ∆t:
Mean of ∆z is 0
Variance of ∆z is ∆t
Standard deviation of ∆z is ∆t
∆z over a long period of time, T:
Mean of [z (T ) – z (0)] is 0
Variance of [z (T ) – z (0)] is T
Standard deviation of [z (T ) – z (0)] is
Math6911, S08, HM ZHU
T
Taking Limits . . .
• What does an expression involving dz and dt mean?
• It should be interpreted as meaning that the
corresponding expression involving ∆z and ∆t is true in
the limit as ∆t tends to zero
• In this respect, stochastic calculus is analogous to
ordinary calculus
Math6911, S08, HM ZHU
Generalized Wiener Processes
(See page 267-69, Hull)
• A Wiener process has a drift rate (i.e. average
change per unit time) of 0 and a variance rate of 1
• In a generalized Wiener process the drift rate and
the variance rate can be set equal to any chosen
constants
• The variable x follows a generalized Wiener
process with a drift rate of a and a variance rate of
b2 if
dx=a dt + b dz
Math6911, S08, HM ZHU
Generalized Wiener Processes
(continued)
∆x = a ∆t + b ε ∆t
• Mean change in x in time ∆t is a ∆t
• Variance of change in x in time ∆t is b2 ∆t
• Standard deviation of change in x in time ∆t
is b ∆t
Math6911, S08, HM ZHU
Generalized Wiener Processes
(continued)
∆x = a T + b ε T
• Mean change in x in time T is aT
• Variance of change in x in time T is b2T
• Standard deviation of change in x in time T
is
b T
Math6911, S08, HM ZHU
Example
• A stock price starts at 40 and at the end of one year, it
has a probability distribution of N(40,10)
• If we assume the stochastic process is Markov with no
drift then the process is
dS = 10dz
• If the stock price were expected to grow by $8 on
average during the year, so that the year-end
distribution is N (48,10), the process would be
dS = 8dt + 10dz
• What the probability distribution of the stock price at
the end of six months?
Math6911, S08, HM ZHU
Itô Process (See pages 269, Hull)
• In an Itô process the drift rate and the variance rate
are functions of time
dx=a(x,t) dt+b(x,t) dz
• The discrete time version, i.e., ∆x over a small time
interval (t, t+∆t)
∆x = a ( x, t ) ∆t + b ( x, t )ε ∆t
is only true in the limit as ∆t tends to zero
Math6911, S08, HM ZHU
Why a Generalized Wiener Process
is not Appropriate for Stocks
• For a stock price we can conjecture that its expected
percentage change in a short period of time remains
constant, not its expected absolute change in a short
period of time
• We can also conjecture that our uncertainty as to the
size of future stock price movements is proportional to
the level of the stock price
Math6911, S08, HM ZHU
A Simple Model for Stock Prices
(See pages 269-71, Hull)
dS = µ S dt + σ S dz
Itô’s process
where µ is the expected return σ is the volatility.
The discrete time equivalent is
∆ S = µS ∆ t + σS ε ∆ t
Math6911, S08, HM ZHU
Example: Simulate asset prices
• Consider a stock that pays no-dividends, has an
expected return 15% per annum with continuous
compounding and a volatility of 30% per annum.
Observe today’s price $1 per share and with
∆t = 1/250 yr. Simulate a path for the stock price.
G iven S i -1, w e com pute
∆ S = µ S i −1∆ t + σ S i −1ε
T hen
S i = S i −1 +
∆t
∆S
29
Math6911, S08, HM ZHU
Example: Simulate stock prices
Stock Price S
at start of period
1.0000
0.9751
0.9870
1.0099
1.0108
1.0165
1.0140
1.0037
1.0180
0.9927
Random sample
for ε
∆S during a time
period dt
-1.3457
0.6132
1.1928
0.0114
0.2667
-0.1590
-0.5652
0.7189
-1.3431
-1.3913
-0.0249
0.0119
0.0229
0.0008
0.0057
-0.0025
-0.0103
0.0143
-0.0253
-0.0256
30
Math6911, S08, HM ZHU
Example: Simulate stock prices
31
Math6911, S08, HM ZHU
Itô’s Lemma (See pages 273-274, Hull)
• If we know the stochastic process followed by x,
Itô’s lemma tells us the stochastic process followed
by some function G (x, t )
• Since a derivative security is a function of the price
of the underlying and time, Itô’s lemma plays an
important part in the analysis of derivative
securities
Math6911, S08, HM ZHU
Taylor Series Expansion
A Taylor’s series expansion of G(x, t) gives
∂G
∂G
∂ 2G
2
x
∆G =
∆x +
∆t + ½
∆
∂x 2
∂x
∂t
∂ 2G
∂ 2G 2
∆t + …
+
∆x ∆t + ½
2
∂x∂t
∂t
Math6911, S08, HM ZHU
Ignoring Terms of Higher Order Than ∆t and ∆x
In ordinary calculus we have
∂G
∂G
∆G =
∆x +
∆t
∂x
∂t
In stochastic calculus this becomes
∂G
∂G
∂ 2G 2
∆G =
∆x +
∆t + ½
∆x
2
∂x
∂t
∂x
because ∆x has a component which is
of order ∆t
Math6911, S08, HM ZHU
Substituting for ∆x
Suppose
dx = a( x, t )dt + b( x, t )dz
so that
∆x = a ∆t + b ε ∆t
Then ignoring terms of higher order than ∆t
∂G
∂G
∂G 2 2
∆G =
∆x +
∆t + ½ 2 b ε ∆t
∂x
∂t
∂x
2
Math6911, S08, HM ZHU
The ε2∆t Term
Since ε ≈ N (0,1),
E (ε ) = 0
E (ε 2 ) − [E (ε )]2 = 1
E (ε ) = 1
2
It follows that E (ε 2 ∆t ) = ∆t
The variance of ∆t is proportional to ∆t 2 and can
be ignored. Hence
1 ∂ 2G 2
∂G
∂G
b ∆t
∆G =
∆x +
∆t +
2
2∂x
∂x
∂t
Math6911, S08, HM ZHU
Taking Limits
Taking limits
Substituti ng
We obtain
Math6911, S08, HM ZHU
∂ 2G 2
∂G
∂G
dt + ½ 2 b dt
dx +
dG =
∂x
∂t
∂x
dx = a dt + b dz
⎛ ∂G
∂G
∂ 2G 2 ⎞
∂G
b dz
a+
dG = ⎜⎜
+ ½ 2 b ⎟⎟ dt +
∂x
∂x
∂t
⎠
⎝ ∂x
This is Ito' s Lemma
Application of Ito’s Lemma
to a Stock Price Process
The stock price process is
d S = µS dt + σS d z
For a function G of S and t
2
⎛ ∂G
∂G
∂G
∂ G 2 2⎞
σS dz
dG = ⎜⎜
µS +
+ ½ 2 σ S ⎟⎟ dt +
∂S
∂t
∂S
⎠
⎝ ∂S
Math6911, S08, HM ZHU
Example
If G = ln S, then
dG = ?
⎛
σ2 ⎞
dG = ⎜ µ −
⎟ dt + σ dz
2 ⎠
⎝
Generalized Wiener process
Math6911, S08, HM ZHU
A generalized Wiener process for
stock price
The discrete version of this is
(
ln S ( t + ∆ t ) − ln S ( t ) = µ − σ
2
)
/ 2 ∆ t + σε
∆t
or
µ −σ
(
S (t + ∆ t ) = S (t ) e
2
)
/ 2 ∆t +σ ε
∆t
S( t ) follows a lognorm al distribution. It is often referred
to as geom etric Brownian m otio n.
40
Math6911, S08, HM ZHU
Lognormal Distribution
T h e co rre sp o n d in g d e n sity fu n ctio n fo r S ( t ) is
2
2
⎛ ⎛
⎞
⎞
⎛
⎞
σ
⎛
⎞
⎜ − ⎜ lo g ⎜ x
⎟−⎜µ −
⎟t ⎟ ⎟
S
2 ⎠ ⎠ ⎟
0 ⎠
⎝
⎜ ⎝
⎝
e xp ⎜
⎟
2
2
σ
t
⎜
⎟
⎜
⎟
⎝
⎠
f (x ) =
x σ 2π t
fo r x > 0 w ith f ( x ) = 0 fo r x ≤ 0 .
It ca n b e p ro v e n th a t
E (S ( t ) ) = S 0 e µ t
(
E S (t )
2
)
2 µ +σ ) t
(
=S e
2
0
2
(
v a r ( S ( t ) ) = S 02 e 2 µ t e σ
Math6911, S08, HM ZHU
2
t
−1
)
Example: Simulate stock prices
42
Math6911, S08, HM ZHU
Models for stock price in risk neutral
world (r: risk-free interest rate)
In a risk neutral world, two process for the underlying
asset is:
dS = σ S dz + µˆ Sdt
or
(1)
S ( t + ∆t ) − S ( t ) = µˆ S ( t ) ∆t + σ S ( t ) ε ∆t
(
)
d lnS = r − σ 2 / 2 dt + σ dz
or
(2)
(
)
lnS(t + ∆t ) − lnS(t ) = r − σ 2 / 2 ∆t + σε
Math6911, S08, HM ZHU
∆t
43
Which one is more accurate?
• It is usually more accurate to work with InS
because it follows a generalized Wiener process
and (2) is true for any ∆t while (1) is true only in the
limit as ∆t tends to zero.
For all T,
(
)
ln S(T ) − ln S(0) = r − σ 2 / 2 T + σε
T
i.e.,
r −σ
(
S(T ) = S(0)e
2
)
/ 2 T +σε
T
44
Math6911, S08, HM ZHU
3. Monte Carlo Simulation
3.3 Generate pseudo-random variates
Math6911 S08, HM Zhu
Generate pseudorandom variates
The usual way to generate psedorandom variates, i.e.,
samples from a given probability distribution:
1. Generate psedurandom numbers, which are variates
from the uniform distribution on the interval (0, 1). Denote
as U(0, 1)
2. Apply suitable transformation to obtain the desired
distribution
Math6911, S08, HM ZHU
Generate U(0, 1) variables
The standard method is linear congruential generators (LCGs):
1. Given an integer number Zi-1,
Z i = (aZ i −1 + c )(mod m )
where a, c, and m are chosen parameters
2. Return number
Zi
which generate a U(0, 1) variable
m
Comments :
− Z0 : the initial number, the seed of the random sequence.
eg. rand(' seed' , 0) generates the same sequence each time
− LCGs generates rational numbers instead of real ones
m -1
i⎫
⎧
− Periodic. The sequency ⎨U i = ⎬ has a maximum period of m
m ⎭i = 0
⎩
− Improved MATLAB function :rand(' state' , 0) allows much longer periods
Math6911, S08, HM ZHU
Generate U(0, 1) variables
Math6911, S08, HM ZHU
Generate U(0, 1) variables
Math6911, S08, HM ZHU
Generate general distribution
F(x) from U(0, 1)
Given the distribution function F ( x ) = P{X ≤ x}, we can generate
random variates according to F by the following
1. Draw a random number U~U (0 ,1)
2. Return X = F -1 (U )
Proof : Use the monotonicity of F and the fact that U is uniformly
distributed :
{
}
P{X ≤ x} = P F −1 (U ) ≤ x = P{U ≤ F ( x )} = F ( x )
Math6911, S08, HM ZHU
Question
• How to generate samples according to standard
normal distribution N(0,1) from U(0, 1) ?
- No analytical form of the inverse of the distribution
function
- Support is not finite
Math6911, S08, HM ZHU
Generate Samples from Normal
Distribution
One simple way to obtain a sample from Ν(0,1) is as follows
12
x = ∑U i − 6
i =1
where U i are independent random numbers from U(0,1),
and x is the required samples from N(0,1)
Note :
- It is from Central Limit Theorem.
- The approximation is satisfactory for most purposes
Math6911, S08, HM ZHU
Central Limit Theorem
Let X1, X2, X3, ... be a sequence of independent random variables
which has the same probability distribution.
Consider the sum :Sn = X1 + ... + Xn. Then the expected value of Sn
is nμ and its standard deviation is σ n½. Furthermore, informally
speaking, the distribution of Sn approaches the normal distribution
N(nμ,σn1/2) as n approaches ∞.
Or the standardized Sn, i.e.,
Then the distribution of Zn converges towards the standard normal
distribution N(0,1) as n approaches ∞
Math6911, S08, HM ZHU
A Note
Uniform random variable X:
PDF:
⎧ 1
, if x ∈ ( a,b )
⎪
f ( x) = ⎨b − a
⎪⎩ 0 ,
otherwise
Mean:
b+a
E [X] =
2
Variance:
Var ( X )
Math6911, S08, HM ZHU
b − a)
(
=
12
2
Generate Samples from N(0,1):
Box-Muller algorithm
The Box-Muller algorithm can be implemented as follows:
1. Generate two independent uniform samples from U1 ,U 2 ~ U ( 0,1)
2. Set R 2 = −2 log U1 and θ =2π U 2
3. Set X = R cos θ and Y = R sin θ
where X and Y are independent samples from N ( 0,1) .
Note:
- Box and Muller (1958), Ann. Math. Statist., 29:610-611
- Common and more efficient than the previous method.
- But it is costly to evaluate trigonometric functions
Math6911, S08, HM ZHU
Generate Samples from N(0,1):
Improved Box-Muller algorithm
The polar rejection (improved Box-Muller) method:
1. Generate two independent uniform samples from U1 ,U 2 ~ U ( 0,1)
2. Set V1 = 2U1 -1, V2 = 2U 2 -1, and S = V12 + V22
3. If S>1, return to step 1; otherwise, return
-2 ln S
-2lnS
X =
V1 and Y =
V2
S
S
where X and Y are required independent samples from N ( 0,1) .
Note:
- Ahrens and Dieter (1988), Comm. ACM 31:1330-1337
Math6911, S08, HM ZHU
Question
How to generate samples according to
normal distribution N(µ, σ) from N(0, 1)?
Math6911, S08, HM ZHU
To Obtain 2 Correlated Normal Samples
To obtain correlated normal samples ε1 and ε 2 , we first
1. generate two independent stardard normal variates x1 , x 2 ~N ( 0,1)
2. and set
ε1 = µ1 + x1
ε 2 = µ2 + ρ x1 + x2 1 − ρ 2
where ρ is the coefficient of correlation.
Math6911, S08, HM ZHU
To Obtain n Correlated Normal Samples
To obtain n correlated normal samples ε1 ,… , ε n , we first
1. generate n independent stardard normal variates x1 ,… ,xn ~N ( 0,1)
2. and set
ε =µ +U T X
T
U
Here, U = Σ = ⎡⎣ ρij ⎤⎦ is the Cholesky decomposition
of the covariance matrix Σ.
Math6911, S08, HM ZHU
Simulate the correlated asset prices
To simulate the payoff of a derivative
depending on multi-variables, how can we
generate samples of each variables?
µˆ −σ
(
S ( t + ∆t ) = S ( t ) e
i
i
2
i
)
/ 2 ∆t +σ i ε i
∆t
i
60
Math6911, S08, HM ZHU
3. Monte Carlo Simulation
3.4 Choose the number of simulations
Math6911 S08, HM Zhu
How many trials is enough?
X i : Sequence of independent samples from the same distribution
1 M
X ( M ) ≡ ∑ X i : Sample mean, an unbiased estimator to the
M i=1
quantitiy of interest µ = E [ X i ]
2
1 M
⎡⎣ X i − X ( M ) ⎤⎦ : Sample variance
S (M ) =
∑
M − 1 i=1
2
σ2
E ⎡⎢( X ( M ) − µ ) ⎤⎥ = Var ⎡⎣ X ( M ) ⎤⎦ =
: the expected value of square error
⎣
⎦
M
as a way to quantify the quality of our estimator
2
Note that σ 2 can be estimated by the sample variance S 2 ( M )
Math6911, S08, HM ZHU
Number of Simulations and Accuracy
The number of simulation trials carried out depends
on the accuracy required.
M: number of independent trials carried out
µ: expected value of the derivative,
S(M): standard deviation of the discounted payoff
given by the trials.
Math6911, S08, HM ZHU
Standard Errors in Monte Carlo
Simulation
The standard error of the estimate of the option
price based on sample size M is:
σ
M
≈
S2 (M )
M
Clearly as M increases, our estimate is more
accurate
Math6911, S08, HM ZHU
(1-α) Confidence Interval of Monte
Carlo Simulation
In general, the confident interval at level (1- α)
may be computed by
X ( M ) − z1−α / 2
where z1−α / 2
S
2
(M ) < µ < X
( M ) + z1−α / 2
S
2
(M )
M
M
is the critical number from the standard
normal distribution.
Note: Uncertainty is inverse proportional to the square
root of the number of trials
Math6911, S08, HM ZHU
95% Confidence Interval of Monte
Carlo Simulation
A 95% confidence interval for the price V of the
derivative is therefore given by:
X ( M ) − 1.96
Math6911, S08, HM ZHU
S2 (M )
M
< µ < X ( M ) + 1.96
S2 (M )
M
Absolute error
Suppose we want to controlling the absolute error such that,
with probability (1-α ) ,
X (M ) − µ ≤ β ,
where β is the maximum acceptable tolerance.
Then the number of simulations M must satisfy
z1−α / 2 S ( M ) M ≤ β .
2
Math6911, S08, HM ZHU
Relative error
Suppose we want to controlling the relative error such that,
with probability (1-α ) ,
X (M ) − µ
µ
≤γ,
where γ is the maximum acceptable tolerance.
Then the number of simulations M must satisfy
z1−α / 2 S 2 ( M ) M
X (M )
Math6911, S08, HM ZHU
≤
γ
1+ γ
.
3. Monte Carlo Simulation
3.5 Applications in Option Pricing
Math6911 S08, HM Zhu
Monte Carlo Simulation
When used to value a derivative dependent on a market
variable S, this involves the following steps:
1. Simulate 1 path for the stock price in a risk-neutral
world
2. Calculate the payoff from the stock option
3. Repeat steps 1 and 2 many times to get many sample
payoff
4. Calculate mean payoff
5. Discount mean payoff at risk-free rate to get an
estimate of the value of the option
Math6911, S08, HM ZHU
Example: European call
• Consider a European call on a stock with no-dividend
payment. S(0) = $50, E = 52, T = 5 months, and annual
risk-free interest rate r = 10% and a volatility σ= 40% per
annum.
• Black-Schole Price: $5.1911
• MC Price with 1000 simulations: $5.4445
Confidence Interval [4.8776, 6.0115]
• MC Price with 200,000 simulations: $5.1780
Confidence Interval [5.1393, 5.2167]
71
Math6911, S08, HM ZHU
Example: Butterfly Spread
• A butterfly spread consists of buying a European call
option with exercise price K1 and another with exercise
price K3 (K1< K3) and by selling two calls with exercise
price K2 = (K1 + K3)/2, for the same asset and expiry date
• Consider a butterfly spread with S(0) = $50, K1 = $55, K2
= $60, K3 = 65, T = 5 months, and annual risk-free
interest rate r = 10% and a volatility σ= 40% per annum.
• Exact price: $0.6124
• MC price with 100,000 simulations: $0.6095
Confidence Interval [0.6017, 0.6173]
72
Math6911, S08, HM ZHU
Example: Arithmetic Average
Asian Option
• Consider pricing an Asian average rate call option with
discrete arithmetic averaging. The option payoff is
⎧1
max ⎨
⎩N
⎫
−
S
t
K
,
0
( i)
⎬
∑
i =1
⎭
where ti = i∆t and ∆t = T .
N
N
• Consider the option on a stock with no-dividend payment.
S(0) = $50, K = 50, T = 5 months, and annual risk-free
interest rate r = 10% and a volatility σ= 40% per annum.
73
Math6911, S08, HM ZHU
Determining Greek Letters
For ∆:
1. Make a small change to asset price
2. Carry out the simulation again using the same random number streams
3. Estimate ∆ as the change in the option price divided by the change in
the asset price
VMC* −VMC
∆S
Proceed in a similar manner for other Greek letters
74
Math6911, S08, HM ZHU
3. Monte Carlo Simulation
3.6 Further Comments
Math6911 S08, HM Zhu
The parameters in the model
• Our analysis so far is useless unless we know the
parameters µ and σ
• The price of an option or derivative is in general
independent of µ
• However, the asset price volatility σ is critically important
to option price. Typically, 20%< σ < 50%
• Volatility of stock price can be defined as the standard
deviation of the return provided by the stock in one year
when the return is expressed using continuous
compounding
76
Math6911, S08, HM ZHU
Estimate volatility σ from historical
data
Assume:
n + 1: number of observation at fixed time interval
Si : Stock price at end of ith (i = 0, 1, ..., n) interval
∆t : Length of observing time interval in years
⎛ Si ⎞
ui = ln ⎜
⎟ : n number of approximation for the change
⎝ Si −1 ⎠
of ln S over ∆t
77
Math6911, S08, HM ZHU
Estimate volatility σ from historical
data
Compute the standard deviation of the u i ' s :
n
1
2
s=
( ui − u )
∑
i =1
n −1
where the mean of the u i ' s is
1 n
u = ∑ i =1 ui
n
s
∵ s ≈ σ ∆t ∴σ ≈ σˆ =
∆t
The standard error of estimate is about σˆ
Math6911, S08, HM ZHU
2n
78
Advantages and Limitations
• More efficient for options dependent on multiple
underlying stochastic variables. As the number of
variables increase, Monte Carlo simulations increases
linearly while the others increases exponentially
• Easily deal with path dependent options and options
with complex payoffs / complex stochastic processes
• Has an error estimate
• It cannot easily deal with American options
• Very time-consuming
Math6911, S08, HM ZHU
Extensions to multiple variables
When a derivative depends on several underlying
variables we can simulate paths for each of them in
a risk-neutral world to calculate the values for the
derivative
Math6911, S08, HM ZHU
Sampling Through the Tree
• Instead of sampling from the stochastic process we
can sample paths randomly through a binomial or
trinomial tree to value a derivative
Math6911, S08, HM ZHU
3. Monte Carlo Simulation
3.7 Variance Reduction Techniques
Math6911 S08, HM Zhu
Variance Reduction Procedures
• Usually, a very large value of M is needed to
estimate V with reasonable accuracy.
• Variance reduction techniques lead to dramatic
savings in computational time
•
•
•
•
•
•
Math6911, S08, HM ZHU
Antithetic variable technique
Control variate technique
Importance sampling
Stratified sampling
Moment matching
Using quasi-random sequences
Antithetic Variable Technique
Consider to estimate V = E ( f (U ) ) where U ∼ N ( 0 ,1) .
The standard Monte Carlo estimate:
1 M
VMC =
f (U i ) with i.i.d. U i ∼ N ( 0 ,1) .
∑
M i =1
The antithetic variate technique:
1
VAV =
M
We can prove that
M
f (U i ) +f ( −U i )
i =1
2
∑
with i.i.d. U i ∼ N ( 0 ,1)
⎛ f (U i ) +f ( −U i ) ⎞ 1
var ⎜
⎟ = ⎡⎣ var ( f (U i ) ) + cov ( f (U i ) , f ( −U i ) ) ⎤⎦
2
⎝
⎠ 2
1
≤ var ( f (U i ) )
2
if f is monotonic.
Math6911, S08, HM ZHU
Antithetic Variable Technique
It involves calculating two values of the derivative.
V1: calculated in the usual way
V2: calculated by the changing the sign of all
the random standard normal samples used for V1
V is average of the V1 and V2 , the final estimate of the value
of the derivative
Math6911, S08, HM ZHU
Antithetic Variable Technique
Note:
1. Monte-Carlo works when the simulated variables "spread out" as closely
as possible to the true distribution.
2. Antithetic variates relies upon finding samplings that are anticorrelated
with the original random variable.
3. Works well when the payoff is monotonic w.r.t. S
4. Further reading:
--P.P. Boyle, Option: a Monte Carlo approach, J. of Finanical Economics,
4:323-338 (1977)
--Boyle, Broadie and Glasserman, Monte Carlo methods for security pricing
J. of Economic Dynamics and Control, 21: 1267-1321 (1997)
--N. Madras, Lectures on Monte Carlo Methods, 2002
Math6911, S08, HM ZHU
Example: European call
• Consider a European call on a stock with no-dividend
payment. S(0) = $50, K = 52, T = 5 months, and annual
risk-free interest rate r = 10% and a volatility σ= 40% per
annum.
• Black-Schole Price: $5.1911
• MC Price with 200,000 simulations: $5.1780
Confidence Interval [5.1393, 5.2167]
• MCAV Price with 200,000 simulations: $5.1837
Confidence Interval [5.1615, 5.2058] (ratio: 1.75)
87
Math6911, S08, HM ZHU
Example: Butterfly Spread
• Consider a butterfly spread with S(0) = $50, K1 = $55, K2
= $60, K3 = 65, T = 5 months, and annual risk-free
interest rate r = 10% and a volatility σ= 40% per annum.
• Exact price: $0.6124
• MC price with 100,000 simulations: $0.6095
Confidence Interval [0.6017, 0.6173]
• MCAV price with 50,000 simulations: $0.6090
Confidence Interval [0.5982, 0.6198]
88
Math6911, S08, HM ZHU
Control Variate Technique
We can generalize the previous technique to
Zθ = VA +θ ( E (VB ) −VB )
for any θ ∈ . Here, VB is "close" to VA with known mean E (VB ) .
In this case,
var ( Zθ ) = var (VA −θVB )
= var (VA ) − 2θ cov(VA,VB ) +θ 2 var (VB )
We can prove that var ( Zθ ) < var (VA ) if and only if
0 <θ < 2
Math6911, S08, HM ZHU
cov(VA,VB )
var (VB )
.
89
Example: European call
• Consider a European call on a stock with no-dividend
payment. S(0) = $50, K = 52, T = 5 months, and annual
risk-free interest rate r = 10% and a volatility σ= 40% per
annum.
• Black-Schole Price: $5.1911
• MC Price with 200,000 simulations: $5.1780
Confidence Interval [5.1393, 5.2167]
• MCCV Price with 200,000 simulations: $5.1883
Confidence Interval [5.1712, 5.2054] (ratio: 2.2645)
90
Math6911, S08, HM ZHU
Example: Arithmetic Average
Asian Option
• Consider the option on a stock with no-dividend payment.
S(0) = $50, K = 50, T = 5 months, and annual risk-free
interest rate r = 10% and a volatility σ= 40% per annum.
• We could use the sum of the asset prices as a control
variate as we know its expected value and Y is
correlated to the option itself
1− e ( )
⎡
⎤
E ⎢ ∑ S ( t ) ⎥ = ∑ E ⎡⎣ S ( i ∆t ) ⎤⎦ = S ∑ e = S
1− e
⎣
⎦
• Another choice of the control variate is the payoff of a
geometric average option as this is known analytically
N
i =0
N
i
i =0
1
⎧⎪⎛ N
⎫⎪
⎞ N
max ⎨⎜ ∏ S ( ti ) ⎟ − K , 0 ⎬
⎠
⎪⎩⎝ i =1
⎪⎭
Math6911, S08, HM ZHU
N
0
i =0
r N +1 ∆t
ri ∆t
0
r ∆t
91
Importance Sampling Technique
It is a way to distort the probability measure in order to sample from
critical region. For example, in evaluating European call option:
F : the unconditional probability distribution function for the asset
price at time T
q: the probability of the asset price ≥ K at maturity, known analytically
G = F / q: the probability distribution of the asset conditional
on the asset price ≥ K, i.e., importance function
Instead of sampling from F, we sample from G.
Then the value of the option is the average discounted payoff
multiplied by q.
Math6911, S08, HM ZHU
Stratified Sampling Technique
Sampling representative values rather than random values from a
probability distribution is usually more accurate.
It involves dividing the distribution into intervals and
sampling from each interval (stratum) according to the distribution:
m
E [ X ] = ∑ p j E ⎡⎣ X Y = y j ⎤⎦
j =1
where P {Y = y j } = p j for j = 1,
,m, is known.
Note:
1. For each stratum, we sample X conditioned on the even Y = y j
2. The representative values are typically mean or median for each interval
Math6911, S08, HM ZHU
Moment Matching
Moment matching involves adjusting the samples taken from a
standard normal distribution so that the first, second, or possibly
higher moments are matched.
For example, we want to sample from N(0,1).
Suppose that the samples are ε i (1 ≤ i ≤ n). To match the first two moments,
we adjustify the samples by
ε =
*
i
εi − m
s
where m and s are the mean and standard deviation of samples.
The adjusted samples ε i* has the correct mean 0 and standard deviation 1.
We then use the adjusted samples for calculation.
Math6911, S08, HM ZHU
Quasi-Random Sequences
• Also called a low-discrepancy sequence is a sequence
of representative samples from a probability distribution
• At each stage of the simulation, the sampled points are
roughly evenly distributed throughout the probability
space
1
• The standard error of the estimate is proportional to
M
Math6911, S08, HM ZHU
Further reading
• R. Brotherton-Ratcliffe, “Monte Carlo Motoring”,
Risk, 1994:53-58.
• W.H.Press, et al, “Numerical Reciptes in C”,
Cambridge Univ. Press, 1992
• I. M. Sobol, “USSR Computational Mathematics
and Mathematical Physics”, 7, 4, (1967): 86-112;
P. Jaeckel, “Monte Carlo Methods in finance”,
Wiley, Chichester, 2002
• P. Glasserman, “Monte Carlo Methods in Financial
Engineering”, Springer-Verlag, New York, 2004
Math6911, S08, HM ZHU
Further reading
• www.mcqmc.org
• www.mat.sbg.ac.at/~schmidw/links.html
Math6911, S08, HM ZHU
3. Monte Carlo Simulation
Appendix
Math6911 S08, HM Zhu
Asian Options (Chapter 22)
• Payoff related to average stock price
• Average Price options pay:
– Call: max(Save – K, 0)
– Put: max(K – Save , 0)
• Average Strike options pay:
– Call: max(ST – Save , 0)
– Put: max(Save – ST , 0)
99
Math6911, S08, HM ZHU
Asian Options (Chapter 22)
• For arithmetic averaging:
S ave
1
=
N
N
∑ S ( t ),
i =1
i
where T = N ∆t
• For geometric averaging:
S ave = N S ( t1 ) S ( t2 )
Math6911, S08, HM ZHU
S (tN )
10
0
Asian Options (geometric
averaging)
•
Closed form (Kemna & Vorst,1990, J. of Banking and
Finance, 14:113-129) because the geometric average of the
underlying prices follows a lognormal distribution as well.
where N(x) is the cumulative normal distribution function and
Math6911, S08, HM ZHU
10
1
Asian Options (arithmetic
averaging)
• No analytic solution
• Can be valued by assuming (as an
approximation) that the average stock price
is lognormally distributed
• Turnbull and Wakeman, 1991, J. of
Financial and Quantitative Finance, 26:377389
• Levy,1992, J. of International Money and
Finance, 14:474-491
Math6911, S08, HM ZHU
10
2
Example: Asian Put with arithmetric
average
• Consider an Asian Put on a stock with non-dividend
payment. S(0) = $50, X = 50, T = 5 months, and annual
risk-free interest rate r = 10% and a volatility σ= 40% per
annum.
• MC Price with 100,000 simulations: $3.9806
Confidence Interval [3.9195, 4.0227]
• MCAV Price with 100,000 simulations: $3.9581
Confidence Interval [3.9854, 3.9309]
Math6911, S08, HM ZHU
10
3