1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで学ぶ時系列解析

Connected

演習

この銘柄は平均回帰していると言い切れますか?

前の章で、MSFT の週次リターンの自己相関が -0.16 であることを見ました。この自己相関は大きく見えますが、統計的に有意でしょうか?言い換えると、真の自己相関が本当に 0 だとして、これほど大きな負の自己相関が観測される確率が 5% 未満と言えるでしょうか?また、他のラグで 0 と有意に異なる自己相関はあるでしょうか?

たとえ全てのラグで真の自己相関が 0 であっても、有限標本のリターンでは推定された自己相関がちょうど 0 になることはありません。実際、標本自己相関の標準偏差は $\small 1/\sqrt{N}\((ここで \)\small N\( は観測数)なので、例えば \)\small N=100\( なら ACF の標準偏差は 0.1 です。正規分布の 95% は平均から ±1.96 標準偏差の範囲にあるため、95% 信頼区間は \)\small \pm 1.96/\sqrt{N}$ となります。この近似は、真の自己相関が「すべて」0 のときにのみ成り立ちます。

ここでは、ACF の実際の信頼区間と近似信頼区間を計算し、前章のラグ1の自己相関 -0.16 と比較します。Microsoft の週次リターンは returns という DataFrame に事前に読み込まれています。

指示

100 XP
  • DataFrame returns の Series 'Adj Close' に対して、週次リターンの自己相関をもう一度計算します。
  • len() 関数を使って、returns DataFrame の観測数を求めます。
  • 推定された自己相関の 95% 信頼区間を近似します。数学関数 sqrt() はインポート済みなので使用できます。
  • statsmodels からインポートした plot_acf を使って returns の自己相関関数をプロットします。信頼区間のために alpha=0.05(デフォルト)を設定し、lags=20 とします。