統計アプリ

【例題で解説】GARCHモデルの分析

時系列分析で使われるGARCHモデルを用いた分析方法について,実践例を用いて解説します.

実践例で使用している統計解析アプリStaatAppはこちらのページから無料でダウンロードできます.(GARCH機能は有料版です)

GARCHモデルとは

GARCHモデルとは

時系列分析においてGARCHモデルはボラティリティを予測するためのモデルです.ボラティリティとは金融分野における価格変動の大きさや度合いのことを指します.例えば,株価が一日で大きく上下するときその株は”ボラティリティが高い”と言います.

GARCHモデルにおいては将来のボラティリティは過去のボラティリティにより影響を受けるという仮定のもと分析を行います.

》様々な時系列モデル

GARCHモデルを用いた分析手順

GARCHモデルを用いた分析は,以下のように行うのが一般的です.

GARCHモデルを用いた分析の手順

はじめに時系列データを可視化して時系列データの特徴を把握します.GARCHモデルは定常過程に対して有効なため,時系列データに長期変動や季節変動が見られる場合は,前処理として差分変換や対数変換を行います.

モデルを作成したら評価指標や残差分析を行うことで,モデルの精度を評価します.モデルの精度がよくない場合は,パラメータやモデル式を修正して再度モデルを作成します.

最終的には作成したモデルを用いてボラティリティやVaR(Value at Risk:予想最大損失額)の将来予測を行います.

StaatAppを用いたGARCHモデルの分析

統計解析アプリStaatAppを用いて,具体的にGARCHモデル分析について解説します.サンプルデータとして,ビットコイン(BTC)の価格データ(円)を使用します.このデータには2022年第1四半期の1時間ごとのデータが含まれています.

》StaatAppの基本操作

Garchモデルを用いた分析のサンプルデータ

① データの可視化

折れ線グラフ機能を用いて,サンプルデータの可視化を行います.期間内のBTC価格は長期変動や季節変動がない定常過程ように見えます.

StaatAppを用いたサンプルデータの棒グラフを作成

② 前処理

ADF検定を行い定常過程かどうかを判定します.

ADF検定の実行結果

ADF検定の値が全て有意水準=0.05より大きいため,BTC価格は単位根過程(≒非定常過程)であると言えます.GARCHモデルは定常過程の時系列データに対して有効なため,差分変換を行います.

時系列データの差分変換

再度,ADF検定を行うとp値<0.05となったため差分変換したデータでモデル作成を行います.

③ モデルの作成・評価

GARCH機能でモデル作成を行います.分析対象のデータを選択して,「モデル作成」ボタンをクリックするとモデルが作成されます.

オプションでは平均値モデルやボラティリティモデル,誤差分布を選ぶことができますが基本的にはデフォルト設定のGARCH(1,1)で大丈夫です.オプションの詳細は補足をお読みください.

モデルが作成されたら評価指標を見ます.特にGARCHモデルではモデル式の変数のp値に注目します.この値が小さいほどモデル式の各項は統計学的に意味がある値であることを示し,モデルの当てはまりが良い言えます.

GARCHモデルのp値

今回の実行結果はあまり当てはまりがよいとは言えないので,オプション設定で誤差分布をt分布に変更して再度モデル作成を行います.先程より値が小さくなり,当てはまりがよいモデルであることが言えます.

GARCHモデルの再作成結果

標準化残差の分布を確認すると,残差はほぼ正規分布に従い偏りがないということがわかります.

StaatAppを用いた残差の正規性確認

④ 予測

ボラティリティの算出と将来予測を行います.「ボラティリティ」タブの「予測」をオンにして予測時点数を”10”に設定します.「描画」ボタンをクリックするとボラティリティが算出され,将来予測値を含むグラフが表示されます.

ボラティリティの算出
StaatAppを用いたボラティリティのグラフ表示

VaRの将来予測(観測時点の次の時点の値)を算出します.

VaRの算出
StaatAppを用いたVaRのグラフ表示

有意水準α=0.05で39413.43…という値になります.今回の分析例ではBCTの価格変動データの差分系列に対してのVaRになるので,1時間後には5%の確率で1単位あたり39413.43円以上の損失が発生することを意味します.

※ StaatAppでは正規分布を用いてVaRを算出しています.

統計解析アプリStaatApp

補足① 参考書籍

StaatAppのGARCH機能及び分析手順・解釈については以下の書籍を参考にしています.

補足② GARCH機能の詳細仕様

StaatAppのGARCH機能ではPythonの以下のライブラリを使用して演算を行っています.詳細なアルゴリズムや信頼性を知りたい方は公式ドキュメントをお読みください.

モデル作成時の各オプションについても記載されています.

・モデルの作成・評価・予測(arch)