Time Varying Volatility
Time Varying Volatility
Asad Dossani
1 / 53
Time Varying Volatility
2 / 53
Daily S&P 500 Returns
3 / 53
Time Varying Volatility
4 / 53
Historical Volatility
5 / 53
Exponentially Weighted Moving Average
σt2 = (1 − λ)rt−1
2 2
+ λσt−1
6 / 53
Exponentially Weighted Moving Average
σt2 = (1 − λ)rt−1
2 2
+ λσt−1
7 / 53
Autoregressive Conditional Heteroskedasticity
8 / 53
Martingale Difference Sequence
Et−1 (yt ) = 0
9 / 53
ARCH(1) Model: yt ∼ ARCH(1)
We assume the daily log return yt has mean zero. (This assumption
is easily relaxed by first demeaning returns) The volatility is σt > 0,
and is determined by information available before time t. ut is
independent and identically distributed with mean zero and variance
one.
yt = σt ut
σt2 = a0 + a1 yt−1
2
ut ∼ IID(0, 1)
10 / 53
ARCH(1) Model: yt ∼ ARCH(1)
11 / 53
ARCH(1) Model: yt ∼ ARCH(1)
ηt = (ut2 − 1)σt2
Et−1 (ηt ) = σt2 [Et−1 (ut2 ) − 1]
= σt2 [E(ut2 ) − 1]
=0
ηt = σt2 ut2 − σt2
σt2 ut2 = ηt + σt2
12 / 53
ARCH(1) Model: yt ∼ ARCH(1)
13 / 53
ARCH(1) Model: yt ∼ ARCH(1)
|k|
Corr(yt2 , yt+k
2
) = a1
k = 0, ±1, ±2, . . .
14 / 53
ARCH(1) Model: yt ∼ ARCH(1)
yt = σt ut
σt2 = 0.5 + 0.5yt−1
2
ut ∼ IID(0, 1)
15 / 53
ARCH(1) Model: yt ∼ ARCH(1)
16 / 53
ARCH(p) Model: yt ∼ ARCH(p)
yt = σt ut
σt2 = a0 + a1 yt−1
2 2
+ · · · + ap yt−p
a0 > 0, aj ≥ 0
Et−1 (yt ) = σt Et−1 (ut )
=0
Vart−1 (yt ) = σt2 Vart−1 (ut )
= σt2
17 / 53
ARCH(p) Model: yt ∼ ARCH(p)
ηt = (ut2 − 1)σt2
Et−1 (ηt ) = σt2 [Et−1 (ut2 ) − 1]
= σt2 [E(ut2 ) − 1]
=0
yt2 = σt2 ut2
yt2 = σt2 + ηt
yt2 = a0 + a1 yt−1
2 2
+ · · · + ap yt−p + ηt
18 / 53
Forecasting Volatility: yt ∼ ARCH(1)
2
σt+1 = a0 + a1 yt2
2 2
σt+2 = a0 + a1 yt+1
2 2
Et (σt+2 ) = a0 + a1 Et (yt+1 )
2 2
Et (σt+2 ) = a0 + a1 σt+1
2
Et (σt+2 ) = a0 + a1 (a0 + a1 yt2 )
2
Et (σt+2 ) = a0 + a0 a1 + a12 yt2
19 / 53
Forecasting Volatility: yt ∼ ARCH(1)
2 2
σt+k = a0 + a1 yt+k−1
2 2
Et (σt+k ) = a0 + a1 Et (yt+k−1 )
2 2
Et (σt+k ) = a0 + a1 Et (σt+k−1 )
(k−1)
2 a0 (1 − a1 ) (k−1) 2
Et (σt+k )= + a1 σt+1
1 − a1
2 a0 (1 − a1k )
Et (σt+k )= + a1k yt2
1 − a1
20 / 53
Forecasting Volatility: yt ∼ ARCH(1)
yt = σt ut
σt2 = 0.5 + 0.5yt−1
2
ut ∼ IID(0, 1)
2 ) and E (σ 2 ). The final answer should be a
Compute Et (σt+2 t t+k
function of yt and/or σt2 .
2
21 / 53
Forecasting Volatility: yt ∼ ARCH(1)
2 2
σt+2 = 0.5 + 0.5yt+1
2 2
Et (σt+2 ) = 0.5 + 0.5Et (yt+1 )
2 2
Et (σt+2 ) = 0.5 + 0.5σt+1
2
Et (σt+2 ) = 0.5 + 0.5(0.5 + 0.5yt2 )
2
Et (σt+2 ) = 0.75 + 0.25yt2
2 2
σt+k = 0.5 + 0.5yt+k−1
2 2
Et (σt+k ) = 0.5 + 0.5Et (yt+k−1 )
2 2
Et (σt+k ) = 0.5 + 0.5Et (σt+k−1 )
2 0.5(1 − (0.5)k )
Et (σt+k )= + 0.5k yt2
1 − 0.5
2
Et (σt+k ) = 1 − (0.5)k + (0.5)k yt2
22 / 53
Generalized Autoregressive Conditional Heteroskedasticity
yt = σt ut
σt2 = a0 + a1 yt−1
2 2
+ b1 σt−1
ut ∼ IID(0, 1)
a0 > 0, a1 ≥ 0, b1 ≥ 0
1 > a1 + b1
23 / 53
GARCH(1, 1) Model
24 / 53
ARMA(1, 1) Representation
We can represent a GARCH(1, 1) model as an ARMA(1, 1) model.
If yt ∼ GARCH(1, 1), then yt2 ∼ ARMA(1, 1).
ηt = σt2 (ut2 − 1)
yt2 = σt2 ut2
yt2 = σt2 + ηt
yt2 = a0 + a1 yt−1
2 2
+ b1 σt−1 + ηt
yt2 = a0 + a1 yt−1
2 2
+ b1 (yt−1 − ηt−1 ) + ηt
yt2 = a0 + (a1 + b1 )yt−1
2
+ ηt − b1 ηt−1
a0
E (yt2 ) =
1 − (a1 + b1 )
25 / 53
GARCH(1, 1) Model
yt = σt ut
σt2 = 0.5 + 0.25yt−1
2 2
+ 0.25σt−1
ut ∼ IID(0, 1)
26 / 53
GARCH(1, 1) Model
27 / 53
Generalized Autoregressive Conditional Heteroskedasticity
yt = σt ut
p
X q
X
σt2 = a0 + 2
ai yt−i + 2
bj σt−j
i=1 j=1
ut ∼ IID(0, 1)
a0 > 0, ai ≥ 0, bk ≥ 0
p
X q
X
1> ai + bj
i=1 j=1
28 / 53
GARCH(p, q) Model
29 / 53
Stationarity of GARCH Models
ηt = σt2 (ut2 − 1)
max
X p,q q
X
yt2 = a0 + 2
(ai + bi )yt−i + ηt − bj ηt−j
i=1 j=1
30 / 53
Stationarity of GARCH Models
p
X q
X
ai + bj < 1
i=1 j=1
E(yt ) = 0
a0
Var(yt ) =
1 − ( pi=1 ai + qj=1 bj )
P P
31 / 53
Forecasting Volatility: yt ∼ GARCH(1, 1)
2
σt+1 = a0 + a1 yt2 + b1 σt2
2 2 2
σt+2 = a0 + a1 yt+1 + b1 σt+1
2 2 2
Et (σt+2 ) = a0 + a1 Et (yt+1 ) + b1 σt+1
2 2
Et (σt+2 ) = a0 + (a1 + b1 )σt+1
2
Et (σt+2 ) = a0 + (a1 + b1 )(a0 + a1 yt2 + b1 σt2 )
2
Et (σt+2 ) = a0 + a0 a1 + a0 b1 + (a12 + a1 b1 )yt2 + (a1 b1 + b12 )σt2
32 / 53
Forecasting Volatility: yt ∼ GARCH(1, 1)
2 2 2
σt+k = a0 + a1 yt+k−1 + b1 σt+k−1
2 2 2
Et (σt+k ) = a0 + a1 Et (yt+k−1 ) + b1 Et (σt+k−1 )
2 2
Et (σt+k ) = a0 + (a1 + b1 )Et (σt+k−1 )
2 a0 [1 − (a1 + b1 )(k−1) ]
Et (σt+k )= + (a1 + b1 )(k−1) σt+1
2
1 − (a1 + b1 )
2 a0 [1 − (a1 + b1 )k ]
Et (σt+k )= + (a1 + b1 )(k−1) (a1 yt2 + b1 σt2 )
1 − (a1 + b1 )
33 / 53
Forecasting Volatility: yt ∼ GARCH(1, 1)
yt = σt ut
σt2 = 0.5 + 0.25yt−1
2 2
+ 0.25σt−1
ut ∼ IID(0, 1)
2 ) and E (σ 2 ).The final answer should be a func-
Compute Et (σt+2 t t+k
tion of yt and/or σt2 .
2
34 / 53
Forecasting Volatility: yt ∼ GARCH(1, 1)
2 2 2
σt+2 = 0.5 + 0.25yt+1 + 0.25σt+1
2 2 2
Et (σt+2 ) = 0.5 + 0.25Et (yt+1 ) + 0.25σt+1
2 2
Et (σt+2 ) = 0.5 + (0.25 + 0.25)σt+1
2
Et (σt+2 ) = 0.5 + (0.5)(0.5 + 0.25yt2 + 0.25σt2 )
2
Et (σt+2 ) = 0.75 + 0.125yt2 + 0.125σt2
35 / 53
Forecasting Volatility: yt ∼ GARCH(1, 1)
2 2 2
σt+k = 0.5 + 0.25yt+k−1 + 0.25σt+k−1
2 2 2
Et (σt+k ) = 0.5 + 0.25Et (yt+k−1 ) + 0.25Et (σt+k−1 )
2 2
Et (σt+k ) = 0.5 + (0.25 + 0.25)Et (σt+k−1 )
2 0.5[1 − (0.5)k ]
Et (σt+k )= + (0.5)(k−1) (0.25yt2 + 0.25σt2 )
0.5
2
Et (σt+k ) = 1 − (0.5)k + (0.5)(k−1) (0.25yt2 + 0.25σt2 )
36 / 53
Integrated GARCH Model
yt = σt ut
σt2 = a0 + a1 yt−1
2 2
+ b1 σt−1
b 1 = 1 − a1
a0
σt2 = 2
+ (1 − b1 )(yt−1 2
+ b1 yt−2 + b12 yt−3
2
+ ...)
1 − b1
37 / 53
ARMA(p, q) − GARCH(p1 , q1 ) Model
38 / 53
Exponential GARCH(1, 1) Model
ht = log(σt )
yt = exp(ht )ut
ht = ω + βht−1 + αut−1 + γ(|ut−1 | − E|ut−1 |)
39 / 53
Asymmetric Power GARCH Model
yt = σt ut
σtδ = a0 + a1 (|yt−1 | − dyt−1 )δ + bσt−1
δ
40 / 53
GARCH in Mean (Risk Premium)
rt = g (σt ) + yt
yt = σt ut
σt2 = a0 + a1 yt−1
2 2
+ b1 σt−1
g (x) = θ0 + θ1 x (linear in variance)
√
g (x) = θ0 + θ1 x (linear in standard deviation)
41 / 53
Stochastic Volatility
yt = exp(ht )ut
p
X
ht = c + bj ht−j + et
j=1
ut ∼ IID(0, 1)
et ∼ IID(0, σe2 )
42 / 53
Realized Volatility
43 / 53
Realized Volatility
m
(m)
X
RVt = (pi,t − pi−1,t )2
i=1
m
(m)
X
2
RVt = ri,t
i=1
44 / 53
Realized Volatility
(m)
RVt is asymptotically unbiased and a consistent estimator of σ 2 .
(m) µ2
E[RVt ]= + σ2
m
(m)
lim E[RVt ] = σ2
m→∞
(m) µ2 σ 2 σ4
Var[RVt ]=4 2
+2
m m
(m)
lim Var[RVt ]=0
m→∞
45 / 53
Realized Volatility
Suppose the price process has a time varying drift and stochastic
(m)
volatility. Then RVt is a consistent estimate of the integrated, or
average variance over the measurement interval.
dpt = µt dt + σt dWt
Z t+1
(m) p
lim [RVt ] − → σs2 ds
m→∞ t
46 / 53
Implementing Realized Volatility
∗
pi,t = pi,t + νi,t
47 / 53
Implementing Realized Volatility
The observed return ri,t can be decomposed into the actual unob-
∗ and an independent noise term η
served return ri,t i,t = νi,t − νi,t−1 .
ηi,t is a MA(1) and is serially correlated.
∗ ∗
pi,t − pi,t−1 = (pi,t + νi,t ) − (pi,t−1 + νi,t−1 )
∗ ∗
pi,t − pi,t−1 = (pi,t − pi,t−1 ) + (νi,t − νi,t−1 )
∗
ri,t = ri,t + ηi,t
48 / 53
Implementing Realized Volatility
49 / 53
Implementing Realized Volatility
One solution is to use sparse sampling (i.e. not using all observed
prices). Another solution is to filter the data using an MA(1) model.
In this case, RV is computed using the error term ˆi,t from the
following model:
50 / 53
Implementing Realized Volatility
51 / 53
Modeling Realized Volatility
52 / 53
Modeling Realized Volatility
53 / 53