平均と分散に関する仮定を検証する

Rで学ぶGARCHモデル

Kris Boudt

Professor of finance and econometrics

チェック1: 標準化リターンの平均と標準偏差

標準化リターンの式

$$ Z_{t} = \frac{R_{t} - \hat{\mu_{t}}}{ \hat{\sigma_{t}}} $$

  • モデル妥当性の第1チェック:
    • 標準化リターンの標本平均 $\approx$ 0
    • 標準化リターンの標本標準偏差 $\approx$ 1
Rで学ぶGARCHモデル

チェック2: 標準化リターンの時系列プロット

  • モデル妥当性の第2チェック:
    • 標準化リターンの時系列プロット
    • 標準化リターンの変動は一定であるべき
Rで学ぶGARCHモデル

Rで学ぶGARCHモデル

Rで学ぶGARCHモデル

チェック3: 絶対標準化リターンに予測可能性なし

  • モデル妥当性の第3チェック:

    • 過去の絶対標準化リターンと現在の絶対標準化リターンに相関がないことを確認
    • つまり $k>0$ に対して $ Corr(|Z_{t-k}|, |Z_{t}|) \approx 0 $
  • なぜか

    • 絶対標準化リターンの大きさは一定であるべき → 絶対標準化リターンに相関がない
Rで学ぶGARCHモデル

自己相関

  • 時系列内のこの種の相関を、次数kの自己相関と呼ぶ
    • $k=1$: $Corr(|Z_{t-1}|, |Z_{t}|)$: 現在の絶対標準化リターンと1期前との相関
    • $k=2$: $Corr(|Z_{t-2}|, |Z_{t}|)$: 現在の絶対標準化リターンと2期前との相関
    • ...
  • これらはすべて0であるべき。例外:
    • $k=0$: $Corr(|Z_{t}|, |Z_{t}|)$: 自身との相関=1。
Rで学ぶGARCHモデル

acf()

  • Rでは、acf()(自己相関関数)で自己相関を計算できる
    • 入力: 時系列、最大次数
    • 出力: コレログラム:次数 $k = 0, 1, ...$ の自己相関を示すプロット
Rで学ぶGARCHモデル

MSFTへの適用

garchspec <- ugarchspec(mean.model = list(armaOrder = c(1, 0)),
                        variance.model = list(model = "gjrGARCH"),
                        distribution.model = "sstd")
garchfit <- ugarchfit(data = msftret, spec = garchspec)
stdmsftret <- residuals(garchfit, standardize = TRUE)
acf(abs(msftret), 22)
acf(abs(stdmsftret), 22)
Rで学ぶGARCHモデル

Rで学ぶGARCHモデル

チェック4: Ljung-Box検定

  • モデル妥当性の第4チェック:
    • 絶対標準化リターン $|Z_t|$ の最初のk個の自己相関が0かを検定するLjung-Box検定: $$ H_0: Corr(|Z_t|,|Z_{t-1}|) = Corr(|Z_t|,|Z_{t-2}|) = ... = Corr(|Z_t|,|Z_{t-k}|) = 0 $$
    • 推定パラメータの有意性を見る$t$検定に類似。ただし良いモデルでは0であることを望む。

目安: p値が5%未満ならモデルは不適切。

Rで学ぶGARCHモデル

RでのLjung-Box検定

  • R: Box.test()(引数3つ)
    • series
    • 自己相関を0とみなす最大次数
    • type = "Ljung-Box"

例:

Box.test(abs(stdmsftret), 22, type = "Ljung-Box")
  • 出力: p値
    • 目安: p値が5%未満ならモデルは不適切。
Rで学ぶGARCHモデル

絶対標準化MSFTリターンでのBox.test

絶対標準化リターンでの検定:

Box.test(abs(stdmsftret), 22, type = "Ljung-Box")
    Box-Ljung test
data:  abs(stdmsftret)
X-squared = 25.246, df = 22, p-value = 0.2855

注: p値は28.55% > 5%。次を棄却できない: $$ H_0: Corr(|Z_t|,|Z_{t-1}|) = Corr(|Z_t|,|Z_{t-2}|) = ... = Corr(|Z_t|,|Z_{t-22}|) = 0 $$

Rで学ぶGARCHモデル

絶対標準化リターンを診断しましょう。

Rで学ぶGARCHモデル

Preparing Video For Download...