自相关函数

Python 中的时间序列分析

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

自相关函数

  • 自相关函数(ACF):自相关随滞后变化的函数
  • 在零滞后处等于 1
  • 滞后 1 之后仍有有用信息
Python 中的时间序列分析

ACF 示例 1:简单自相关函数

  • 可用序列的最近两个值做预测
Python 中的时间序列分析

ACF 示例 2:季节性收益

  • H&R Block 的收益
  • H&R Block 的 ACF
Python 中的时间序列分析

ACF 示例 3:助力模型选择

  • 模型选择

Python 中的时间序列分析

在 Python 中绘制 ACF

  • 导入模块:
    from statsmodels.graphics.tsaplots import plot_acf
    
  • 绘制 ACF:
    plot_acf(x, lags= 20, alpha=0.05)
    
Python 中的时间序列分析

ACF 的置信区间

Python 中的时间序列分析

ACF 的置信区间

  • alpha 参数控制置信区间宽度
  • 例如:alpha=0.05
    • 若真实自相关为 0,落在蓝带外的概率为 5%
  • 置信带更宽当:
    • alpha 更小
    • 样本更少
  • 在简化假设下,95% 置信带为 $\pm 2/\sqrt{N}$
  • 若不显示置信带,设 alpha=1
Python 中的时间序列分析

用数值替代图形显示 ACF

from statsmodels.tsa.stattools import acf
print(acf(x))
[ 1.         -0.6765505   0.34989905 -0.01629415 -0.02507013  0.01930354
 -0.03186545  0.01399904 -0.03518128  0.02063168 -0.02620646 -0.00509828
...
  0.07191516 -0.12211912  0.14514481 -0.09644228  0.05215882]
Python 中的时间序列分析

让我们来练习!

Python 中的时间序列分析

Preparing Video For Download...