レバレッジ効果

Rで学ぶGARCHモデル

Kris Boudt

Professor of finance and econometrics

負のリターンはレバレッジを高める

  • $R_t <0 $
  • 市場価値 $\downarrow$
  • レバレッジ = 負債 / 市場価値 $\uparrow$
  • ボラティリティ $\uparrow$
Rで学ぶGARCHモデル

2 つの方程式

予想外のリターン $e_t = R_t - \mu_t$ が負の場合と正の場合で分散方程式を分ける:

$ e_{t-1} \gt 0$ のとき

$$ \sigma^2_{t} = ??? $$

$ e_{t-1} \le 0$ のとき

$$ \sigma^2_{t} = ??? $$

Rで学ぶGARCHモデル

正のサプライズの場合

…通常の GARCH(1,1) 方程式を用いる:

$ e_{t-1} \gt 0$ のとき

$$ \sigma^2_{t} = \omega + \alpha e^{2}_{t-1} + \beta \sigma^{2}_{t-1} $$

$ e_{t-1} \le 0$ のとき

$$ \sigma^2_{t} = ??? $$

Rで学ぶGARCHモデル

負のサプライズの場合

  • 予測分散は正のサプライズ時より高いはずです。

  • つまり二乗予測誤差の係数が大きくなり、$\alpha$ ではなく $\alpha+\gamma$($\gamma \geq 0$)となる。

$ e_{t-1} \gt 0$ のとき

$$ \sigma^2_{t} = \omega + \alpha e^{2}_{t-1} + \beta \sigma^{2}_{t-1} $$

$ e_{t-1} \le 0$ のとき

$$ \sigma^2_{t} = \omega + (\alpha + \gamma) e^{2}_{t-1} + \beta \sigma^{2}_{t-1} $$

これは Glosten・Jagannathan・Runkle による GJR モデルです。

Rで学ぶGARCHモデル

方法

ugarchspec() の引数 variance.model を model = "sGARCH" から model = "gjrGARCH" に変更する:

garchspec <- ugarchspec(mean.model = list(armaOrder = c(0, 0)),
                         variance.model = list(model = "sGARCH"),
                         distribution.model = "sstd") 

$$\downarrow$$

garchspec <- ugarchspec(mean.model = list(armaOrder = c(0, 0)), 
                        variance.model = list(model = "gjrGARCH"),
                        distribution.model = "sstd")
Rで学ぶGARCHモデル

MSFT リターンでの例

モデルを推定する

garchfit <- ugarchfit(data = msftret, spec = garchspec)

GARCH 係数を確認

coef(garchfit)[2:5]
       omega       alpha1        beta1       gamma1 
2.007875e-06 3.423336e-02 9.363302e-01 5.531854e-02

Rで学ぶGARCHモデル

newsimpact() でボラティリティ反応を可視化

out <- newsimpact(garchfit)
plot(out$zx, out$zy, xlab = "prediction error", ylab = "predicted variance")

Rで学ぶGARCHモデル

GJR GARCH モデルを推定しましょう。

Rで学ぶGARCHモデル

Preparing Video For Download...