4、时间序列分析基础:平稳性检验(ADF、KPSS)、自相关函数(ACF)、偏自相关函数(PACF)、白噪声、随机游走
统计套利策略的核心逻辑,是捕捉两个或多个资产价格之间长期稳定的统计关系,并利用其短期偏离进行反向交易。然而,这一逻辑成立的前提,是所处理的时间序列具备可被建模的统计规律。如果序列本身是非平稳的,其均值、方差会随时间漂移,任何基于历史数据计算的相关系数、回归系数都可能失真,导致套利信号频繁失效。因此,在构建价差序列、设计交易规则之前,必须先对时间序列的“底层属性”进行严格诊断。本章将系统讲解平稳性的概念、两种主流检验方法(ADF与KPSS)、自相关函数(ACF)与偏自相关函数(PACF)的解读方法,以及白噪声和随机游走这两个极端但重要的基准模型。理解这些工具,是后续构建协整模型、GARCH波动率模型以及均值回归策略的基石。
上图勾勒了本章的核心诊断框架:左侧为平稳性检验的两种互补方法(ADF与KPSS),右侧为相关性结构分析(ACF与PACF),底部则对应两种极端基准模型。在实际操作中,我们通常先对原始价格序列进行平稳性检验,若非平稳则进行差分或提取价差;随后对处理后的序列分析其自相关结构,以判断是否存在可被利用的动量或均值回归特征。下面逐一展开。
4.1 核心原理:为什么平稳性如此重要
平稳性(Stationarity)的严格定义是:时间序列的统计性质(均值、方差、自协方差)不随时间的平移而改变。在金融实践中,我们主要关注弱平稳(Weak Stationarity),即满足以下三个条件:
- 均值恒定:E[X_t] = μ,对所有 t 成立。
- 方差恒定:Var(X_t) = σ²,对所有 t 成立。
- 自协方差仅与滞后阶数有关:Cov(X_t, X_{t-k}) = γ_k,与 t 无关。
如果序列是非平稳的(例如带有趋势或随机游走),那么基于历史数据计算的均值、方差会随样本区间变化,回归分析可能出现“伪回归”(Spurious Regression)——即两个完全无关的非平稳序列,其回归系数的 t 统计量却高度显著。在统计套利中,如果我们错误地将两个非平稳的价格序列直接回归,得到的残差可能并不具备均值回归特性,据此构建的价差策略将面临巨大的尾部风险。
实战视角:在配对交易中,我们通常对两只股票的对数价格序列进行回归。如果这两只股票的价格都是非平稳的(几乎必然),但它们的某种线性组合(价差)是平稳的,那么我们就找到了协整关系。这正是平稳性检验在套利中的核心应用——不是检验价格本身,而是检验价差序列的平稳性。
4.2 判断方法:ADF与KPSS检验的互补使用
平稳性检验的主流方法有两种,它们互为补充,联合使用可以避免单一检验的盲区。
4.2.1 ADF检验(Augmented Dickey-Fuller)
ADF检验的原假设(H0)是序列存在单位根(即非平稳),备择假设(H1)是序列平稳。其回归方程如下:
ΔX_t = α + βt + γX_{t-1} + Σ_{i=1}^{p} δ_i ΔX_{t-i} + ε_t
其中,γ 是核心系数。如果 γ 显著为负(即 t 统计量小于临界值),则拒绝原假设,认为序列平稳。ADF检验的关键在于滞后阶数 p 的选择,通常根据AIC或BIC准则确定。
4.2.2 KPSS检验(Kwiatkowski-Phillips-Schmidt-Shin)
KPSS检验的原假设与ADF相反:H0为序列平稳(趋势平稳),H1为存在单位根。它通过检验序列对确定性趋势的残差是否具有单位根来实现。两种检验的联合判断逻辑如下表:
| ADF结果 | KPSS结果 | 结论 | 操作建议 |
|---|---|---|---|
| 拒绝H0(平稳) | 接受H0(平稳) | 序列平稳 | 可直接建模 |
| 接受H0(非平稳) | 拒绝H0(非平稳) | 序列非平稳 | 差分或取对数后重检 |
| 拒绝H0(平稳) | 拒绝H0(非平稳) | 结果矛盾 | 检查是否含结构突变或长记忆性 |
| 接受H0(非平稳) | 接受H0(平稳) | 结果矛盾 | 样本量不足或存在非线性趋势 |
风险提示:ADF检验对结构突变(如金融危机、政策变化)非常敏感,可能将平稳序列误判为非平稳。KPSS检验则对短期自相关不敏感,但对长期趋势敏感。因此,当两者结论矛盾时,应首先检查数据是否包含明显的断点,并考虑使用Zivot-Andrews检验等更稳健的方法。
4.3 自相关函数(ACF)与偏自相关函数(PACF)
一旦确认序列平稳,下一步就是分析其自相关结构,以确定适合的ARMA模型阶数。
- ACF(自相关函数):度量序列与其自身滞后 k 期之间的线性相关性。公式为 ρ_k = Cov(X_t, X_{t-k}) / Var(X_t)。ACF图展示了不同滞后阶数的相关系数及95%置信区间带。
- PACF(偏自相关函数):度量在剔除中间滞后项影响后,序列与滞后 k 期的直接相关性。PACF图用于识别AR模型的阶数。
判断规则如下:
- 若ACF在滞后 q 阶后截尾(迅速落入置信带内),而PACF拖尾(缓慢衰减),则适合MA(q)模型。
- 若PACF在滞后 p 阶后截尾,而ACF拖尾,则适合AR(p)模型。
- 若两者均拖尾,则可能需要ARMA(p,q)模型。
经验法则:在统计套利中,价差序列的ACF通常呈现“快速衰减”特征,这暗示均值回归强度较高。如果ACF在多个滞后阶数上仍显著为正,说明价差存在动量效应,此时应谨慎使用均值回归策略,或考虑引入动量因子。
4.4 白噪声与随机游走:两个极端基准
理解这两个概念有助于我们判断序列是否“可交易”。
- 白噪声(White Noise):序列完全随机,均值为0,方差恒定,且任意滞后阶数的自相关系数均为0。白噪声序列没有任何可预测性,ACF和PACF均在置信带内。若价差序列是白噪声,说明价差已充分反映所有信息,不存在套利空间。
- 随机游走(Random Walk):X_t = X_{t-1} + ε_t,其中ε_t为白噪声。随机游走是非平稳的,其方差随时间线性增长。对随机游走进行一阶差分后得到白噪声。若价格序列是随机游走,则其对数收益率为白噪声,意味着市场是弱式有效的。
在套利策略中,我们追求的是“介于两者之间”的状态:价差序列既不是白噪声(否则无利可图),也不是随机游走(否则风险不可控),而是具有显著负自相关的平稳序列——这正是均值回归的典型特征。
4.5 案例拆解:检验沪深300ETF与中证500ETF价差的平稳性
假设我们计划构建沪深300ETF(510300)与中证500ETF(510500)的配对交易策略。我们收集了2023年1月至2024年6月的日度收盘价数据,共约350个观测值。初始目标是验证两者价差是否具备均值回归特性。
第一步:数据预处理与价差计算
# Python伪代码示例
import pandas as pd
import numpy as np
from statsmodels.tsa.stattools import adfuller, kpss
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
# 加载数据
df = pd.read_csv('etf_prices.csv', index_col='date', parse_dates=True)
# 计算对数价格
df['log_300'] = np.log(df['510300'])
df['log_500'] = np.log(df['510500'])
# 计算价差(假设协整系数为1,实际需先估计)
df['spread'] = df['log_300'] - df['log_500']
第二步:平稳性检验
对价差序列进行ADF检验,结果如下:
- ADF统计量:-3.82(1%临界值:-3.45)
- p-value:0.002
- KPSS统计量:0.12(5%临界值:0.46)
ADF拒绝非平稳原假设,KPSS接受平稳原假设,两者结论一致:价差序列平稳。
第三步:ACF/PACF分析
绘制价差序列的ACF和PACF图,观察到:
- ACF在滞后1阶显著为负(-0.35),随后快速衰减至置信带内。
- PACF在滞后1阶显著为负,之后截尾。
这提示价差序列适合AR(1)模型,且负的自相关系数表明存在均值回归动力。
第四步:策略含义与风险
基于上述检验,我们构建如下规则:当价差低于均值减1.5倍标准差时买入价差(做多300ETF、做空500ETF),当价差回归均值时平仓。回测结果显示年化收益率为8.2%,最大回撤为4.5%。但需注意,该策略在2024年2月小盘股流动性危机期间出现连续亏损,原因是价差在极端市场环境下暂时失去了均值回归特性。
复盘经验:平稳性检验通过并不代表策略永远有效。应定期(如每月)滚动检验价差的平稳性,并监控ACF结构是否发生改变。若ACF由负转正,说明价差从均值回归转为动量模式,必须暂停策略并重新评估。
4.6 常见误区与总结复盘
在实际应用中,以下误区需要特别警惕:
- 忽视单位根检验的滞后阶数选择:滞后阶数过少会导致自相关残留,过多则降低检验功效。建议使用AIC准则自动选择。
- 混淆价格序列与收益率序列的平稳性:价格通常非平稳,收益率(一阶差分)通常平稳。在套利中,我们关注的是价差(价格组合)的平稳性,而非单一价格。
- 过度依赖单一检验:ADF和KPSS各有盲区,必须联合使用并交叉验证。
- 忽略结构性突变:若样本区间包含重大政策变化或市场危机,平稳性检验结果可能失真。建议使用Chow检验或Bai-Perron检验识别断点。
- 将白噪声误认为无套利机会:白噪声确实无线性可预测性,但可能存在非线性结构(如ARCH效应),可通过检验残差的平方自相关来挖掘波动率套利机会。
总结而言,时间序列分析基础是统计套利的“体检工具”。通过ADF与KPSS确认平稳性,通过ACF/PACF识别动态结构,通过白噪声与随机游走判断序列的可交易性,我们才能为后续的协整建模、阈值设计以及风险管理打下坚实基础。务必牢记:先诊断,后建模;先平稳,再回归。