
【SAS精品讲义】Unit42Stat【WORD可编辑版本】.pdf
18页读万卷书 行万里路 1 第四十二课第四十二课 非平稳序列的随机分析非平稳序列的随机分析 20 世纪 70 年代,G. P. Box 和 G. M. Jenkins 发表了专著时间序列分析:预测和控 制 ,对平稳时间序列数据,提出了自回归滑动平均模型 ARIMA,以及一整套的建模、估计、 检验和控制方法使时间序列分析广泛地运用成为可能为了纪念 Box 和 Jenkins 对时间序 列发展的特殊贡献,现在人们也常把 ARIMA 模型称为 Box-Jenkins 模型 当我们拟合一个时间序列时, 先通过差分法或适当的变换使非平稳序列化成为平稳序列, 我们再要考虑的是参数化和记忆特征的有效性, 用这种参数方法拟合序列为某种特定的结构, 只用很少量的参数,使参数的有效估计成为可能相对于一个序列的过去值,可用传统的 Box 和 Jenkins 方法建模 实际上,Box-Jenkins 模型主要是运用于单变量、同方差场合的线性模型随着对时间序 列应用的深入研究,发现还存在着许多局限性所以近 20 年来,统计学家纷纷转向多变量、 异方差和非线性场合的时间序列分析方法的研究,并取得突破性的进展,其中 Engle 和 Granger 一起获得 2003 年诺贝尔经济学奖。
在异方差场合,Robert F.Engle 在 1982 年提出 了自回归条件异方差 ARCH 模型,以及在 ARCH 模型上衍生出的一系列拓展模型在多变量场 合,70 年代末,G. E. P. Box 教授和刁锦寰教授在处理洛山矶的环境数据时,提出了干预分 析和异常值检验方法1987 年,C.Granger 提出了协整(co-integration)理论,在多变量 时间序列建模过程中“变量是平稳的”不再是必须条件了,而只要求它们的某种组合是平稳 的非线性时间序列分析也有重大发展,汤家豪教授等在 1980 年左右提出了利用分段线性化 构造门限自回归模型 一、一、 ARIMAARIMA 模型模型 随着对时间序列分析方法的深入研究,人们发现非平稳序列的确定性因素分解方法(如 季节模型、趋势模型、移动平均、指数平滑等)存在一些问题,它只能提取显著的确定性信 息,对随机性信息浪费严重,同时也无法对确定性因素之间的关系进行分析而非平稳序列 随机分析的发展就是为了弥补确定性因素分解方法的不足对于时间序列数据分析无论是采 用确定性时序分析方法,还是随机时序分析方法,分析的第一步都是要通过有效手段提取序 列中所蕴藏的确定性信息。
Box 和 Jenkins 特别强调差分方法的使用,他们使用大量的案例 读万卷书 行万里路 2 分析证明差分方法是一种非常简便有效的确定性信息的提取方法 而 Gramer 分解定理则在理 论上保证了适当阶数的差分一定可以充分提取确定性信息 1. 1. ARIMAARIMA 模型的结构模型的结构 许多实际的序列,特别是从经济和商业领域产生的时间序列是非平稳的,由于受观察个 数所限,我们建立有限阶数模型,描述时间序列过程我们引进一种混和自回归和滑动平均 (Autoregressive-integrated-moving average)ARIMA模型,简记为),,(qdpARIMA这种 模型包括很广的一类有限参数的线性时间序列模型,非常有用地描述各种时间序列ARIMA模 型的形式如下: tt d BxB)()(= (42.1) 式中: dd B)1 ( = 为d阶差分 p pB BBB= 2 21 1)( 为平稳可逆),(qpARMA模型的自回归系数多项式 q qB BBB= 2 21 1)( 为平稳可逆),(qpARMA模型的移动平滑系数多项式 ), 0( 2 WN t 为零均值的白噪声序列。
式(8.3.1)可以简记为: tt d B B x )( )( = (42.2) 由式(42.2)显而易见,ARIMA 模型的实质就是差分运算与 ARMA 模型的组合这一关系表 明, 任何非平稳序列只要通过适当阶数的差分实现差分后平稳, 就可以对差分后序列进行ARMA 模型的拟合了d阶差分后的序列可以表示为: = = d i it i d d t d xCx 1 ) 1( (42.3) 式中, )!( ! ! idi d C i d =, 即d阶差分后序列等于原来序列的若干序列值的某种加权和 特 别当),,(qdpARIMA模型中的参数p、d、q取一些特殊值时,可以转换成一些常见模型, 例如,当0=d时,就是),(qpARMA模型;当0=p时,为),(qdIMA模型;当0=q时, 为),(dpARI模型;当0, 1===qpd时,)0 , 1 , 0(ARIMA模型为 ttt xx+= 1 ,被称为随 读万卷书 行万里路 3 机游走模型,或称醉汉模型,是有效市场理论的核心,常应用于投机价格走势的模拟 2. 2. ARIMAARIMA 模型的建模步骤模型的建模步骤 Box 和 Jenkins 描述了建立 ARIMA 模型的三个阶段:识别阶段、估计阶段和预测阶段。
如 图 42.1 所示 ((1 1)) 识别阶段识别阶段 使用 identify 语句来指定响应变量序列并且识别候选 ARIMA 模型identify 语句读入 后面语句中用到的时间序列,一般先对序列进行非线性、差分和平稳性检验,可能对序列进 行差分,然后计算自相关系数 ACF、逆自相关系数 IACF、偏自相关系数 PACF 和互相关系数 此阶段的输出通常会建议一个或多个可拟合的 ARIMA 模型如果模型确定,还可以检验样本 自相关系数 SACF 和样本偏自相关系数 SPACF,以分出模型的类型 ((2 2)) 估计阶段估计阶段 使用 estimate 语句来指定 ARIMA 模型去拟合在前面 identify 语句中指定的响应变量, 并且估计该模型的参数estimate 语句也生成诊断统计量从而帮助判断该模型的适用性关 于参数估计值的显著性检验可以指出模型里的一些项是否不需要 拟合优度统计量 2 R可帮助 比较该模型和其他模型的优劣关于白噪声残差检验可指明残差序列是否包含可被其他更复 杂模型采用的额外信息如果诊断检验表明模型不适用,则可尝试另一个模型然后重复估计 和诊断 ((3 3)) 预测阶段预测阶段 使用 forecast 语句来预测时间序列的未来值,并对这些来自前面 estimate 语句生成的 ARIMA 模型的预测值产生置信区间。
读万卷书 行万里路 4 图 42.1 Box-Jenkins 法建模过程示意图 二、二、 ARIMAARIMA 过程过程 SAS/ETS 软件中的 ARIMA 过程是集一元时间序列模型判定、参数估计和预测为一体的多 功能综合工具它是采用 Box-Jenkins 方法建立 ARIMA 模型当 ARIMA 模型包括其他时间序 列作为输入变量时,该模型有时也被称为 ARIMAX 模型ARIMA 模型还支持干预或中断时间序 列模型,误差的多元回归分析,任意复杂程度的有理转移函数模型ARIMA 模型有三个参数 (p,d,q),这里p指模型的自回归部分的阶数,d指序列差分的次数,q指模型平均移动部分 的次数该过程通常分三个阶段进行:首先识别序列,然后估计和诊断检验模型,最后进行 预测 ARIMA 过程一般由下列语句控制: proc arima data=时间序列数据集 out=输出预测值数据集; where 条件表达式; identify var=变量() ; estimate ; forecast ; run ; where 语句的作用是指定用于分析的时间间隔,通常条件表达式是有关日期的条件表达 读万卷书 行万里路 5 式,例如,31dec98d 1. 1. identifyidentify 语句中的语句中的< 指定了构造模型的时间序列变量,可以将 identify 语句缩写为 iidentify 语句主要完 成时间序列的差分计算、样本 ACF、IACF 和 PACF 函数的计算、卡方检验统计量和白噪声自相 关检验的 p 值的计算它的主要选项有: varvar= =变量变量( (d d1 1, ,d d2 2,,,,d dk k) )指明含有要分析的时间序指明含有要分析的时间序列的变量名,按括号内列出的列的变量名,按括号内列出的 差分周期列表来计算时间序列的滞后差分,是必选项例如,差分周期列表来计算时间序列的滞后差分,是必选项例如,varvar= =X X((1 1)为对滞后)为对滞后 1 1 项的项的 序列差分,即序列差分,即X Xt tX Xt t- -1 1var=var=X X((2 2)为对滞后)为对滞后 2 2 项的序列差分,即项的序列差分,即X Xt tX Xt t- -2 2varvar= =X X((1 1,,1 1)) 为为X X进行二阶差分,即(进行二阶差分,即(X Xt tX Xt t- -1 1)()(X Xt t- -1 1X Xt t- -2 2) 。 nlagnlag= =数字数字指明计算自相关的滞后数,其值应大于指明计算自相关的滞后数,其值应大于p p+ +d d+ +q q,小于观测数,默认值,小于观测数,默认值 为为 2424 noprintnoprint不输出结果不输出结果 crosscorrcrosscorr= =(干预变量((干预变量(d d1 1) )) )列出有列出有varvar= =指定的响应序列的交叉相关变量干指定的响应序列的交叉相关变量干 预变量在交叉相关变量中交叉相关变量的差分由圆括号内的差分滞后确定预变量在交叉相关变量中交叉相关变量的差分由圆括号内的差分滞后确定 2. 2. estimateestimate 语句中的语句中的< 该语句对已执行的 identify 语句中的响应变量规定一个模型,可以缩写为 e定义模型 的主要选项有: p p= =((p p1 1, ,p p2 2,,)()(p p1 1, ,p p2 2,,))定义一个在定义一个在p p中指定的滞后处具有自回归参数的中指定的滞后处具有自回归参数的 模型,模型,p p的默认值为的默认值为 0 0 q q= =((q q1 1, ,q q2 2,,)()(q q1 1, ,q q2 2,,))定义一个在定义一个在q q中指定的滞后处具有滑动平均参数中指定的滞后处具有滑动平均参数 的模型,的模型,q q的默认值为的默认值为 0 0。 如果如果p p= =和和q q= =都没有指定,则拟合随机模型都没有指定,则拟合随机模型 noconstantnoconstant在模型中舍弃常数项在模型中舍弃常数项 nointnoint在该模型中不拟合截距参数在该模型中不拟合截距参数 methodmethod= =mlml/ /ulsuls/ /clscls指定估计时使用的方法指定估计时使用的方法mlml 为极大似然估计方法,为极大似然估计方法,ulsuls 为为 无条件最小二乘法,无条件最小二乘法,clscls 为有条件最小二乘法默认值为为有条件最小二乘法默认值为 clscls outestoutest= =数据集名数据集名将参数估计值输出到指定的数据集将参数估计值输出到指定的数据集 outmodeoutmode= =数据集名数据集名将模型和参数估计值输出到指定的数据集将模型和参数估计值输出到指定的数据集 outstatoutstat= =数据集名数据集名将模型诊断统计量输出到指定的数据集将模型诊断统计量输出到指定的数据集 plotplot可以绘制残差自回归。
