主要内容

单位根检验

测试单位根的模拟数据

这个例子展示了如何检验单变量时间序列模型的平稳性。它展示了如何模拟四种模型的数据:趋势平稳模型、差异平稳模型、平稳模型(AR(1))和异方差随机漫步模型。它还表明,测试产生了预期的结果。

模拟四个时间序列。

t = 1E3;%样本大小t = (1: t) ';%的时间多rng (142857);再现性的百分比Y1 = RANDN(T,1)+ .2 * T;%趋势稳定MDL2 = Arima(' D ',1,“不变”, 0.2,“方差”1);y2 =模拟(Mdl2 T“Y0”, 0);%不同固定Mdl3 = arima (基于“增大化现实”技术的, 0.99,“不变”, 0.2,“方差”1);y3 =模拟(Mdl3 T“Y0”, 0);% AR (1)Mdl4 = arima (' D ',1,“不变”, 0.2,“方差”1);标准差= (sint /200) + 1.5)/2;%性病偏差e = randn (T) 1)。*σ;%的创新Y4 =滤波器(MDL4,E,“Y0”, 0);异方差的百分比

绘制每个系列中的前100点。

Y = [y1 y2 y3 y4];图;plot1 =情节(y (1:10 0,:));plot1(1)。线宽= 2;plot1(3)。线型=“:”;plot1(3)。线宽= 2;plot1(4)。线型=“:”;plot1(4)。线宽= 2;标题'{\bf每个系列的前100个周期}';传奇(的趋势平稳不同固定的“AR(1)”...“异方差的”“位置”“西北”);

图中包含一个轴对象。该轴对象具有标题空白F i r s t空白1 0 0空白P e r o s空白F ec h空白e es包含4个类型行对象。这些对象代表趋势平稳、差异平稳、AR(1)、异方差。

所有模型都呈现出不存在的并且表现类似。因此,您可能会发现难以通过查看其初始段来区分哪些系列来自哪个模型。

绘制整个数据集。

plot2 =情节(y);plot2(1)。线宽= 2;plot2(3)。线型=“:”;plot2(3)。线宽= 2;plot2(4)。线型=“:”;Plot2(4).LineWidth = 2;标题'{\ bf每个整个系列}';传奇(的趋势平稳不同固定的“AR(1)”...“异方差的”“位置”“西北”);

图中包含一个轴对象。标题为空E、空E、空S的轴对象包含4个类型为line的对象。这些对象代表趋势平稳、差异平稳、AR(1)、异方差。

这一系列的区别在这里很明显:

  • 趋势平稳序列与平均趋势的偏差很小。

  • 差异平稳和异方差序列有持续偏离趋势线。

  • AR(1)系列表现出长期平稳行为;其他的是线性增长的。

  • 差分平稳序列与异方差序列具有相似性。而异方差序列在300周期附近的局部变率较大,900周期附近的局部变率较小。时模型方差最大 t / 2 0 0 1 在时间 1 0 0 π. 3. 1 4 .模型方差最小时 t / 2 0 0 - 1 在时间 3. 0 0 π. 9 4 2 .因此,视觉可变性与模型匹配。

在三个成长系列上使用增强的Dicky-Fuller测试(日元y2,y4)评估该系列是否有单位根。由于该系列正在增长,因此指定存在趋势。在这种情况下,空假设是 H 0 y t y t - 1 + c + b 1 δ. y t - 1 + b 2 δ. y t - 2 + ε. t 另一个假设是 H 1 y t 一个 y t - 1 + c + δ. t + b 1 δ. y t - 1 + b 2 δ. y t - 2 + ε. t .为了演示,将滞后次数设置为2。

hy1 = Adftest(Y1,“模型”“t”'滞后'2)
hY1 =逻辑1
hY2 = adftest (y2,“模型”“t”'滞后'2)
hY2 =逻辑0
hy4 = Adftest(Y4,“模型”“t”'滞后'2)
hY4 =逻辑0
  • hY1 = 1表明有足够的证据表明日元是趋势平稳。这是正确的决定,因为日元为结构上固定的趋势。

  • hY2 = 0表明没有足够的证据表明y2是趋势平稳。这是自以来的正确决定y2是根据结构固定的差异。

  • hY4 = 0表明没有足够的证据表明y4是趋势平稳。这是正确的决定,然而,dicky - fuller检验不适合一个异方差的级数。

在AR(1)系列上使用增强Dickey-Fuller测试(y3)评估该系列是否具有单位根。由于该系列不变,因此指定该系列是具有漂移项的自回归。在这种情况下,空假设是 H 0 y t y t - 1 + b 1 δ. y t - 1 + b 2 δ. y t - 2 + ε. t 另一个假设是 H 1 y t 一个 y t - 1 + b 1 δ. y t - 1 + b 2 δ. y t - 2 + ε. t .为了演示,将滞后次数设置为2。

hY3 = adftest (y3,“模型”“ard”'滞后'2)
hY3 =逻辑1

hY3 = 1表示有足够的​​证据表明这一点y3是一个具有漂移项的平稳的自回归过程。这是正确的决定,因为y3是一个具有绘制术语的自回归过程。

使用KPSS测试来评估该系列是否为单位根非平稳。指明在成长系列中有一个趋势(日元y2,y4).KPSS测试假定以下模型:

y y c t + δ. t + u t

c t c t - 1 + ε. t

在哪里 u t 是一个平稳的过程吗 ε. t 是一个均值为0,方差为0的独立同分布过程吗 σ. 2 .是否存在模型中的趋势,零假设是 H 0 σ. 2 0 (该系列是趋势静止),替代假设是 H 1 σ. 2 > 0 (不趋势静止)。为了演示,将滞后次数设置为2。

hY1 = kpsstest(日元'滞后'2,“趋势”,真正的)
hY1 =逻辑0
hY2 = kpsstest (y2,'滞后'2,“趋势”,真正的)
hY2 =逻辑1
hY3 = kpsstest (y3,'滞后'2)
hY3 =逻辑1
hY4 = kpsstest (y4,'滞后'2,“趋势”,真正的)
hY4 =逻辑1

所有测试都是正确的决定。

使用AL四系列的方差比测试来评估该系列是否随机散步。null假设是 H 0 V 一个 r δ. y t 是常数,另一个假设是 H 1 V 一个 r δ. y t 不是常数。具体说明这些创新是独立的,并且对所有人都是相同的,但是日元.测试y4两种方法。

hY1 = vratiotest(日元)
hY1 =逻辑1
hY2 = vratiotest (y2,“IID”,真正的)
hY2 =逻辑0
hy3 = vratiotest(y3,“IID”,真正的)
hY3 =逻辑0
hY4NotIID = vratiotest (y4)
hY4NotIID =逻辑0
hY4IID = vratiotest (y4,“IID”,真正的)
hY4IID =逻辑0

所有测试的结果都是正确的,除了hY4_2 = 0.该测试不会拒绝异源过程是IID随机行走的假设。这种不一致可能与随机种子相关联。

或者,你也可以用PPTEST.

检验时间序列数据的单位根

这个例子展示了如何测试一个单位根的单变量时间序列。它使用了制造业的工资数据(1900-1970年)。这个系列在Nelson-Plosser数据集中。

加载Nelson-Plosser数据。提取名义工资数据。

负载Data_NelsonPlosser工资= DataTable.WN;

修剪序列的值和相应的日期(此步骤是可选的,因为测试忽略值)。

wDates =日期(isfinite(工资));工资=工资(isfinite(工资));

绘制数据以寻找趋势。

情节(wDates,工资)标题(“工资”

图中包含一个轴对象。标题为工资的axes对象包含一个类型为line的对象。

这张图显示出指数增长。

使用log函数转换数据以线性化级数。

logWages =日志(工资);情节(wDates logWages)标题(“日志工资”

图中包含一个轴对象。标题为Log Wages的axes对象包含一个类型为line的对象。

从图中可以看出,时间序列具有线性趋势。

对不存在单位根(趋势平稳)的原假设与该序列是具有趋势(差异平稳)的单位根过程的备择假设进行检验。集'LAG',7:2:11,正如Kwiatkowski等人,1992年提出的。

[h1, pValue1] = kpsstest (logWages,“滞后”7:2:11)
h1 =1x3逻辑阵列0 0 0
pValue1 =1×30.1000 0.1000 0.1000

kpsstest未能拒绝零假设,即工资系列是趋势固定。

测试NULL假设,即该系列是一个单位根过程(差异静止),替代该系列是趋势稳定性的替代假设。

(h2, pValue2) = adftest (logWages,“模型”“t”
h2 =逻辑0
pvalue2 = 0.8327

adftest不能拒绝工资序列是单位根过程的无效假设。

因为两个测试的结果不一致,所以尚不清楚工资系列具有单位根。这是许多宏观经济系列测试的典型结果。

kpsstest有一组有限的计算临界值。当它计算出一个超出这个范围的测试统计值时,测试报告在适当端点的p值。在这种情况下,pValue反映最接近的表列值。当测试统计量位于表列值的范围内时,kpsstest线性插值p值。

测试股票数据的随机漫步

这个例子展示了如何评估一个时间序列是否是一个随机漫步。它使用2000年1月1日至2005年11月7日期间的股票和现金(货币市场)的日收益率的市场数据。

加载数据。

负载CAPMuniverse

提取两个系列进行测试。数据的第一栏是科技股的日回报率。最后一栏(第14栏)是每日现金回报率(每日货币市场利率)。

tech1 =数据(:1);金钱=数据(:,14);

回报是一天结束时的值与一天开始时的值之比的对数。

将数据转换为价格(值)而不是返回。vratiotest将价格作为投入,而不是回报。

tech1 = cumsum (tech1);金钱= cumsum(钱);

绘制数据,看看它们是否似乎是静止的。

子图(2,1,1)绘图(日期,Tech1);标题(的日志(相对股票价值)) datetick (“x”)举行次要情节(2,1,2);情节(日期、金钱)标题('日志(累计现金)') datetick (“x”)举行

图中包含2个轴对象。带有标题Log(相对股票价值)的轴对象1包含一个类型为line的对象。轴对象2的标题为Log(累计现金)包含一个类型为line的对象。

现金的可变性较小,而且似乎具有长期趋势。该系列股票有很大的变异性,并没有确定的趋势,虽然它似乎增加到接近尾声。

测试库存系列是否与随机散步匹配。

[h, pValue,统计,cValue比率)= vratiotest (tech1)
h =逻辑0
pValue = 0.1646
统计= -1.3899
cvalue = 1.9600.
率= 0.9436

vratiotest不否认随机漫步是股票系列的合理模型的假设。

测试是否是i.i.d.随机步行是股票系列的合理模型。

[h, pValue,统计,cValue比率)= vratiotest (tech1,“IID”,真正的)
h =逻辑1
pValue = 0.0304
stat = -2.1642.
cvalue = 1.9600.
率= 0.9436

vratiotest拒绝了I.I.D.随机游走是一个合理的模型的假设tech1股票系列在5%的水平。因此,vratiotest表示最合适的模型tech1级数是异方差随机漫步。

测试现金序列是否与随机漫步相匹配。

[h,pvalue,stat,cvalue,比率] = vratiotest(钱)
h =逻辑1
pValue = 4.6093 e - 145
统计= 25.6466
cvalue = 1.9600.
率= 2.0006

vratiotest强调拒绝随机游走是现金序列的合理模型的假设(pValue = 4.6093 e - 145).从序列中删除趋势并不影响最终的统计数据。

参考

Kwiatkowski, D. P. C. B. Phillips, P. Schmidt和Y. Shin。"用单位根替代检验平稳性的无效假设"中国经济学杂志.1992年第54卷,159-178页。

另请参阅

|||

相关的话题