收藏 分享(赏)

实验指导书(ARIMA模型建模与预测).doc

上传人:春华秋实 文档编号:3677457 上传时间:2018-11-15 格式:DOC 页数:15 大小:512KB
下载 相关 举报
实验指导书(ARIMA模型建模与预测).doc_第1页
第1页 / 共15页
实验指导书(ARIMA模型建模与预测).doc_第2页
第2页 / 共15页
实验指导书(ARIMA模型建模与预测).doc_第3页
第3页 / 共15页
实验指导书(ARIMA模型建模与预测).doc_第4页
第4页 / 共15页
实验指导书(ARIMA模型建模与预测).doc_第5页
第5页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、.实验指导书(ARIMA 模型建模与预测)例:我国 1952-2011 年的进出口总额数据建模及预测1、模型识别和定阶(1 )数据录入打开 Eviews 软件,选择“File”菜单中的“New-Workfile”选项,在“Workfile structure type”栏选择“Dated regular frequency”,在“Date specification”栏中分别选择“Annual”(年数据) ,分别在起始年输入 1952,终止年输入 2011,文件名输入“im_ex” ,点击 ok,见下图,这样就建立了一个工作文件。在 workfile 中新建序列 im_ex,并录入数据(点击

2、File/Import/Read Text-Lotus-Excel,找到相应的 Excel 数据集,打开数据集,出现如下图的窗口,在“Data order”选项中选择“By observation-series in columns”即按照观察值顺序录入,第一个数据是从 B15 开始的,所以在“Upper-left data cell”中输入 B15,本例只有一列数据,在 “Names for series or number if named in file”中输入序列的名字 im_ex,点击 ok,则录入了数据):.(2 )时序图判断平稳性双击序列 im_ex,点击 view/Graph/

3、line,得到下列对话框:得到如下该序列的时序图,由图形可以看出该序列呈指数上升趋势,直观来看,显著非平稳。.040,80,120,160,20,240,56057058059050510IM_EX(3 )原始数据的对数处理因为数据有指数上升趋势,为了减小波动,对其对数化,在 Eviews 命令框中输入相应的命令“series y=log(im_ex)”就得到对数序列,其时序图见下图,对数化后的序列远没有原始序列波动剧烈:4567891012356057058059050510Y从图上仍然直观看出序列不平稳,进一步考察序列 y 的自相关图和偏自相关图:.从自相关系数可以看出,呈周期衰减到零的速

4、度非常缓慢,所以断定 y 序列非平稳。为了证实这个结论,进一步对其做 ADF 检验。双击序列 y,点击 view/unit root test,出现下图的对话框,我们对序列 y 本身进行检验,所以选择 “Level”;序列 y 存在明显的线性趋势,所以选择对带常数项和线性趋势项的模型进行检验,其他采用默认设置,点击 ok。检验结果见下图,可以看出在显著性水平 0.05 下,接受存在一个单位根的原假设,进一步验证了原序列不平稳。为了找出其非平稳的阶数,需要对其一阶差分序列和二阶差分序列等进行 ADF 检验。.(4 )差分次数 d 的确定y 序列显著非平稳,现对其一阶差分序列进行 ADF 检验。在

5、对 y 的一阶差分序列进行ADF 单位根检验之前,需要明确 y 的一阶差分序列的趋势特征。在 Eviews 命令框中输入相应的命令“series dy1=D(y)”就得到对数序列的一阶差分序列 dy1,其时序图见下图-.4-.2.0.2.4.656057058059050510DY1由 y 的一阶差分序列的时序图可见,一阶差分序列不具有趋势特征,但具有非零的均值。因此,在下图对序列 y 的单位根检验的对话框中选择“1st difference”,同时选择带常数项、不带趋势项的模型进行检验,其他采用默认设置,点击 ok。检验结果见下图,可以看出在显著性水平 0.05 下,拒绝存在单位根的原假设,

6、说明序列 y 的一阶差分序列是平稳序列,因此 d=1。(5 )建立一阶差分序列在 Eviews 对话框中输入“series x=y-y(-1)”或“series x=y-y(-1)”,并点击“回车” ,便得到了经过一阶差分处理后的新序列 x,其时序图见下图,从直观上来看,序列 x 也是平稳的,这就可以对 x 序列进行 ARMA 模型分析了。.-.4-.2.0.2.4.656057058059050510X(6 )模型识别和定阶双击序列 x,点击 view/Correlogram,出现下图对话框,我们对原始数据序列做相关图,因此在“Correlogram of”对话框中选择“Level”即表示对

7、原始序列做相关,在滞后阶数中选择 12(或 8= ) ,点击 ok,即出现下列相关60图:从 x 的自相关函数图和偏自相关函数图中我们可以看到,偏自相关系数是明显截尾的,而自相关系数在滞后 6 阶和 7 阶的时候落在 2 倍标准差的边缘。这使得我们难以采用传统的 Box-Jenkins 方法(自相关偏自相关函数、残差方差图、F 检验、准则函数)确定模型的阶数。对于这种情况,本例通过反复对模型进行估计比较不同模型的变量对应参数的显著性来确定模型阶数。2、模型的参数估计在 Eviews 主菜单点击“Quick ”“Estimate Equation”,会弹出如下图所示的窗口,.在“Equation

8、 Specification”空白栏中键入“x C AR(1) AR(2) MA(1) MA(2) MA(3) MA(4) MA(5)”等,在 “Estimation Settings”中选择“LS-Least Squares(NLS and ARMA)”,然后“OK”。或者在命令窗口直接输入“ls x C AR(1) AR(2) MA(1) MA(2) MA(3) MA(4) MA(5)”等。针对序列 x 我们尝试几种不同的模型拟合,比如 ARMA(1,7),ARMA(1,6) ,ARMA(2,6)等。各种模型的参数显著性 t 检验的结果(p 值)见下表(不显著为零的参数的 p 值用红色字体

9、表示)模型 c ar(1) ar(2) ma(1) ma(2)ma(3) ma(4) ma(5) ma(6) ma(7)Eq02_07 0.00080.80090.04860.44030.00020.09410.98410.97260.00660.0591Eq02_07_10.0005 0.0010.0122 00.02430.81890.85710.00060.0043Eq02_07_20.00040.00020.0098 00.0033 0 0Eq02_06 0.008 0.00530.63320.1156 0.0040.54640.34280.86360.0206Eq02_05 0 0.

10、28 0.19240.90960.00160.20360.46050.9062Eq01_07 0.01120.13340.99160.02190.95240.57130.82330.00020.2726Eq01_07_1 0.0110.08750.98650.01750.55430.78090.00020.2531Eq01_07_20.01020.08170.98920.01920.63630.0002 0.217Eq01_07_30.00720.09460.92390.0163 00.1661Eq01_07_40.00690.00220.0157 00.0227Eq01_06 0.0489

11、00.00030.00170.59350.31620.45550.0135Eq01_06_10.0025 00.00010.00050可见,各种估计模型的参数显著性检验中,只有黄色覆盖的包含部分参数的三个模型ARMA(2,7)、ARMA(1,7)和 ARMA(1,6)所有参数都显著,现在来比较上述模型的残差方差.和信息准则值模型 残差方差 AIC BICEq02_07 0.019842 -0.9241 -0.56567Eq02_07_1 0.019676 -0.94655 -0.62396Eq02_07_2 0.018908 -1.01569 -0.76479Eq02_06 0.019489

12、-0.95607 -0.63348Eq02_05 0.020896 -0.90082 -0.61408Eq01_07 0.021495 -0.86034 -0.54061Eq01_07_1 0.021066 -0.89478 -0.61058Eq01_07_2 0.02067 -0.92844 -0.67977Eq01_07_3 0.020351 -0.95904 -0.74589Eq01_07_4 0.019969 -0.99342 -0.81579Eq01_06 0.020143 -0.93957 -0.65537Eq01_06_1 0.019293 -1.02784 -0.85022由上

13、表可见,方程 Eq02_07_2 对应的 ARMA(2,7)模型的残差方差最小,其次是方程Eq01_06_1 对应的 ARMA(1,6)模型的残差方差;而方程 Eq01_06_1 对应的 ARMA(1,6)模型的 AIC 和 BIC 信息准则都小于方程 Eq02_07_2 对应的 ARMA(2,7)模型的 AIC 和 BIC 信息准则,且在估计的模型中,方程 Eq01_06_1 对应的 ARMA(1,6)模型的 AIC 和 BIC 信息准则最小,而且由各个模型系数的 t 检验统计量的 p 值可知,在方程 Eq01_06_1 对应的ARMA(1,6)模型中所有模型的系数都显著不为零。所以,我们这

14、里选择由方程 Eq01_06_1对应的 ARMA(1,6)模型。该模型的估计结果如下由结果可见,模型的最小二乘估计结果为 11260.1567.840.6390.48390.45978(392)(5)()(76)(13)t t t t tXXaaa 误差项方差的估计值为 .a.并且由模型的系数的 t 统计量及其 p 值也可以看到,模型所有解释变量的参数估计值在0.01 的显著性水平下都是显著的。3、模型的适应性检验参数估计后,应对拟合模型的适应性进行检验,实质是对模型残差序列进行白噪声检验。若残差序列不是白噪声,说明还有一些重要信息没被提取,应重新设定模型。可以对残差进行纯随机性检验,也可用针

15、对残差的 检验。2(1) 残差序列的生成残差序列从 1954 至 2011 年采用拟合的 ARMA(1,6)模型生成,在方程窗口点击proc/make residual series,得到下列对话框将该方程的残差序列定义为 a_eq01_06_1 即可,可以得到从 1954 至 2011 年采用拟合的ARMA(1,6)模型生成的残差序列。前面的 1953 则是将前面的初始值都设为 0 而计算的。程序命令如下012012,;,Xa a_eq01_06_1 (2)=x(2)-0.151676-0.785440*0+0.463391*0+0.428391*0-0.454978*0这样得到的序列 a_

16、eq01_06_1 即为 ARMA(1,6)模型的残差序列,a_eq01_06_1 序列的自相关偏自相关图如下:.(偏)相关函数值、以及 Q-Stat 及其 p 值显示,残差序列不存在自相关,为白噪声,因此模型是适合的模型。模型拟合图如下-.4-.2.0.2.4 -.4-.2.0.2.4.65606570758085909500510Residual Actual Fited(8 )模型预测我们用拟合的有效模型进行短期预测,比如我们预测 2012 年、2013 年、2014 年和2015 年的进出口总额。先预测 2012 年、2013 年、2014 年和 2015 年的 x,再预测进出口总额。

17、首先需要扩展样本期,在命令栏输入 expand 1952 2015,回车则样本序列长度就变成64 了,且最后面 4 个变量值为空。在方程估计窗口点击 Forecast,出现下图对话框,.预测方法常用有两种:Dynamic forecast 和 Static forecast:动态预测是根据所选择的一定的估计区间,进行多步向前预测(从预测样本的第一期开始计算多步预测): dynamic dynamicdynamic11dynaicaic26 0.1567.840.43939.578,94, ,2,t t tt tXX每一步都是采用前面的预测值计算新的预测值。而样本范围内(1954-2011)的序

18、列实际值是已知的。因此,动态预测只是适应于样本外(2012-2015)预测,而不适应于样本内(1954-2011)预测。静态预测是滚动的进行向前一步预测,即每预测一次,用真实值代替预测值,加入到估计区间,再进行向前一步预测(利用滞后因变量的实际值而不是预测值计算一步向前(one-step-ahead)预测的结果):staic 11260.1567.840.6390.48390.4597894,2,t t t tXXaaa 可见,对于样本外(2012-2015)的预测需要提供样本外预测期间的解释变量值。对静态预测,还必须提供滞后因变量的数值。而对于样本外(2012-2015)的预测通常因变量的实

19、际观测值是未知的,所以,静态预测一般只适应于样本内(19542011)预测,不适应于样本外预测(只可以进行向前一步样本外预测)。并且,由计算公式可见,样本内(1954-2011)的静态预测值与模型的拟合值(估计值)相同。综上所述,在预测时,样本内(1954-2011)预测选用静态预测或模型的拟合值(估计值) ,样本外(2012-2015)预测选用动态预测。具体步骤:(1 )进行样本内(1954-2011)静态预测,在方程估计窗口点击 Forecast,出现下图对话框,.预测序列记为 xf_static_eq01_06_1,预测方法选择“Static forecast”,预测样本区间为“1952

20、-2015”,点击 OK,得到下列预测图-.6-.4-.2.0.2.4.6.856057058059050510XF_STAIC_EQ01_61 2S.EForecast: XF_STAIC_EQ01_61Atulrcst mple: 1952 5djedal401Inclu obsrvtions: 8Rot MnSquedEr .13279eaAslt r 045 b. Pcntro 6.8ThilInquality Ceficnt32 Bias ropri 0.14Vrice Porti 698Cvinpin .237(2 )将序列的估计值 x_fit_eq01_06_1 和这里的静态预测

21、序列 xf_static_eq01_06_1 以组的形式打开,并将组命名为 x_fit_xf_static,组序列图形如下-.2-.1.0.1.2.3.4560570580590505105X_FITEQ01_61SAIC0_61可见,样本内的静态预测序列值严格落在拟合值序列 x_fit 的曲线上,说明在样本期内(1954-2011)静态预测值与模型的拟合值(估计值)是相等的。(3 )进行样本外(2012-2015)动态预测,在方程估计窗口点击 Forecast,出现下图.对话框,预测序列记为 xf_dynamic_eq01_06_1,预测方法选择“Dynamic forecast”,预测样本

22、区间为样本外区间“2012-2015” ,点击 OK,得到下列预测图-.2-.1.0.1.2.3.4.5.601 201320142015XF_DYNAMIC_EQ01_61 2S.E(4 )建立新的序列 x_fit_f 存放序列的静态和动态预测值,在样本内(1954-2011)采用静态预测值或序列的拟合值(估计值) ,在样本外(2012-2015)采用动态预测值。所以,将序列 xf_static_eq01_06_1(或序列 x_fit_eq01_06_1)中第 1954-2011 年的数值复制到序列 x_fit_f 的对应位置,然后将序列 xf_dynamic_eq01_06_1 中第 20

23、12-2015 年的数值复制到序列 x_fit_f 的对应位置,这样得到的序列 x_fit_f 就是序列 x 的预测值。(5 )将序列的实际值 x 和这里的预测序列 x_fit_f 以组的形式打开,并将组命名为x_x_fit_f,组序列图形,即 x 的实际值与预测值图形如下.-.4-.2.0.2.4.6560570580590505105XX_FIT综合上述分析过程,实际上我们是针对原序列(im_ex):1952 年2011 年我国进出口总额数据序列,建立了一个 ARIMA(1,1,6)模型进行拟合,模型形式如下: 1126(1)lnim_ex)0.567.840(lnimex)3939.45

24、978t tt ttBaaa 同样,也可以得到序列 y 的预测值序列 y_fit_f 和序列 im_ex 的预测值序列 im_ex_fit_f,命令分别为“series y_fit_f=x_fit_f+x_fit_f(-1)”和“series im_ex_fit_f=exp(y_fit_f)”。然后,将序列 y 和序列 im_ex 的实际值 y 和 im_ex 与这里的预测序列 y_fit_f 和 im_ex_fit_f 以组的形式打开,并将组分别命名为 y_y_fit_f 和 im_ex_im_ex_fit_f,组序列图形,即 y 和 im_ex 的实际值与预测值图形如下-202468101214560570580590505105YY_FIT.040,80,120,160,20,240,560570580590505105IM_EXIM_EXFIT_由图形可以看出,对非平稳序列 y 和 im_ex 的预测效果非常差。因此,非平稳序列的预测具有不稳定性,对非平稳序列的预测意义不大。作业:1.我国 1952-2011 年的社会消费品零售总额,按照平稳时间序列建模的步骤,建立 ARMA 模型,并对第 2012 年和 2013 年的社会消费品零售总额进行预测。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 规范标准 > 实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报