2つの時系列の相関

Pythonで学ぶ時系列解析

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

2つの時系列の相関

  • S&P500とJPモルガンの株価のプロット
Pythonで学ぶ時系列解析

2つの時系列の相関

  • S&P500とJPモルガンのリターンの散布図
Pythonで学ぶ時系列解析

散布図の例

  • 相関 = 0.9

  • 相関 = -0.9

  • 相関 = 0.4

  • 相関 = 1.0

Pythonで学ぶ時系列解析

よくある誤り:トレンドを持つ2系列の相関

  • ダウ平均とUFO目撃件数(www.nuforc.org

  • 水準値の相関:0.94

  • 変化率の相関:$\large \approx$ 0
Pythonで学ぶ時系列解析

例:大型株と小型株の相関

  • SPX(大型株)とR2000(小型株)の株価から開始
  • 最初のステップ:両系列の変化率を計算
      df['SPX_Ret'] = df['SPX_Prices'].pct_change()
      df['R2000_Ret'] = df['R2000_Prices'].pct_change()
    
Pythonで学ぶ時系列解析

例:大型株と小型株の相関

  • 散布図で相関を可視化
      plt.scatter(df['SPX_Ret'], df['R2000_Ret'])
      plt.show()
    

Pythonで学ぶ時系列解析

例:大型株と小型株の相関

  • pandas の Series 相関メソッドを使用
correlation = df['SPX_Ret'].corr(df['R2000_Ret'])
print("Correlation is: ", correlation)
Correlation is: 0.868
Pythonで学ぶ時系列解析

練習しましょう!

Pythonで学ぶ時系列解析

Preparing Video For Download...