立序列{Xt}关于时间t的线性回归模型,并检验残差序列的自相关性和异方差性,如果检验结果显示残差序列具有显著自相关性,建立残差自回归模型;如果残差序列具有显著异方差性,则要建立条件异方差模型。 语句说明: (1)“model x=t/nlag=5 dwprob archtest;”,该命令指令系统建立序列{Xt}关于时间t的线性回归模型,并检验残差序列5阶延迟的自相关性并输出DW检验的P值,同时对残差序列进行异方差检验。 DW检验结果显示残差序列具有显著的正相关性,如图(14)所示。 图(14) 普通最小二乘估计输出结果 残差序列5阶延迟自相关图显示残差序列至少具有2阶显著自相关性,如图(15)所示。 图(15) 残差序列自相关图 参数估计结果显示回归模型常熟截距项不显著,如图(16)所示。 图(16) 线性回归模型参数估计结果 异方差检验结果显示,残差序列具有显著地异方差性,且具有显著地长期相关性,如图(17)所示。 11
图(17) 异方差检验结果 (2)“model x=t/nlag=2 noint garch=(p=1,q=1);”,综合考虑序列残差序列自现关性和异方差性检验结果,尝试拟合无回归常数项的AR(2)-GARCH(1,1)模型。 模型最总拟合结果如图(18)所示。 图(18) 普通最小二乘估计输出结果 参数检验结果显示除GARCH(1,1)模型中的常数项不显著外,其他变量均显著,整个模型的R^2高达0.9954,且正态性检验不显著(P值为0.3106),这与假定GARCH的残差函数εt/(ht)^(1/2)服从正态分布相吻合,所以可以认为该模型拟合成功。 (3)“output out=out p=p residual=residual lcl=lcl ucl=ucl cev=cev;”将估计值(p=),残差(residual=),序列置信下限(lcl=),序列置信上限(Ucl=),条件方差(cev)的结果存入临时数据集work.out。 后面整个data步的工作都是对结果数据集work.out进行数据加工,已获得以下数据: 残差序列方差齐性假定下95%的置信下限:l95=-1.96*sqrt(51.42515); 残差序列方差齐性假定下95%的置信上限:u95=1.96*sqrt(51.42515); 残差序列条件方差假定下95%的置信下限:Lcl_GARCH=-1.96*sqrt(cev); 12
残差序列条件方差假定下95%的置信上限:Ucl_GARCH=1.96*sqrt(cev); 条件方差假定下,序列的95%的置信下限Lcl_p=p-1.96*sqrt(cev); 条件方差假定下,序列的95%的置信上限Ucl_p=p+1.96*sqrt(cev); 分别绘制两种拟合效果图,图(19)是针对残差序列的波动性拟合情况,及在方差齐性和非齐两种假定下的置信区间,绘制命令如下: plot residual*t=2 l95*t=3 Lcl_GARCH*t=4 u95*t=3 Ucl_GARCH*t=4/overlay; 图(19) 残差序列在两种方差假定下的置信区间效果图 图(21)是原序列的拟合情况,及在方差齐性和非齐两种假定下的置信区间,绘图命令如下: plot x*t=5 lcl*t=3 LCL_p*t=4 ucl*t=3 UCL_p*t=4/overlay; 图(21) 序列在两种方差假定下的置信区间效果图 13
图中,中间的波动曲线为残差序列或原序列,虚线为根据无条件方差得到的95%置信区间,而实线为根据条件方差得到的95%置信区间。
习题1
data example5_1; input x@@; difx=dif(x); t=_n_; cards;
304 303 307 299 296 293 301 293 301 295 284 286 286 287 284 282 278 281 278 277 279 278 270 268 272 273 279 279 280 275 271 277 278 279 283 284 282 283 279 280 280 279 278 283 278 270 275 273 273 272 275 273 273 272 273 272 273 271 272 271 273 277 274 274 272 280 282 292 295 295 294 290 291 288 288 290 293 288 289 291 293 293 290 288 287 289 292 288 288 285 282 286 286 287 284 283 286 282 287 286 287 292 292 294 291 288 289 ;
proc gplot; plot x*t;
symbol v=star c=black i=join; proc gplot;
plot x*t difx*t;
symbol v=star c=black i=join; proc arima;
identify var=x(1); estimate p=1;
forecast lead=5 id=t; run; 实验结果:
14
x31030029028027026001020304050t60708090100110 图1.1 序列时序图 由时序图可知,该序列不平稳,是一个非平稳序列。 x100-10-2001020304050time60708090100110 图1.2 序列difx时序图 差分运算的实质是使用自回归方式提取确定性信息,因此用1阶差分对序列的信息提取。该时序图没有明显的非平稳特征。 15