Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
TS001
Stata 12 コマンド解説書
【経済系機能編】単変量時系列分析
Stataには時系列データを分析するためのコマンドが一式用意されています。ts系コマンドと呼ばれるもの
がそれですが、本解説書では単変量時系列分析に関係するものを中心に、その機能と用法を記述しました。
• 単変量時系列分析の概要• 時系列データの初期設定• 自己回帰移動平均 (ARMA) モデル
• コレログラム• ARCH/GARCH系モデル
• 単位根検定
目 次
コマンド whitepaperタイトル ページ mwp番号
− 単変量時系列分析 3 mwp-083
arch ARCH系モデル 11 mwp-051
arch 推定後機能 27 mwp-056
arima ARMA(自己回帰移動平均)モデル 35 mwp-003
arima 推定後機能 51 mwp-055
corrgram/ac/pac コレログラムの作成 58 mwp-009
dfgls 単位根検定(DF-GLS検定) 64 mwp-053
dfuller 単位根検定(ADF検定) 69 mwp-052
pperron 単位根検定(P-P検定) 75 mwp-054
tsset 時系列データの初期設定 79 mwp-002
− 日付/時間情報の入力 86 mwp-001
本解説書は StataCorp社の許諾のもとに作成したものです。
c⃝ 2011 Math工房
一部 c⃝ 2011 StataCorp LP
Math工房 web: www.math-koubou.jp
email: [email protected]
Stata12 whitepapers
mwp-083
単変量時系列分析
Stata には単変量時系列データを分析するための機能として arima, arch 等のコマンドが用意されていま
す。それぞれの機能/用法については別に whitepaper を用意していますが(mwp-003 , mwp-051 , 等)、前
提となる基本的事項については別途整理しておいた方が良いと考え、本 whitepaperを作成しました。なお、
VAR/VEC等の多変量時系列分析機能に関する同様のイントロについては mwp-084 をご参照ください。
1. 定常性
2. 時系列モデル
3. 定常性と反転可能性の条件
4. コレログラム
5. 非定常過程と単位根
6. ARCH系モデル
7. tsset
1. 定常性
(1) 定常性の定義
具体的な時系列データ y1, y2, . . . , yT は基盤となる確率過程 (stochastic process)
{yt}∞−∞ = {. . . , y−1, y0, y1, . . .} (1)
の実現値の集合ととらえることができるわけですが、その際、その過程が定常的であるかどうかは重要なポイ
ントとなります。確率過程 {yt}∞−∞ に対して次の 3つの条件が成り立つとき、{yt}は定常的 (stationary) で
あると言います(より厳密性を期する意味で弱定常的 (weakly stationary) または共分散定常的 (covariance
stationary) という表現を用いることもあります)。
(i) 平均 E(yt)がすべての tに対して一定である。
(ii) 分散 V (yt)がすべての tに対して一定である。
(iii) 自己共分散 Cov(yt, yt−s)が tには依存せず、時点の差である s(s > 0)のみに依存する。
c⃝ Copyright Math工房; 一部 c⃝ Copyright StataCorp LP (used with permission)
3
Stata12 whitepapers
(2) ホワイトノイズ
定常的確率過程の中で最も基本的なものがホワイトノイズ (white noise) です。{ut} をホワイトノイズとするとそれは次の条件を満足します。
E(ut) = 0 (2a)
V (ut) = σ2 (2b)
Cov(ut, us) = 0, t ̸= s (2c)
すなわちホワイトノイズは、期待値が 0、分散が一定 (σ2)、自己相関を持たない確率過程であると言えます。
2. 時系列モデル
計量経済等の分野で良く用いられる時系列モデルには次のようなものがあります。
(1) AR(p)モデル
次数 pの自己回帰過程 (autoregressive process) で、被説明変数の過去の値を用いて次のように表現さ
れます*1。yt = ϕ1yt−1 + ϕ2yt−2 + · · · + ϕpyt−p + ϵt, ϵt ∼ WN(whitenoise) (3)
(2) MA(q)モデル
次数 q の移動平均過程 (moving average process) で、ホワイトノイズの線形結合として次のように表
現されます。yt = ϵt + θ1ϵt−1 + · · · + θqϵt−q, ϵt ∼ WN (4)
(3) ARMA(p, q)モデル
次数 (p, q) の自己回帰移動平均過程 (autoregressive-moving average process) で、AR(p) モデルと
MA(q)モデルの組合せとして次のように表現されます。
yt = ϕ1yt−1 + ϕ2yt−2 + · · · + ϕpyt−p + ϵt + θ1ϵt−1 + · · · + θqϵt−q, ϵt ∼ WN (5)
今、ラグ演算子を L、その多項式を
ϕ(L) = (1 − ϕ1L − ϕ2L2 − · · · − ϕpL
p) (6a)
θ(L) = (1 + θ1L + θ2L2 + · · · + φqL
q) (6b)
と定義すると、AR(p), MA(q), ARMA(p, q)各モデルはそれぞれ次のように表現することもできます。
AR(p)モデル: ϕ(L)yt = ϵt (7a)
MA(q)モデル: yt = θ(L)ϵt (7b)
ARMA(p, q)モデル: ϕ(L)yt = θ(L)ϵt (7c)
*1 定数項は省略してあります。また [TS] arima p79 に記載されている数式では ϕの代りに ρというギリシャ文字が使用されて
います。
4
Stata12 whitepapers
3. 定常性と反転可能性の条件
評価版では割愛しています。
4. コレログラム
評価版では割愛しています。
5. 非定常過程と単位根
評価版では割愛しています。
6. ARCH系モデル
評価版では割愛しています。
7. tsset
評価版では割愛しています。
¥
5
Stata12 whitepapers
mwp-051
arch - ARCH系モデル
archコマンドは ARCH, GARCH等、種々の ARCH系モデルに対応した推定コマンドで、ボラティリティ
(volatility) をモデル化する機能を提供します。
1. ARCH系モデル
2. ARCH/GARCH
3. ARCH/GARCH – ARMA過程を伴うモデル
4. EGARCH – 非対称効果
5. 非対称 PGARCH
6. 誤差分布
1. ARCH系モデル
ARCH (autoregressive conditional heteroskedasticity)系モデルに関する一般式の基本形は [TS] arch p13
(1) 式に記載されているようなもので、yt に関する条件付平均式 (conditional mean equation) の他に、σ2t
に関する条件付分散式 (conditional variance equation) を含む点に特徴があります。この条件付分散式に含
まれる A 項、B 項の規定の仕方によって ARCH, GARCH 等、種々のモデルが構成される他、[TS] arch
p13-14 (2)式、(3)式のような拡張型のモデル式を想定することにより、さらに多様なモデルが構成されま
す。archコマンドはこれらすべてのモデル(約 20種)に対応した包括的なコマンドです。
2. ARCH/GARCH
ここでは Exampleデータセット wpi1.dtaを用いて ARCH/GARCHモデルのフィットを行います。
. use http://www.stata-press.com/data/r12/wpi1 *1
このデータセット中には米国の卸売物価指数 (wholesale price index) に関するデータが 1960q1から 1990q4
にわたり四半期ごとに記録されています。なお、変数 ln wpiの表す値は ln(wpi)を意味します。
c⃝ Copyright Math工房; 一部 c⃝ Copyright StataCorp LP (used with permission)*1 メニュー操作:File ◃ Example Datasets ◃ Stata 12 manual datasets と操作、Time-Series Reference Manual [TS] の arch
の項よりダウンロードする。
6
Stata12 whitepapers
. list if n <= 4 | n >= ( N - 3), separator(4) *2
124. 116.2 1990q4 4.755313
123. 112.8 1990q3 4.725616
122. 110.8 1990q2 4.707727
121. 111 1990q1 4.70953
4. 30.7 1960q4 3.424263
3. 30.7 1960q3 3.424263
2. 30.8 1960q2 3.427515
1. 30.7 1960q1 3.424263
wpi t ln_wpi
ここで D.ln wpi(ln wpiの 1階差分)についてプロットしてみましょう。
. twoway (line D.ln wpi t), yline(0) *3
このプロットより価格変動(ボラティリティ)の大きい時期と比較的平穏な時期が混在していることが見て取
れます。
ところで時系列データに対し線形モデルをフィットさせた場合、その postestimation 機能として estat
archlmコマンドが利用できるようになります([R] regress postestimation time series 参照)。このコ
マンドは Engleの LM検定 (Lagrange Multiplier test) 機能を実行するもので、残差中に ARCHの効果が存
在するかどうかをチェックします。そこでまず D.ln wpiのデータに対し定数項のみからなるモデルをフィッ
トさせます。
*2 メニュー操作: Data ◃ Describe data ◃ List data*3 メニュー操作:Graphics ◃ Twoway graph (scatter, line, etc.)
7
Stata12 whitepapers
. regress D.ln wpi *4
_cons .0108215 .0012963 8.35 0.000 .0082553 .0133878
D.ln_wpi Coef. Std. Err. t P>|t| [95% Conf. Interval]
Total .02521709 122 .000206697 Root MSE = .01438
Adj Rsquared = 0.0000
Residual .02521709 122 .000206697 Rsquared = 0.0000
Model 0 0 . Prob > F = .
F( 0, 122) = 0.00
Source SS df MS Number of obs = 123
. regress D.ln_wpi
この状態で estatコマンドが有効となるので estat archlmを実行します。
• Statistics ◃ Postestimation ◃ Reports and statistics と操作
• estatダイアログ: Reports and statistics: Test for ARCH effects in the residuals (archlm)
Specify a list of lag orders to be tested: 1
図 1 estat archlmダイアログ
H0: no ARCH effects vs. H1: ARCH(p) disturbance
1 8.366 1 0.0038
lags(p) chi2 df Prob > chi2
LM test for autoregressive conditional heteroskedasticity (ARCH)
. estat archlm, lags(1)
*4 メニュー操作: Statistics ◃ Linear models and related ◃ Linear regression
8
Stata12 whitepapers
結果からすると p値が 0.0038であるので、ARCH効果なしとする帰無仮説は棄却されることになります。
ARCH 効果の存在が確認できたところで GARCH(1, 1) モデルのフィットを行ってみます。D.ln wpi を yt
と書いた場合、ARCH(1)モデルは {yt = xtβ + ϵt
σ2t = γ0 + γ1ϵ
2t−1
(M1)
のように記述されるのに対し、GARCH(1, 1)モデルは{yt = xtβ + ϵt
σ2t = γ0 + γ1ϵ
2t−1 + δ1σ
2t−1
(M2)
のように表現されます。このため GARCH(1, 1)モデルの方がより一般性の高いモデルであると言えます。な
お、ARCHモデルと GARCHモデルの一般式については [TS] arch p25-26 をご参照ください。
• Statistics ◃ Time series ◃ ARCH/GARCH ◃ ARCH and GARCH models と操作
• Modelタブ: Dependent variable: D.ln wpi
Specify maximum lags: ARCH maximum lag: 1
GARCH maximum lag: 1
図 2 archダイアログ - Modelタブ
9
Stata12 whitepapers
_cons .0000269 .0000122 2.20 0.028 2.97e06 .0000508
L1. .4544606 .1866606 2.43 0.015 .0886127 .8203086
garch
L1. .4364123 .2437428 1.79 0.073 .0413147 .9141394
arch
ARCH
_cons .0061167 .0010616 5.76 0.000 .0040361 .0081974
ln_wpi
D.ln_wpi Coef. Std. Err. z P>|z| [95% Conf. Interval]
OPG
Log likelihood = 373.234 Prob > chi2 = .
Distribution: Gaussian Wald chi2(.) = .
Sample: 1960q2 1990q4 Number of obs = 123
ARCH family regression
Iteration 10: log likelihood = 373.23397
Iteration 9: log likelihood = 373.23394
Iteration 8: log likelihood = 373.23277
Iteration 7: log likelihood = 373.1894
Iteration 6: log likelihood = 373.11099
Iteration 5: log likelihood = 372.41703
(switching optimization to BFGS)
Iteration 4: log likelihood = 370.42566
Iteration 3: log likelihood = 369.65205
Iteration 2: log likelihood = 366.89268
Iteration 1: log likelihood = 365.64586
Iteration 0: log likelihood = 355.23458
(setting optimization to BHHH)
. arch D.ln_wpi, arch(1/1) garch(1/1)
archコマンドの出力より、(M2)式中のパラメータは次のように推定されたことになります。
平均式: β0 = 0.0061
分散式: γ0 = 0.000 γ1 = 0.436 δ1 = 0.454
ただし γ1 については p値が 0.073であるので 0という可能性を排除できない点に注意する必要があります。
10
Stata12 whitepapers
3. ARCH/GARCH – ARMA過程を伴うモデル
評価版では割愛しています。
4. EGARCH – 非対称効果
評価版では割愛しています。
5. 非対称 PGARCH
評価版では割愛しています。
6. 誤差分布
評価版では割愛しています。
¥
11
Stata12 whitepapers
mwp-003
arima - 自己回帰移動平均モデル
arimaは擾乱が自己回帰移動平均 (ARMA: autoregressive moving-average) 過程として表現される単変量モ
デルのフィットを行います。arimaは従属変数の自己回帰項のみによって記述された ARMAモデルのみなら
ず、独立変数を含む形の ARMAXモデルにも対応しています。
1. ARMA過程
2. arimaの用例
2.1 ARIMA(1,1,1)モデル
2.2 加法的季節変動モデル
2.3 乗法的季節変動モデル
2.4 ARMAXモデル
補足1
1. ARMA過程
ARMA 過程に関するモデル式については [TS] arima のセクション“Introduction” p79 に記述されてい
ます。最初に ARMA(1, 1)過程に関するモデル式が記載されていますが、その本質は構造方程式中の擾乱項
µt の中に自己相関項 ρµt−1 と移動平均項 θϵt−1 を含む点です。すなわち周期 tにおける擾乱は単なる白色ノ
イズ ϵt 以外に 1期前の µt, ϵt の影響を引きずった構造となっています。その影響の度合いはパラメータ ρと
θ によって規定されるわけです。
自己相関による影響を p期まで、移動平均による影響を q 期までの範囲に拡張したモデルが ARMA(p, q)過
程であり、そのモデル式がマニュアル上に示されているわけですが、それは ARMA(p, q)を
µt = yt − xtβ (M1)
µt = ρ1µt−1 + · · · + ρpµt−p + θ1ϵt−1 + · · · + θqϵt−q + ϵt (M2)
と表現したとき、(M2)式に (M1)式を順次代入して行くことにより誘導できます。それはラグ演算子 Lを用
いることによって、マニュアルに記載されているようなよりコンパクトな一般式表記に改めることができるわ
けです。
c⃝ Copyright Math工房; 一部 c⃝ Copyright StataCorp LP (used with permission)
12
Stata12 whitepapers
ARMA過程と言った場合、従属変数のみからなる、すなわち独立変数 xt を含まないモデルを対象にすること
が多いわけですが、ここでは ARMA(1, 1)過程と ARMA(2, 2)過程について具体的なモデル式を誘導してお
きます。
(1) ARMA(1, 1)モデル
ARMA(p, q)過程の一般式より
(1 − ρ1L)(yt − β0) = (1 + θ1L)ϵt
ラグ演算子を適用するとyt − β0 − ρ1(yt−1 − β0) = ϵt + θ1ϵt−1
従ってyt − β0 = ρ1(yt−1 − β0) + θ1ϵt−1 + ϵt (M3)
というのが ARMA(1, 1)過程のモデル式となります。
(2) ARMA(2, 2)モデル
同様に ARMA(2, 2)過程のモデル式は
yt − β0 = ρ1(yt−1 − β0) + ρ2(yt−2 − β0) + θ1ϵt−1 + θ2ϵt−2 + ϵt (M4)
となります。
用例の中には ARIMA(p, d, q)過程という表現が出てきます(I は integrated の略)が、それは d
階差分の時系列が ARMA(p, q)過程に従うことを意味します。
2. arimaの用例
2.1 ARIMA(1,1,1)モデル
ここでは米国の卸売物価指数 (wholesale price index) に関する Exampleデータセット wpi1.dtaを使用し
ます。
. use http://www.stata-press.com/data/r12/wpi1 *1
この中には 1960q1から 1990q4に至る期間中のデータが四半期ごとに記録されています。
*1 メニュー操作:File ◃ Example Datasets ◃ Stata 12 manual datasets と操作、Time-Series Reference Manual [TS] の arima
の項よりダウンロードする。
13
Stata12 whitepapers
. list wpi t if n <= 4 | n >= ( N - 3), separator(4) *2
124. 116.2 1990q4
123. 112.8 1990q3
122. 110.8 1990q2
121. 111 1990q1
4. 30.7 1960q4
3. 30.7 1960q3
2. 30.8 1960q2
1. 30.7 1960q1
wpi t
次に示すのは wpiと D.wpi(wpiの 1階差分)についてのプロットです。
. twoway (line wpi t), title(wpi) *3
. twoway (line D.wpi t), yline(0) title(D.wpi)
このグラフから明らかなように原系列 wpiは定常とは言えないので、ここでは階差系列 D.wpiを解析対象と
します。
ARMAモデルを arimaに対し指定する場合、arima(p,d,q)という略式指定を用いる方法と ar(), ma()指
定による方法の 2種類が選択できます。モデルに含めるべきラグ次数が AR項については 1から p、MA項に
ついては 1から qと連続している場合には略式指定を用いることができます。これに対し指定すべきラグ次数
が 1と 4といった形で不連続な場合には、numlist が指定できる ar(), ma()インタフェースを用いることに
なります。
なお、arima(p,d,q)インタフェースを用いた場合には差分の次数 dを明示することができます。その場合、
例えば arima(1,1,1)という形でモデルを規定したとするなら、従属変数として指定するのは D.wpiではな
く wpiとなる点に注意する必要があります。
*2 メニュー操作: Data ◃ Describe data ◃ List data*3 メニュー操作: Graphics ◃ Twoway graph (scatter, line, etc.) 詳細については補足1を参照。
14
Stata12 whitepapers
最初に arima(p,d,q)インタフェースを用いて arimaの実行を行ってみます。この場合、従属変数としては
wpiを指定します。
• Statistics ◃ Time series ◃ ARIMA and ARMAX models と操作
• Modelタブ: Dependent variable: wpi
ARIMA(p,d,q) specification: p = d = q = 1
図 1 arimaダイアログ – Modelタブ
Iteration 8: log likelihood = 135.35131
Iteration 7: log likelihood = 135.35132
Iteration 6: log likelihood = 135.35135
Iteration 5: log likelihood = 135.35471
(switching optimization to BFGS)
Iteration 4: log likelihood = 135.35892
Iteration 3: log likelihood = 135.36691
Iteration 2: log likelihood = 135.41838
Iteration 1: log likelihood = 135.6278
Iteration 0: log likelihood = 139.80133
(setting optimization to BHHH)
. arima wpi, arima(1,1,1)
15
Stata12 whitepapers
confidence interval is truncated at zero.
Note: The test of the variance against zero is one sided, and the twosided
/sigma .7250436 .0368065 19.70 0.000 .6529042 .7971829
L1. .4120458 .1000284 4.12 0.000 .6080979 .2159938
ma
L1. .8742288 .0545435 16.03 0.000 .7673256 .981132
ar
ARMA
_cons .7498197 .3340968 2.24 0.025 .0950019 1.404637
wpi
D.wpi Coef. Std. Err. z P>|z| [95% Conf. Interval]
OPG
Log likelihood = 135.3513 Prob > chi2 = 0.0000
Wald chi2(2) = 310.64
Sample: 1960q2 1990q4 Number of obs = 123
ARIMA regression
結果が意味するところは (M3)式より次のようになります。
∆wpit − 0.750 = 0.874 · (∆wpit−1 − 0.750) − 0.412 · ϵt−1 + ϵt
なお sigmaとして 0.725とレポートされていますがこれはホワイトノイズ擾乱 ϵの標準偏差推定値を意味し
ます。
今度は ar(), ma()インタフェースを用いて arimaの実行を行ってみます。この場合、従属変数として指定す
るのは D.wpiとなります。
• Statistics ◃ Time series ◃ ARIMA and ARMAX models と操作
• Modelタブ: Dependent variable: D.wpi
Supply list of ARMA lags: List of AR lags: 1
List of MA lags: 1
16
Stata12 whitepapers
図 2 arimaダイアログ – Modelタブ
この場合、生成されるコマンドは
. arima D.wpi, ar(1) ma(1)
であり先の場合とは異なったものとなりますが、出力結果は同一のため省略します。
なお、ここでフィットされた ARIMA(1, 1, 1)モデルに基づく予測については [TS] arima postestimation
(mwp-055 ) をご参照ください。
2.2 加法的季節変動モデル
評価版では割愛しています。
2.3 乗法的季節変動モデル
評価版では割愛しています。
2.4 ARMAXモデル
評価版では割愛しています。
17
Stata12 whitepapers
補足1 – グラフ作成コマンド操作
評価版では割愛しています。
¥
18