3 Variance Reduction
3 Variance Reduction
3. Variance Reduction
Module Leader
Prof Ioannis Kyriakou
[Link]@[Link]
Bayes Business School
City, University of London
1/50
2/50
3/50
• We have seen previously that the standard error of a price estimate depends on the
number of simulations M:
◦ Higher M results in lower standard error
◦ However, increasing M results in higher computational time
◦ We would like to achieve further variance reduction (reduced standard error) without
significant increase of the computational cost.
• In this module, we consider three popular variance reduction techniques:
◦ Control variate sampling
◦ Antithetic variate sampling
◦ Stratified sampling.
4/50
superscript “j”), which in Monte Carlo we “traditionally” estimate using the sample
mean
M
1 X (j)
µ̂C (M) = C .
M
j=1
• Also,
M
1 X
(j)
1 1
Var (µ̂C (M)) = Var C = 2 M Var(C ) = σC2 , (1)
M2 M M
j=1
6/50
• Suppose that in each simulation j, we calculate some additional output P (j) along
with C (j) .
• Key features of control variates:
M
◦ (Across j) the pairs C (j) , P (j) j=1 are IID (identical distribution: drop superscript
“j”)
◦ (For given j) C (j) and
P (j) are not identically distributed but correlated
◦ Expectation E P (j) = E (P) =: µP is known.
• For some fixed constant b, construct:
(j)
Cb := C (j) − b P (j) − µP .
7/50
• Call µ̂Cb (M) the control variate estimator: we say that the term µ̂P (M) − µP
serves as control in estimating µC .
• The control variate estimator is still unbiased as
M
1 X (j) 1
E (µ̂Cb (M)) = E Cb = ME (Cb )
M M
j=1
= E (C ) − b (E (P) − µP ) = µC − b (µP − µP )
= µC .
8/50
9/50
M
1 X (j) 2
σ̂C2 b (M) := Cb − µ̂Cb (M) .
M −1
j=1
1 2
• Given the estimates µ̂Cb (M) and M σ̂Cb (M), 100α% confidence intervals can also be
constructed (in virtue of the Central Limit Theorem for large M):
−1
α σ̂Cb (M)
µ̂Cb (M) ± Φ 0.5 + √ ,
2 M
10/50
σC σC σP ρC ,P Cov(C , P)
b∗ = ρC ,P = = .
σP σP2 σP2
dσC2 b !
= 2bσP2 − 2σC σP ρC ,P = 0.
db
• We get from (1) and (2) with b = b ∗ that
σ 2 + b ∗2 σP2 − 2b ∗ σC σP ρC ,P
Var µ̂Cb∗ (M)
= C = 1 − ρ2C ,P . (3)
Var (µ̂C (M)) σC2
• Expression (4) is the slope of the least-squares regression line through the points
(j) (j) M
C ,P j=1
.
• Note. b̂ ∗ has to be computed first separately based on an independent set of M
simulations to the ones used to calculate the control variate estimate, otherwise an
amount of bias is introduced.
12/50
does not admit a true closed form pricing formula: no true explicit formula for
E (Cn ) is known.
• This is because the distribution law of the arithmetic average is not known: a sum
of lognormal random variables is not lognormal!
• Hence, a possible way of computing E (Cn ) is by Monte Carlo simulation as
explained previously.
13/50
14/50
• An option on the geometric average can thus be evaluated using the modified
Black–Scholes formula:
h i
µP = E (Pn ) = e −rT S0 e (r −q)T̄ Φ (d1 ) − K Φ (d2 ) ,
where
σ̄ 2
1 S0
d1 := √ ln + r −q+ T̄ ,
σ̄ T̄ p K 2
d2 := d1 − σ̄ T̄ ,
Φ is the standard normal CDF, and modified parameters T̄ , σ̄, q are applied where
indicated above.
• In addition, arithmetic and geometric Asian payoff samples are highly correlated,
hence the geometric Asian option can serve as a control variate in the simulation of
the arithmetic Asian option.
15/50
• Exercise 1. Modify the Matlab script file from Exercise 3 in the slides of the previous
topic to include a control variate in the shape of a geometric Asian call option.
16/50
Figure: Asian call option. Comparisons of distributions of different estimators: reducing sampling
uncertainty from “crude” estimator to control variate estimator.
17/50
Figure: Arithmetic vs. geometric option payoff samples. Fitted simple linear regression model:
C = 0.0444 + 1.0522P with R 2 = ρ2C ,P = 0.9992 = 99.8% (strong linear relationship).
18/50
19/50
• The technique extends to other distributions through the inverse transform method:
random variables F −1 (U) and F −1 (1 − U) have same distribution F but are
antithetic as F −1 is monotone.
• If F is the standard normal distribution, then F −1 (1 − U) and F −1 (U) have the
same magnitudes but opposite signs (by symmetry of the distribution). See figure:
20/50
21/50
22/50
M
• Let C (j) j=1 be IID outputs of M simulations. In our context, C (j) represents the
superscript “j”).
n oM
• Additionally, let C̃ (j) be IID outputs obtained using an implementation of
j=1
antithetic sampling.
n oM
• In other words, we use as inputs to generate C (j) , C̃ (j) the antithetic pairs:
j=1
(j) (j)
M
◦ Z , −Z in the standard normal case (see slide 29)
j=1
M
F −1 U , F −1 1 − U (j)
(j)
◦ j=1
in the general distribution case.
23/50
24/50
M
!2
1 X C (j) + C̃ (j)
σ̂C2 AV (M) := − µ̂CAV (M) .
M −1 2
j=1
1 2
• Given the estimates µ̂CAV (M) and M σ̂CAV (M), 100α% confidence intervals can also
be constructed (in virtue of the Central Limit Theorem for large M):
−1
α σ̂CAV (M)
µ̂CAV (M) ± Φ 0.5 + √ ,
2 M
28/50
• Condition (6) requires that negative correlation in the inputs Z (j) and −Z (j) used
respectively in the simulation of the stock prices in the GBM model
√
(j) 1 2 (j)
Sn = S0 exp r − σ T + σ TZ ,
2
√
(j) 1 2 (j)
S̃n = S0 exp r − σ T + σ T −Z ,
2
Exercise 2. Write a Matlab script file to price options using antithetic variates:
• Assume a plain vanilla call option with K = S0 = 100, T = 1, σ = 0.3 and r = 0.04.
• Assume an arithmetic average discretely monitored Asian call option with
K = S0 = 100, T = 1, n = 12, σ = 0.3 and r = 0.04.
30/50
Figure: Plain vanilla call option. Comparisons of distributions of different estimators: reducing
sampling uncertainty from “crude” estimator to antithetic variate estimator.
31/50
Figure: Plain vanilla call option. Comparisons of correlations: (Z , −Z̃ ), (S, S̃), (C , C̃ ). Reducing
correlation (absolute terms): ρZ ,−Z = −1.0 > ρS,S̃ = −0.9 > ρC ,C̃ = −0.4.
32/50
Figure: Asian call option. Comparisons of distributions of different estimators: reducing sampling
uncertainty from “crude” estimator to antithetic variate estimator and control variate estimator.
33/50
Figure: Asian call option. Comparisons of correlations: antithetic (left) vs. control variate
samples (right). Strong linear relationship in case of control variates: ρC ,P = 0.999. Weaker
relationship in case of antithetic variates: ρC ,C̃ = −0.4 < 0.
34/50
35/50
• Then, the M̃ random variables V (i,1) , . . . , V (i,M̃) constitute a stratified sample from
the uniform distribution that falls within the i th stratum, i.e.,
V (i,j) ∼ Unif i−1 i
N ,N . 36/50
M̃
• Each of i = 1, . . . , N collections V (i,j)
j=1
is uniformly distributed between
(i − 1)/N and i/N:
(i,j) M̃ M̃ M̃
◦ V j=1
has the distribution of U (i,j) j=1
conditional on U (i,j) j=1
∈ Ai .
• We may generalize into strata of unequal lengths:
◦ If Ai = (ai−1 , ai ], then the distribution of U (i,·) conditional on U (i,·) ∈ Ai is uniform
between ai−1 and ai
◦ We can sample from this conditional distribution by setting
V (i,·) = ai−1 + (ai − ai−1 ) U (i,·) .
37/50
Example. Consider the problem of generating stratified random numbers from the
standard normal distribution:
• Subdivide the space [0, 1] into, say, N = 10 equally spaced strata and generate, say,
M̃ = 1 uniform number forced to be in each stratum: V (1,1) , V (2,1) , . . . , V (10,1)
• Invert the standard normal CDF to obtain 10 stratified standard normal samples (1
−1 (1,1) −1 (2,1) −1 (10,1)
per stratum): Φ V ,Φ V ,...,Φ V .
Note. In Matlab, Φ−1 (·) is computed using norminv (·, 0, 1).
See figure in the following slide for the case of the illustrative example N = 10, M̃ = 1:
of course, method applies for any N and M̃.
38/50
39/50
40/50
41/50
42/50
then by driving the simulation of S with the stratified terminal Brownian motions
(i,j) (i,j)
WT , we also stratify the terminal stock prices ST .
• For terminal discounted path-independent payoff C , we subsequently stratify the
(i,j)
terminal payoff values CT .
• This is a consequence of the fact that ST and CT are monotone transformations of
WT .
• Note. If required to generate a discrete path S1 , . . . , Sn , for the purpose of pricing a
path-dependent option, starting from stratified terminal Sn one has to use the
Brownian bridge (see Glasserman, 2004, Section 4.2.3) – non-examinable.
43/50
Example cont’d for plain vanilla call. Assume N = 10 strata and produce M̃ = 1 sample
(1,1) (2,1) (10,1) (1,1) (2,1) (10,1)
per stratum: WT , WT , . . . , WT ⇒ ST , ST , . . . , ST ⇒
(1,1) (2,1) (10,1)
CT , CT , . . . , CT
44/50
N X M̃
1 X
µ̂Cstrat (N × M̃) := C (i,j) .
N × M̃ i=1 j=1
where σ̂C2 strat (i, M̃) is the sample variance of the M̃ samples of C (i,·) in the i th
stratum.
• (7) represents the average standard error across all strata.
• The 100α% confidence interval is given by:
h α i
µ̂Cstrat (N × M̃) ± Φ−1 0.5 + σ̂Cstrat (N × M̃) ,
2
where Φ−1 denotes the inverse standard normal CDF. 45/50
Exercise 3. Write a Matlab script file to price a plain vanilla call option with
K = S0 = 100, T = 1, σ = 0.3 and r = 0.04 using stratified sampling.
46/50
• In what follows, we show that the geometric average of lognormal random variables
is itself lognormal.
• We have that
n
!1/n
Y
Si = (S1 S2 · · · Sn )1/n
i=1
n n
! !
σ2
1X σX
= S0 exp r− ti + Wi .
2 n n
i=1 i=1
47/50
• Define:
n n
1X σ2 X 1 2
σ̄ 2 = σ − σ̄ 2 .
T̄ = ti , (2i − 1)tn+1−i , q=
n
i=1
n2 T̄ i=1 2
then:
◦ v
n u n
σ X d
p u σ2 X p
Wi = T̄ t 2 (2i − 1)tn+1−i Z = σ̄ T̄ Z
n n T̄
i=1 i=1
48/50
◦
n
!1/n n
! n
!
σ2
Y 1X σX
Si = S0 exp r− ti + Wi
2n n
i=1 i=1 i=1
σ̄ 2
p
d
= S0 exp r −q− T̄ + σ̄ T̄ Z .
2
49/50
50/50