SAS学习系列40 时间序列分析ⅣGARCH模型.docx

上传人:b****5 文档编号:6748004 上传时间:2023-01-09 格式:DOCX 页数:21 大小:223.20KB
下载 相关 举报
SAS学习系列40 时间序列分析ⅣGARCH模型.docx_第1页
第1页 / 共21页
SAS学习系列40 时间序列分析ⅣGARCH模型.docx_第2页
第2页 / 共21页
SAS学习系列40 时间序列分析ⅣGARCH模型.docx_第3页
第3页 / 共21页
SAS学习系列40 时间序列分析ⅣGARCH模型.docx_第4页
第4页 / 共21页
SAS学习系列40 时间序列分析ⅣGARCH模型.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

SAS学习系列40 时间序列分析ⅣGARCH模型.docx

《SAS学习系列40 时间序列分析ⅣGARCH模型.docx》由会员分享,可在线阅读,更多相关《SAS学习系列40 时间序列分析ⅣGARCH模型.docx(21页珍藏版)》请在冰豆网上搜索。

SAS学习系列40 时间序列分析ⅣGARCH模型.docx

SAS学习系列40时间序列分析ⅣGARCH模型

40.时间序列分析Ⅲ—GARCH模型

(一)GRACH模型

即自回归条件异方差模型,是金融市场中广泛应用的一种特殊非线性模型。

1982年,R.Engle在研究英国通货膨胀率序列规律时提出ARCH模型,其核心思想是残差项的条件方差依赖于它的前期值的大小。

1986年,Bollerslev在ARCH模型基础上对方差的表现形式进行了线性扩展,并形成了更为广泛的GARCH模型。

一、金融时间序列的异方差性特征

金融时间序列,无恒定均值(非平稳性),呈现出阶段性的相对平稳的同时,往往伴随着出现剧烈的波动性;具有明显的异方差(方差随时间变化而变化)特征:

尖峰厚尾:

金融资产收益呈现厚尾和在均值处呈现过度波峰;

波动丛聚性:

金融市场波动往往呈现簇状倾向,即波动的当期水平往往与它最近的前些时期水平存在正相关关系。

杠杆效应:

指价格大幅度下降后往往会出现同样幅度价格上升的倾向。

因此,传统线性结构模型(以及时间序列模型)并不能很好地解释金融时间序列数据。

二、ARCH(p)模型

考虑k变量的回归模型

若残差项

的均值为0,对yt取基于t-1时刻信息的期望:

该模型中,yt的无条件方差是固定的。

但考虑yt的条件方差:

其中,

表示基于t-1时刻信息集合Yt-1的yt的条件方差,若残差项

存在自回归结构,则yt的条件方差不固定。

假设在前p期所有信息的条件下,残差项平方

服从AR(p)模型:

(*)

其中

为0均值、

方差的白噪声序列。

则残差项

服从条件正态分布:

残差项

的条件方差:

由两部分组成:

(1)常数项

(2)ARCH项——变动信息,前p期的残差平方和

注:

未知参数

利用极大似然估计法估计。

方差非负性要求

都非负。

为了使

协方差平稳,需进一步要求方程

的根都位于单位圆外。

都非负,上式等价于

.

注:

若扰动项的条件方差不存在自相关,则有

,此时

,即残差的条件方差同方差性情形。

三、GARCH(p,q)模型

ARCH(p)模型在实际应用中,为了得到较好的拟合效果,往往需要很大的阶数p,从而增加了待估参数个数、引发多重共线性、非限制估计违背

非负性要求。

1986年,Bollerslev将ARCH(p)模型推广为广义自回归条件异方差模型GARCH(p,q):

残差

的条件方差表示为

由三项组成,

(1)常数项

(2)ARCH项;

(3)GARCH项——前q期预测方差

.

注:

未知参数用极大似然法估计,通常残差的假设分布有正态分布、t分布、广义误差分布;该模型也要求

非负;若要求是平稳过程,需要限制

.实际上,GARCH(p,q)模型是将残差平方用ARMA(q,p)模型描述。

四、ARCH检验

检验模型的残差是否具有ARCH效应有两种方法:

1.ARCHLM检验——拉格朗日乘数检验

检验原假设H0:

残差序列直到p阶都不存在ARCH效应;需进行如下回归:

检验回归有两个统计量:

(1)F统计量——检验回归系数是否显著为0.

(2)T×R2统计量——LM统计量,其中T为观察值个数,R2为回归拟合优度,该统计量渐近服从

分布。

2.残差平方相关图

残差平方相关图显示残差平方

序列,直到任意指定的滞后阶数的自相关函数(AC)和偏自相关函数(PAC),并计算相应滞后阶数的QLB统计量。

若不存在ARCH效应,则任意滞后阶数的自相关函数(AC)和偏自相关函数(PAC)都近似为0.

五、GARCH-M模型

一般风险越大,预期收益越大。

在回归模型中加入一项“利用条件方差表示的预期风险”:

称为GARCH-M模型。

另外,还有非对称冲击模型:

TARCH、EGARCH、PARCH等(略)。

(二)PROCAUTOREG过程

SAS中的AUTOREG过程,是用于估计和预测误差项自相关或异方差的时间序列数据的线性回归模型。

自回归误差模型被用来校正自相关系数和广义自回归条件异方差模型GARCH,并且其变体如广义的ARCH(GARCH)、方差无穷的GARCH(IGARCH)、指数的GARCH(EGARCH)和依均值的GARCH(GARCH-M)被用于异方差的建模和校正。

自回归过程autoreg可以拟合任意阶的自回归误差模型,并且可以拟合子集自回归模型。

为了诊断自相关性,过程产生广义Durbin-Watson(DW)统计量和其边缘概率。

普通回归分析假定误差方差对于所有观察是相同的,但当误差方差不相同时,数据被称为异方差,此时普通最小二乘法估计不是有效的,同时也影响预测值置信区间的精确性。

Autoreg过程能检验异方差,并且提供GARCH模型族来估计和校正数据易变性。

对于带有自相关扰动和随时间变化的条件异方差模型,过程输出条件均值和条件方差的预测值。

基本语法:

procautoregdata=数据集<可选项>;

model因变量=独立回归变量列表;

outputout=数据集<选项列表>;

说明:

(1)procautoreg语句可选项

outest=数据集——把估计参数输出到指定数据集;

covout=数据集——把估计参数的协方差阵输出到指定数据集;

(2)model语句

center——通过减去均值中心化因变量并且取消模型的均值参数;

noint——取消模型的均值参数;

nlag=数值|(数值列表)——指定自回归误差的阶或者自回归误差的时间间隔的子集。

例如,nlag=3与nlag=(123)作用相同,但与nlag=(13)等不同;

garch=(q=数值,p=数值,type=选择值,mean,noint,tr)——指定广义条件异方差GARCH模型的类型。

例如,定义GARCH(2,1)回归模型:

modely=x1x2/garch=(q=2,p=1);

注意:

SAS系统的自回归参数符号q和p与前文所述公式中的符号p和q正好相反。

定义GARCH-M(1,1)回归模型:

modely=x1x2/garch=(q=2,p=1,mean);

type=选择值——指定GARCH模型的类型:

默认为noineq表示无约束GARCH模型;nonneg表示非负约束GARCH模型;stn表示约束GARCH模型系数的和小于1;integ表示IGARCH模型;exp表示EGARCH模型;

noint——取消条件异方差模型中的均值参数;

tr——GARCH模型的估计使用信赖区域方法,缺省值为对偶拟牛顿法;

archtest——要求用portmanteaQ检验统计量和Engle的拉格朗日乘子LM检验是否存在条件异方差情况,即是否有ARCH效应;

coef——输出前几条观察的变换系数;

corrb——输出参数估计的估计相关系数;

covb——输出参数估计的估计协方差;

dw=n——输出直到n阶的DW统计量,默认n=1;

dwprob——输出DW统计量的p值,当误差自由度大于300时dwprob选项被忽略;

ginv——输出Yule-Walker解的自协方差的Toeplitz矩阵的逆;

itprint——输出每步迭代的目标函数和参数估计;

lagdetp——输出DWt统计量,它用于检验存在时滞因变量时残差的自相关性;

lagdep=回归变量——输出DWh统计量,它用于检验一阶自相关性;

partial——输出偏自相关;

backstep——去掉非显著自回归参数,参数按最小显著性的次序被去掉;

slstay=数值——指定被backstep选项使用的显著水平,默认为0.05;

converge=数值——指定在迭代自回归参数估计时参数的变化量的最大绝对值小于此数值,那么认为收敛,默认为0.001;

maxiter=数值——指定允许迭代的最大次数,默认为50;

method=ml|ols|yw|ityw——指定估计的方法,分别为:

最大似然估计、无条件最小二乘法、Yule-Walker估计、迭代Yule-Walker估计;

nomiss——使用没有缺失值的第一个连贯时间序列数据集,进行模型拟合估计。

否则,跳过数据集开始的任何缺失值,使用独立回归变量和因变量都不带缺失值的所有数据。

请特别注意,为了保持时间序列中正确的时间间隔,必须要增加时间刻度值,这样就会产生因变量缺失值的观察。

当因变量缺失时,过程可以产生预测值。

如果缺失值很多,则应使用ML估计。

(3)output语句

out=数据集——指定包含预测值和变换值的输出数据集;

alphacli=数值——设置时间序列预测值置信区间的显著水平,默认为0.05;

alphaclm=数值——设置模型结构部分预测值置信区间的显著水平,缺省值为0.05;

cev=变量——把条件误差方差写入到输出数据集的指定变量中,仅GARCH模型被估计时才使用;

cpev=变量——把条件预测误差方差写入到输出数据集的指定变量中,仅GARCH模型被估计时才使用;

constant=变量——把被变换的均值写入到输出数据集的指定变量中;

lcl=变量——把预测值的置信下限写入到输出数据集的指定变量中;

ucl=变量——把预测值的置信上限写入到输出数据集的指定变量中;

lclm=变量——把模型结构部分预测值的置信下限写入到输出数据集的指定变量中;

uclm=变量——把模型结构部分预测值的置信上限写入到输出数据集的指定变量中;

p=变量——把预测值写入到输出数据集的指定变量中;

rm=变量——把来自模型结构部分预测的残差写入到输出数据集的指定变量中;

transform=变量——把被变换的变量写入到输出数据集的指定变量中。

例1对模拟方法生成的时间趋势加二阶自回归误差模型的时间序列数据,用PROCAUTOREG过程进行分析和建模,以便于比较和判断各种求解模型和运算结果的好坏。

模型:

(一)按照模拟模型生成数据集

代码:

datarandar;

e1=0;

e11=0;

dot=-10to36;

e=1.3*e1-0.5*e11+2*rannor(12346);

x=10+0.5*t+e;

e11=e1;

e1=e;

ift>0then

output;

end;

run;

procprintdata=randar;

run;

运行结果:

Obs

e1

e11

t

e

x

1

-2.73816

-4.99186

1

-2.73816

7.7618

2

0.03674

-2.73816

2

0.03674

11.0367

3

0.66356

0.03674

3

0.66356

12.1636

4

-0.86233

0.66356

4

-0.86233

11.1377

5

-4.30165

-0.86233

5

-4.30165

8.1984

6

-3.88957

-4.30165

6

-3.88957

9.1104

7

-3.56635

-3.88957

7

-3.56635

9.9337

8

-3.68908

-3.56635

8

-3.68908

10.3109

9

-2.50263

-3.68908

9

-2.50263

11.9974

10

-1.80957

-2.50263

10

-1.80957

13.1904

11

-0.14763

-1.80957

11

-0.14763

15.3524

12

1.78537

-0.14763

12

1.78537

17.7854

13

4.09011

1.78537

13

4.09011

20.5901

14

3.54577

4.09011

14

3.54577

20.5458

15

-0.92995

3.54577

15

-0.92995

16.5701

16

-3.39550

-0.92995

16

-3.39550

14.6045

17

-4.57207

-3.39550

17

-4.57207

13.9279

18

-4.02602

-4.57207

18

-4.02602

14.9740

19

-3.75333

-4.02602

19

-3.75333

15.7467

20

-1.73776

-3.75333

20

-1.73776

18.2622

21

-1.42859

-1.73776

21

-1.42859

19.0714

22

-0.98120

-1.42859

22

-0.98120

20.0188

23

-1.48741

-0.98120

23

-1.48741

20.0126

24

-4.41515

-1.48741

24

-4.41515

17.5848

25

-4.14229

-4.41515

25

-4.14229

18.3577

26

-5.57633

-4.14229

26

-5.57633

17.4237

27

-5.55633

-5.57633

27

-5.55633

17.9437

28

-4.17604

-5.55633

28

-4.17604

19.8240

29

-2.45303

-4.17604

29

-2.45303

22.0470

30

-0.32189

-2.45303

30

-0.32189

24.6781

31

-0.24246

-0.32189

31

-0.24246

25.2575

32

1.61987

-0.24246

32

1.61987

27.6199

33

2.26259

1.61987

33

2.26259

28.7626

34

0.48540

2.26259

34

0.48540

27.4854

35

-1.11570

0.48540

35

-1.11570

26.3843

36

-2.95901

-1.11570

36

-2.95901

25.0410

变量e对应εt,e1对应εt-1,e2对应εt-2.

表达式2*rannor(12346),将生成独立同分布均值为0,标准差为2的正态分布随机数,对应于公式中均值为0,方差为22的白噪声误差序列。

DO循环从t=-10开始而不是直接从t=1开始的原因,是让模拟生成的二阶自回归误差序列有一段时间(t=-10到0)进行初始化,以便到达稳定的随机序列值。

(二)普通最小二乘法回归模型

代码:

procautoregdata=randarPLOTS(ONLY)=FITPLOT;

modelx=t;

run;

运行结果及说明:

AUTOREG过程

因变量

x

普通最小二乘法估计

SSE

214.953429

DFE

34

MSE

6.32216

均方根误差

2.51439

SBC

173.659101

AIC

170.492063

MAE

2.01903356

AICC

170.855699

MAPE

12.5270666

HQC

171.597444

Durbin-Watson

0.4752

回归R方

0.8200

 

 

总R方

0.8200

参数估计值

变量

自由度

估计值

标准误差

t 值

近似

Pr>|t|

Intercept

1

8.2308

0.8559

9.62

<.0001

t

1

0.5021

0.0403

12.45

<.0001

AUTOREG过程

普通最小二乘回归基于统计假设:

误差相互对立。

然而,时间序列数据,普通回归后的残差常常是相关的。

这将导致:

第一,对于参数的显著性和置信限的统计检验将不正确;第二,回归系数的估计不象考虑到自相关性时的估计一样有效;第三,由于回归残差不独立,它们包含可用来改进预测值的信息。

由于这些原因,所以对时间序列数据不使用普通回归procreg过程而使用带自回归误差的回归proautoreg过程。

Model语句中指定回归模型,没有可选项,是要求利用普通最小二乘法做x对t的回归。

为便于对比,绘制了散点图和线性回归趋势线。

回归R2是对回归模型的R2,总R2是包括自回归误差在内的整体模型的R2.现在还无自回归误差模型,故两个R2相等。

估计模型为:

OLS:

该模型较合理地接近真实值,但是误差方差估计6.32216远大于真实值4。

误差方差估计值远大于真实值(通过对模型的残差作自相关性检验来判断和识别),说明模型还有信息没有提取。

(三)检验模型的自相关系数

在实际问题中,需要检验自相关性是否存在,以及存在几阶自相关。

Durbin-Watson检验是广泛使用的自相关性的检验方法。

选项dw=4和dwprob是要求过程进行1到4阶的OLS残差中自相关性Durbin-Watson检验,并要求输出Durbin-Watson统计量的边缘显著水平p值。

注意:

对于季节性时间序列数据,自相关性检验应该至少检验与季节性阶一样大的阶。

例如,对于月度数据至少应取dw=12。

代码:

procautoregdata=randar;

modelx=t/dw=4dwprob;

run;

运行结果及说明:

Durbin-Watson统计量

顺序

DW

Pr < DW

Pr > DW

1

0.4752

<.0001

1.0000

2

1.2935

0.0137

0.9863

3

2.0694

0.6545

0.3455

4

2.5544

0.9818

0.0182

Note:

PrDWisthep-valuefortestingnegativeautocorrelation.

参数估计值

变量

自由度

估计值

标准误差

t 值

近似Pr>|t|

Intercept

1

8.2308

0.8559

9.62

<.0001

t

1

0.5021

0.0403

12.45

<.0001

一阶Durbin-Watson统计量为0.4752,其p值为<0.0001,极其显著,强烈拒绝一阶自相关系数为0的原假设。

因此,自相关性的校正是必须的。

要注意的是,利用Durbin-Watson检验可决定是否需要做自相关性校正。

但广义的Durbin-Watson检验不应该用于确定自回归的阶数。

因为高阶的检验是在无低阶自相关性的原假设下进行的。

例如,若普通的Durbin-Watson检验表明无一阶自相关性,那么可以用二阶检验去检验二阶自相关性。

一旦检验出某阶有自相关性存在,那么更高阶的检验将不适用。

这里由于1阶自相关性检验是显著的,所以2、3、4阶的检验是被忽略的。

(四)自回归误差模型

代码:

procautoregdata=randar;

modelx=t/nlag=2method=ml;

outputout=poutp=xhatpm=trendhat;

run;

procgplotdata=pout;

plotx*t=1xhat*t=2trendhat*t=3/overlay;

symbol1v=stari=nonec=redh=2.5;

symbol2v=plusi=joinc=blueh=2.5;

symbol3v=nonei=joinc=greenw=2;

title1'Auto-Regression';

title2'nlag=2method=ml';

run;

运行结果及说明:

nlag=2选项,指定误差为1阶、2阶自回归模型,其另一种格式,如nlag=(145),表示自回归误差模型为

选项method=ml,指定回归参数的估计采用精确最大似然估计,默认为Yule-Walker估计。

用output语句输出预测值到pout数据集中,预测值有两种类型:

第一类是部分模型预测值:

仅通过模型的结构部分得到,即由

部分得到,这是响应变量xt在时刻t的无条件均值估计,用选项pm=trendhat将该预测值数据集pout的变量trendhat中;

第二类,是整体模型预测值,既包含模型的结构部分也包含自回归误差过程的预测值,即由

整体模型得到,用选项p=xhat将该预测值输出到数据集pout的变量xhat中。

普通最小二乘法估计

SSE

214.953429

DFE

34

MSE

6.32216

均方根误差

2.51439

SBC

173.659101

AIC

170.492063

MAE

2.01903356

AICC

170.855699

MAPE

12.5270666

HQC

171.597444

Durbin-Watson

0.4752

回归R方

0.8200

 

 

总R方

0.8200

参数估计值

变量

自由度

估计值

标准误差

t 值

近似

Pr>|t|

Intercept

1

8.2308

0.8559

9.62

<.0001

t

1

0.5021

0.0403

12.45

<.0001

自相关估计值

滞后

协方差

相关

-1 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 1 

0

5.9709

1.000000

|                    |********************|

1

4.5169

0.756485

|                    |***************     |

2

2.0241

0.338995

|                    |*******             |

初步MSE

1.7943

自回归参数的估计值

滞后

系数

标准误差

t 值

1

-1.169057

0.148172

-7.89

2

0.545379

0.148172

3.68

算法收敛。

最大似然估计

SSE

54.7493022

DFE

32

MSE

1.71092

均方根误差

1.30802

SBC

133.476508

AIC

127.142432

MAE

0.98307236

AICC

128.432755

MAPE

6.45517689

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

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1