一、ADF检验简介
自回归模型(Autoregressive model)是最常用的时间序列模型之一。在应用自回归模型时,首先需要确认时间序列是否是平稳性时间序列,因为自回归模型要求时间序列数据是平稳的。
Augmented Dickey-Fuller (ADF)检验是一种经典的检验时间序列平稳性的方法,它是对Dickey-Fuller检验(Dickey & Fuller, 1979)的扩展,因为ADF检验不仅考虑了一阶差分的情况,也考虑了更高阶差分的情况,适用于更广泛的时间序列数据。
二、ADF检验统计原理
ADF检验是一种参数检验方法,它的原理是基于自回归模型(AR)的一个假设:存在一个单位根,单位根表示某些时间序列变量在时间趋势的影响下呈现出非平稳的特征。即,若存在一个单位根,原时间序列就不平稳。
在ADF检验中,设自回归模型为:
y_t = a_0 + a_1*y_{t-1} + a_2*y_{t-2} + ... + a_p*y_{t-p} + e_t
其中e_t是误差项。菲利普斯和珀龙(Phillips & Perron, 1988)提出,在自回归模型中将时间序列取一阶差分可以得到一个新的模型:
Δy_t = a_0 + a_1*Δy_{t-1} + a_2*Δy_{t-2} + ... + a_p*Δy_{t-p} + e_t
其中p为自回归项数,Δy_t表示y_t-y_{t-1},即y_t的一阶差分。
对上述模型的零假设是存在单位根(即Δy_t不是平稳的),而备择假设是不存在单位根(即Δy_t是平稳的)。可以用ADF统计量来检验零假设。
ADF统计量的普通形式为:
ADF = (t-1)*[(y_T-1) - kx]/sqrt(s^2(T-1))
其中,t是自回归项数,y_T是最后一个观测值,kx是一个常数,它的值随着数据的变化而变化,s^2是方差(注意:Stata的adf命令默认根据AIC选择阶数)。
三、ADF检验实操
1. 准备工作
首先,需要加载数据并将原变量转化为时间序列数据。
use "data.dta", clear
tsset date
2. 一阶差分的ADF检验
在Stata中进行ADF检验可以使用命令adf, 下面是如何进行一阶差分的ADF检验的示例代码:
adf variable, lags(1)
其中,变量variable是我们要做ADF检验的变量,lags(1)表示使用一个滞后项进行ADF检验。
输出的结果包括了ADF检验统计量和显著性水平等信息,其中"Prob>|t|"用于检验零假设,若小于0.05,则拒绝零假设。
3. 多阶差分的ADF检验
多阶差分的ADF检验和一阶差分基本相同,只是需要增加lags参数的值。
adf variable, lags(2)
其中lags(2)表示使用两个滞后项进行ADF检验。
如果ADF检验的结果表明变量不平稳,还可以进一步进行二次差分和三次差分等操作,直到得到平稳的时间序列。
4. ADF检验诊断
在使用ADF检验检验平稳性时,需要关注ADF检验统计量和显著性水平的值,关注和平稳性相关的统计量和信息。调整滞后项的个数并关注敏感性测试的结果。另外,还可以进行基于ADF检验结果的替代检验,如加权白噪声检验、LB检验、Kwiatkowski-Phillips-Schmidt-Shin检验等进行进一步分析。
四、总结
通过本文的详解,我们了解了ADF检验的统计原理、实操过程和诊断方法。在运用ADF检验前,需要明确相关统计量和显著性水平的含义并加以考虑,保证检验结果的可靠性。