SAS时序分析程序说明ARIMA过程•单变量场合:ARIMA模型的识别,拟合,预测•多变量场合:ARIMAX模型的识别,拟合,预测–干预模型的识别,拟合,预测–转移函数模型的识别,拟合,预测ARIMA过程三阶段建模•PROCARIMAoptions;•IDENTIFYVAR=variableoptions;/识别/•ESTIMATEoptions;/估计/•FORECASToptions;/预测/PROCARIMA语句•开始进入ARIMA分析程序的起始命令•可选择命令:–Data=文件名/指定分析数据所在文件名/–Out=文件名/指定输出预测值的SAS数据集/•例句:PROCARIMA;–默认对最近一次使用的数据集进行ARIMA分析PROCARIMAdata=a;–对临时库数据集a进行ARIMA分析PROCARIMAdata=sasuser.aout=b;–对永久库数据集sasuer.a进行ARIMA分析,预测结果存入临时数据库bIDENTIFY语句•单变量序列样本自相关,逆自相关和偏自相关属性,平稳性识别,白噪声识别,单位根检验结果输出•多变量序列响应变量和解释变量的选择及互相关属性输出•命令格式•IDENTIFYVAR=相应变量名可选择命令;例句Identifyvar=x;–对x变量进行识别,输出均值,标准差等描述性统计量–输出自相关,逆自相关和偏自相关系数及图(平稳性检验和参数定阶基础)–输出白噪声检验结果Identifyvar=x(d);–对X的d步差分变量进行识别,输出上面三种结果Identifyvar=x(1);–对X的一阶差分变量进行识别Identifyvar=x(1,1);–对X的二阶差分变量进行识别Identifyvar=x(1,4);–对X的一阶和4步差分后变量进行识别(通常用于有趋势和有周期的序列识别)IDENTIFY可选命令•Nlag=k;–指明计算自相关系数和互相关系数过程中需要考虑的延迟阶数。如果不特别指定nlag的阶数,计算机默认的输出阶数是min(24,n/4)•Minicp=(p1:p2)q=(q1:q2);–在自相关阶数跑遍p1-p2,移动平均阶数跑遍q1-q2的范围内,寻找AIC最小的模型阶数(一种傻瓜型定阶方法)•Stationarity=();–单位根检验(df,adf或pp检验,其中df检验等于adf(1)检验)•Crosscorr=(一个或多个输入变量名)–指定输入变量(可以是原序列也可以是差分序列),单个输入变量可以不加括号,多个输入变量要加括号•Outcov=文件名–将自协方差,自相关系数,偏自相关系数和逆自相关系数写入该文件集中例句Identifyvar=cpi(1)nlag=18stationarity=(adf=3);–对cpi的一阶差分序列进行识别,输出延迟18阶的基本统计,自相关信息和白噪声检验信息–对cpi的一阶差分序列进行滞后阶数分别等于0,1,2,3的adf检验Identifyvar=cpi(1)nlag=18stationarity=(pp=2);–对cpi的一阶差分序列进行滞后阶数分别等于0,1,2的pp检验–其他同上例句Identifyvar=cpi(1)minicp=(0:5)q=(0:5);–对cpi一阶差分序列进行识别,输出基本统计,自相关信息和白噪声检验信息–对cpi一阶差分序列寻找最优拟合阶数(p=5,q=5)例句Identifyvar=cpi(1)crosscorr=gdp;–对cpi的一阶差分序列进行识别–以gdp作为输入变量,cpi的一阶差分序列作为响应变量,对这两个变量之间的互相关关系进行识别Identifyvar=cpi(1)crosscorr=gdp(1);–对cpi的一阶差分序列进行识别(输出滞后12阶的相关信息)–以gdp的一阶差分序列作为输入变量,cpi的一阶差分序列作为响应变量,对这两个变量之间的互相关关系进行识别Identifyvar=cpi(1)crosscorr=(gdp(1)interest);–对cpi的一阶差分序列进行识别(输出滞后12阶的相关信息)–以gdp的一阶差分序列和interest作为输入变量,cpi的一阶差分序列作为响应变量,对解释变量和响应变量之间的互相关关系进行识别Identifyvar=cpi(1)nlag=12crosscorr=(gdp(1)interest)outcov=out;–其他同上–输出延迟阶数为12的自相关和偏自相关系数信息–相关系数的信息存入数据集outESTIMATE命令•给出指定模型的所有参数的估计值•参数的显著性检验情况•残差的白噪声检验情况•命令格式•Estimatep=自相关阶数q=移动平均阶数;–p或q如果为零,可以忽略不写例句Identifyvar=x;Estimatep=1q=1;–拟合ARMA(1,1)模型Identifyvar=x(1);Estimatep=(13);–拟合项疏系数模型Identifyvar=x(1);Estimatep=1q=1;–拟合ARIMA(1,1,1)模型Identifyvar=x(14);Estimatep=(1)(4)q=(1)(4)noint;–拟合无常数项乘积模型ARIMA(1,1,1)×ARIMA4(1,1,1)模型313(1)1ttBxBB4414414(1)(1)(1)(1)(1)(1)ttBBBBxBB带输入变量的估计命令Input(d$(q)/(p)输入变量名)–对输入变量序列的ARIMA(p,d,q)变化量作为解释变量,与相应变量进行回归分析•例句Identifyvar=cpi(1)crosscorr=gdp(1);Estimateinput=(1$gdp);–对cpi的一阶差分序列和gdp的一阶差分序列建立回归模型tttcpiabgdp例句Identifyvar=cpi(1)crosscorr=gdp(1);Estimateinput=(1$(1)/(1)gdp);–对cpi的一阶差分序列和gdp的一阶差分序列建立如下回归模型Identifyvar=cpi(1)crosscorr=gdp(1);Estimatep=2input=(1$(1)/(1)gdp);–对cpi的一阶差分序列和gdp的一阶差分序列建立如上回归模型,同时对残差序列拟合AR(2)模型1111tttBcpigdpB12112111tttBcpigdpBBB问题•要拟合如下模型如何写命令:12122tttttyxxx1122ttttyxxFORECAST命令•给出估计值及置信区间•给出指定期数的预测值及置信区间•选择是否输出预测结果•命令格式FORECASTlead=预测期数id=时间标示interval=单位时间间隔alpha=aout=输出结果数据集;–如果procarima中指定了输出文件集,这里又一次指定了输出文件集名,这个名称覆盖前一个名称。例句•FORECASTlead=5id=timeinterval=monthalpha=0.01out=result;–将相应变量的估计值及5期预测值及它们的99%置信区间存入result这个数据集中,该数据以time为时间变量,该变量为月度数据例句练习•procarimadata=seriesj;identifyvar=xnlag=10;estimatep=3;•identifyvar=ycrosscorr=(x)nlag=10;estimateinput=(3$(1,2)/(1,2)x)plot;•estimatep=2input=(3$(1,2)/(1)x);run;AUTOREG过程•回归分析•进行带自相关误差的回归分析•条件异方差建模11,,211()(,),~(0,1)ttttttmtmiidttttqptitijtjijyxvvvvARmGARCHpqheeNhah回归模型RUTOREG命令Procautoregdata=文件名;Model应变量=自变量/nlag=mlagdep=延迟因变量garch=(p=q=type=)nointmethod=估计方法Dw=dwprobtationarity=(phillips);Outputout=输出文件名p=预测值pm=预测均值rm=残差值lcl=置信下限ucl=置信上限;Type的类型•TYPE=-EXPspecifiestheexponentialGARCHorEGARCHmodel.-INTspecifiestheintegratedGARCHorIGARCHmodel.MEAN=valuespecifiesthefunctionalformoftheGARCH-Mmodel.ThevaluesoftheMEAN=optionareLINEARspecifiesthelinearfunction.LOGspecifiesthelogfunction.SQRTspecifiesthesquarerootfunction.lnttttttttttttyxhvyxhvyxhvMethod的类型•METHOD=MLspecifiesmaximumlikelihoodestimates•METHOD=ULSspecifiesunconditionalleast-squaresestimates•METHOD=YWspecifiesYule-Walkerestimates•METHOD=ITYWspecifiesiterativeYule-Walkerestimates例句Procautoregdata=a;Modely=t/nlag=5method=mlbackstep;Run;–构建如下模型,使用极大使然估计方法,自回归的阶数最大为5,最合适的阶数由逐步回归确定0111,,+~(0,1)tttttptpiidtytvvvvN例句Procautoregdata=a;Modely=t/nlag=2method=ml;Run;–构建如下模型,使用极大使然估计方法011122,,+~(0,1)ttttttiidtytvvvvN例句Procautoregdata=a;Modely=/nlag=2method=ml;Run;–构建如下模型,使用极大使然估计方法01112,,+~(0,1)ttttttpiidtytvvvvN例句Dataa;Seta;Lagy=lag(y);Procautoregdata=a;Modey=lagy/lagdep=lagy;–构建如下回归模型,因为自变量是因变量的一阶延迟,所以残差自相关检验是donbin-h检验011+tttyy例句Procautoregdata=a;Modely=x/nlag=2garch=(p=1q=1noint)method=ml;Run;–构建如下模型,使用极大使然估计方法0111122,,21111(2)(1,1),~(0,1)tttttttiidtttttttyxvvvvARGARCHheeNhh回归模型练习•procautoregdata=ibmmaxit=50;modelr=/nointgarch=(q=2);outputout=acev=v;run;练习•用AUTOREG程序,采用E-G两步法编写协整与误差修正程序VARMAX过程•Granger检验•协整分析•误差修正模型•向量自回归(含脉冲响应和方差分解)•命令格式Procvarmaxdata=文件名;Model相应变量=解释变量/p=自回归阶数cointtest=(joh