主要内容

egarch

EGARCH条件方差时间序列模型

描述

使用egarch指定单变量EGARCH(指数广义自回归条件异方差)模型。的egarch函数返回egarch对象的函数形式EGARCH (P)模型,并保存其参数值。

的关键组成部分egarch模型包括:

  • GARCH多项式,由滞后的、记录的条件方差组成。度表示为P

  • ARCH多项式,由滞后标准化创新的大小组成。

  • 杠杆多项式,由滞后的标准化创新组成。

  • ARCH和杠杆多项式度的最大值,表示为

P是GARCH多项式中的最大非零滞后,和为ARCH和杠杆多项式中的最大非零滞后。模型的其他组成部分包括创新均值模型偏移量、条件方差模型常数和创新分布。

所有系数均为未知(值)和可估计的,除非您使用名称-值对参数语法指定它们的值。要估计包含给定数据的全部或部分未知参数值的模型,请使用估计.对于完全指定的模型(其中所有参数值都已知的模型),使用模拟预测,分别。

创建

描述

例子

Mdl= egarch创建一个零度条件方差egarch对象。

例子

Mdl= egarch (P创建一个EGARCH条件方差模型对象(Mdl的GARCH多项式P, ARCH和杠杆多项式的阶均为.所有多项式都包含从1到阶的所有连续滞后,且所有系数为值。

这种简写语法使您能够创建一个模板,在其中显式地指定多项式度。该模型模板适用于不受限制的参数估计,即没有任何参数相等约束的估计。但是,在创建模型之后,您可以使用点表示法更改属性值。

例子

Mdl= egarch (名称,值属性或使用名称-值对参数的其他选项。每个名字用引号括起来。例如,'ARCHLags',[1 4],'ARCH',{0.2 0.3}的两个ARCH系数在落后1而且4

这种手动语法使您能够创建更灵活的模型。

输入参数

全部展开

简写语法为您提供了一种创建模型模板的简便方法,该模型模板适用于不受限制的参数估计。例如,要创建包含未知参数值的EGARCH(1,2)模型,输入:

Mdl = egarch(1,2);
若要在估计过程中对参数值施加相等约束,请设置适当的财产使用点符号的值。

GARCH多项式度,指定为非负整数。在GARCH多项式和时间上t, MATLAB®包括所有来自滞后的连续记录条件方差项t- 1通过延迟t- - - - - -P

属性指定此参数egarch(P, Q)仅限速记语法。

如果P> 0,那么你必须指定作为正整数。

例子:egarch (1,1)

数据类型:

ARCH多项式度,指定为非负整数。在ARCH多项式和时间上t, MATLAB包含了所有连续的标准化创新项(对于ARCH多项式)和所有标准化创新项(对于杠杆多项式)t- 1通过延迟t- - - - - -

属性指定此参数egarch(P, Q)仅限速记语法。

如果P> 0,那么你必须指定作为正整数。

例子:egarch (1,1)

数据类型:

名称-值对参数

的可选逗号分隔对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

手动语法使您能够创建部分或所有系数已知的模型。在评估期间,估计对任何已知参数施加相等约束。

例子:'ARCHLags',[1 4],'ARCH',{NaN NaN}指定一个EGARCH(0,4)模型和滞后时未知但非零的ARCH系数矩阵1而且4

GARCH多项式滞后,指定为逗号分隔的对,由“GARCHLags”和一个唯一正整数的数字向量。

GARCHLags (j滞后是否与系数相对应GARCH {j.的长度GARCHLags而且GARCH必须是相等的。

假设所有GARCH系数(由GARCH属性)为正或值,马克斯(GARCHLags)属性的值P财产。

例子:“GARCHLags”,[1 - 4]

数据类型:

ARCH多项式滞后,指定为逗号分隔的对,由“ARCHLags”和一个唯一正整数的数字向量。

ARCHLags (j滞后是否与系数相对应弓{j.的长度ARCHLags而且必须是相等的。

假设所有ARCH和杠杆系数(由而且利用属性)为正或值,马克斯([ARCHLags LeverageLags])属性的值财产。

例子:“ARCHLags”,[1 - 4]

数据类型:

利用多项式滞后,指定为由逗号分隔的对组成“LeverageLags”和一个唯一正整数的数字向量。

LeverageLags (j滞后是否与系数相对应利用{j.的长度LeverageLags而且利用必须是相等的。

假设所有ARCH和杠杆系数(由而且利用属性)为正或值,马克斯([ARCHLags LeverageLags])属性的值财产。

例子:LeverageLags, 1:4

数据类型:

属性

全部展开

当您使用名称-值对参数语法创建模型对象时,或者在您使用点表示法创建模型对象之后,您可以设置可写的属性值。例如,要创建一个系数未知的EGARCH(1,1)模型,然后指定一个t自由度未知的创新分布,进入:

Mdl = egarch(' garchlag ',1,' archlag ',1);Mdl。分布= "t";

此属性是只读的。

GARCH多项式度,指定为非负整数。PGARCH多项式的最大滞后系数是正的还是.小于的滞后P系数可以是0。

P指定初始化模型所需的预采样条件方差的最小数目。

如果使用名称-值对参数来创建模型,那么MATLAB将实现这些替代方案之一(假设最大滞后系数为正或):

  • 如果你指定GARCHLags,然后P是指定的最大滞后。

  • 如果你指定GARCH,然后P指定值的元素数。如果你还指定GARCHLags,然后egarch使用GARCHLags来确定P代替。

  • 否则,P0

数据类型:

此属性是只读的。

ARCH和杠杆多项式的最大程度,指定为非负整数。为ARCH的最大滞后,为模型中的杠杆多项式。在任何一种多项式中,滞后都小于系数可以是0。

指定初始化模型所需的最少预采样革新次数。

如果使用名称-值对参数来创建模型,那么MATLAB将实现这些替代方案之一(假设ARCH和杠杆多项式中最大滞后的系数为正或):

  • 如果你指定ARCHLagsLeverageLags,然后是两个规格之间的最大值。

  • 如果你指定利用,然后是两个规范之间的最大元素数。如果你还指定ARCHLagsLeverageLags,然后egarch使用它们的值来确定代替。

  • 否则,0

数据类型:

条件方差模型常数,指定为数值标量或价值。

数据类型:

GARCH多项式系数,指定为正标量或正标量的单元向量值。

  • 如果你指定GARCHLags,则适用以下条件。

    • 的长度GARCH而且GARCHLags是相等的。

    • GARCH {j是滞后系数吗GARCHLags (j

    • 默认情况下,GARCH是一个元素个数(GARCHLags)的-by-1单元向量值。

  • 否则,适用以下条件。

    • 的长度GARCHP

    • GARCH {j是滞后系数吗j

    • 默认情况下,GARCH是一个P的-by-1单元向量值。

里面的系数GARCH对应于底层的系数LagOp滞后算子多项式,并进行了近零容差排除检验。如果你设一个系数为1 e-12或以下,egarch不包括该系数及其相应的滞后GARCHLags从模型中。

数据类型:细胞

ARCH多项式系数,指定为正标量或单元向量值。

  • 如果你指定ARCHLags,则适用以下条件。

    • 的长度而且ARCHLags是相等的。

    • 弓{j是滞后系数吗ARCHLags (j

    • 默认情况下,是一个的-by-1单元向量值。有关详细信息,请参见财产。

  • 否则,适用以下条件。

    • 的长度

    • 弓{j是滞后系数吗j

    • 默认情况下,是一个的-by-1单元向量值。

里面的系数对应于底层的系数LagOp滞后算子多项式,并进行了近零容差排除检验。如果你设一个系数为1 e-12或以下,egarch不包括该系数及其相应的滞后ARCHLags从模型中。

数据类型:细胞

利用多项式系数,指定为数值标量或单元格向量值。

  • 如果你指定LeverageLags,则适用以下条件。

    • 的长度利用而且LeverageLags是相等的。

    • 利用{j是滞后系数吗LeverageLags (j

    • 默认情况下,利用是一个的-by-1单元向量值。有关详细信息,请参见财产。

  • 否则,适用以下条件。

    • 的长度利用

    • 利用{j是滞后系数吗j

    • 默认情况下,利用是一个的-by-1单元向量值。

里面的系数利用对应于底层的系数LagOp滞后算子多项式,并进行了近零容差排除检验。如果你设一个系数为1 e-12或以下,egarch不包括该系数及其相应的滞后LeverageLags从模型中。

数据类型:细胞

此属性是只读的。

模型的无条件方差,指定为正标量。

无条件方差是

σ ε 2 经验值 κ 1 1 P γ

κ条件方差模型常量(常数).

数据类型:

创新平均模型偏移量,或附加常数,指定为数值标量或价值。

数据类型:

创新过程的条件概率分布,指定为字符串或结构数组。egarch将值存储为结构数组。

分布 字符串 结构数组
高斯 “高斯” 结构(“名字”,“高斯”)
学生的t “t” 结构(“名字”,“t”,景深,景深)

“景深”字段指定t分布自由度参数。

  • 景深> 2或景深

  • 景深是有价值的。

  • 如果你指定“t”景深默认情况下。您可以在创建模型后使用点表示法更改它的值。例如,mld . distribution . dof = 3

  • 如果您提供一个结构数组来指定学生的t分布,则必须同时指定“名字”而且“景深”字段。

例子:结构(“名字”,“t”、“景深”,10)

模型描述,指定为字符串标量或字符向量。egarch将值存储为字符串标量。例如,默认值描述模型的参数形式EGARCH(1,1)条件方差模型(高斯分布)

数据类型:字符串|字符

请注意

  • 所有-值模型参数,包括系数和t-创新-分配自由度(如果存在)是可估计的。当你传递结果时egarch对象和数据估计, MATLAB估计有价值的参数。在评估期间,估计将已知参数作为等式约束,即:估计将任何已知参数固定为其值。

  • 通常情况下,ARCH多项式和杠杆多项式的滞后是相同的,但它们的相等性不是必要条件。不同的多项式发生在以下情况:

    • 要么弓{Q}利用{Q}满足接近零的排除容差。在这种情况下,MATLAB从多项式中排除了相应的滞后。

    • 你可以指定长度不同的多项式ARCHLagsLeverageLags,或通过设置利用财产。

    无论哪种情况,是两个多项式之间的最大滞后。

对象的功能

估计 拟合条件方差模型
过滤器 通过条件方差模型过滤干扰
预测 从条件方差模型预测条件方差
推断出 推断条件方差模型的条件方差
模拟 条件方差模型的蒙特卡罗模拟
总结 显示条件方差模型的估计结果

例子

全部折叠

创建默认值egarch建模对象并使用点表示法指定其参数值。

创建一个EGARCH(0,0)模型。

Mdl = egarch
描述:“egarch(0,0)条件方差模型(高斯分布)”分布:名称= "高斯" P: 0 Q: 0常数:NaN GARCH: {} ARCH:{}杠杆:{}偏移量:0

Mdl是一个egarch模型。它包含一个未知的常数,它的偏移量为0,创新分布为“高斯”.该模型没有GARCH、ARCH或杠杆多项式。

使用点符号为滞后1和滞后2指定两个未知的ARCH和杠杆系数。

Mdl。ARCH = {NaN NaN};Mdl。leverage = {NaN NaN}; Mdl
描述:“egarch(0,2)条件方差模型(高斯分布)”分布:名称= "高斯" P: 0 Q: 2常数:NaN GARCH: {} ARCH: {NaN NaN}滞后[1 2]杠杆:{NaN NaN}滞后[1 2]偏移量:0

,利用属性更新到2{南南}{南南},分别。ARCH和杠杆系数与滞后1和滞后2有关。

创建一个egarch使用简写符号建模对象egarch (P, Q),在那里P是GARCH多项式的次,为ARCH和杠杆多项式的阶。

创建一个EGARCH(3,2)模型。

Mdl = egarch(3,2)
描述:“egarch(3,2)条件方差模型(高斯分布)”分布:名称= "高斯" P: 3 Q: 2常量:NaN GARCH: {NaN NaN NaN}滞后时[1 2 3]ARCH: {NaN NaN}滞后时[1 2]杠杆:{NaN NaN}滞后时[1 2]偏移量:0

Mdl是一个egarch模型对象。所有属性Mdl,除了P,分布,都是值。默认情况下,软件:

  • 包括一个条件方差模型常数

  • 不包括条件平均模型偏移量(即偏移量为0

  • 包括GARCH多项式中的所有滞后项P

  • 包括ARCH中的所有滞后项和滞后前的杠杆多项式

Mdl只指定EGARCH模型的功能形式。因为它包含未知的参数值,所以可以通过Mdl和时间序列数据估计估计参数。

创建一个egarch使用名称-值对参数对对象建模。

指定一个EGARCH(1,1)模型。默认情况下,条件平均模型偏移量为零。指定偏移量为.包括一个杠杆条款。

Mdl = egarch(“GARCHLags”, 1“ARCHLags”, 1“LeverageLags”, 1“抵消”南)
描述:“egarch(1,1)条件方差模型与偏移(高斯分布)”分布:名称= "高斯" P: 1 Q: 1常量:NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag[1]杠杆:{NaN} at lag[1]偏移量:NaN

Mdl是一个egarch模型对象。软件将所有参数设置为,除了P,分布

Mdl包含值,Mdl仅适用于估计。通过Mdl和时间序列数据估计

创建具有平均偏移量的EGARCH(1,1)模型,

y t 0 5 + ε t

在哪里 ε t σ t z t

σ t 2 0 0 0 0 1 + 0 7 5 日志 σ t - 1 2 + 0 1 | ε t - 1 | σ t - 1 - 2 π - 0 3. ε t - 1 σ t - 1 + 0 0 1 ε t - 3. σ t - 3.

而且 z t 是独立同分布的标准高斯过程。

Mdl = egarch(“不变”, 0.0001,“四国”, 0.75,...“拱”, 0.1,“抵消”, 0.5,“杠杆”,{-0.3 0 0.01})
描述:“egarch(1,3)条件方差模型与偏移(高斯分布)”分布:名称= "高斯" P: 1 Q: 3常数:0.0001 GARCH: {0.75} at lag [1] ARCH: {0.1} at lag[1]杠杆:{-0.3 0.01}at lag[1 3]偏移量:0.5

egarch将默认值赋给未使用名值对参数指定的任何属性。指定杠杆组件的另一种方法是'杠杆',{-0.3 0.01},'杠杆elags ',[1 3]

访问已创建对象的属性egarch使用点表示法建模对象。

创建一个egarch模型对象。

Mdl = egarch(3,2)
描述:“egarch(3,2)条件方差模型(高斯分布)”分布:名称= "高斯" P: 3 Q: 2常量:NaN GARCH: {NaN NaN NaN}滞后时[1 2 3]ARCH: {NaN NaN}滞后时[1 2]杠杆:{NaN NaN}滞后时[1 2]偏移量:0

从模型中删除第二个GARCH项。也就是说,指定第二个滞后条件方差的GARCH系数为0

Mdl。Garch {2} = 0
描述:“egarch(3,2)条件方差模型(高斯分布)”分布:名称= "高斯" P: 3 Q: 2常数:NaN GARCH: {NaN NaN}在滞后时[1 3]ARCH: {NaN NaN}在滞后时[1 2]杠杆:{NaN NaN}在滞后时[1 2]偏移:0

GARCH多项式有两个未知参数,对应滞后1和滞后3。

显示扰动的分布。

Mdl。分布
ans =带字段的结构:名称:“高斯”

扰动是均值为0,方差为1的高斯分布。

指定基本扰动具有t5个自由度的分布。

Mdl。分布= struct(“名字”“t”“景深”5)
Mdl = egarch属性:描述:“egarch(3,2)条件方差模型(t分布)”分布:Name = "t", DoF = 5 P: 3 Q: 2常数:NaN GARCH:滞后时{NaN NaN} [1 3] ARCH:滞后时{NaN NaN}[1 2]杠杆:滞后时{NaN NaN}[1 2]偏移量:0

指定ARCH系数对于第一个滞后为0.2,对于第二个滞后为0.1。

Mdl。Arch = {0.2 0.1}
Mdl = egarch属性:描述:“egarch(3,2)条件方差模型(t分布)”分布:Name = "t", DoF = 5 P: 3 Q: 2常量:NaN GARCH:滞后时{NaN NaN} [1 3] ARCH:滞后时{0.2 0.1}[1 2]杠杆:滞后时{NaN NaN}[1 2]偏移量:0

要估计剩下的参数,可以通过Mdl并对您的数据进行估计,并使用指定的参数作为等式约束。或者,您可以指定其余的参数值,然后通过将完全指定的模型传递给GARCH模型来模拟或预测GARCH模型的条件方差模拟预测,分别。

用EGARCH模型拟合1922-1999年丹麦名义股票收益率的年度时间序列。

加载Data_Danish数据集。绘制名义回报率(RN).

负载Data_Danish;nr = dattable . rn;图;情节(日期、nr);持有;Plot([日期(1)日期(结束)],[0 0],“:”);y = 0持有;标题(“丹麦名义股票收益”);ylabel (“名义回报率(%)”);包含(“年”);

图中包含一个轴。标题为丹麦名义股票回报的轴包含2个类型为line的对象。

名义收益系列似乎有一个非零的条件平均偏移,似乎表现出波动性聚类。也就是说,早期的变异性比后期的变异性要小。对于这个例子,假设EGARCH(1,1)模型适合这个系列。

创建一个EGARCH(1,1)模型。默认情况下,条件平均偏移量为零。要估计偏移量,请指定为.包括一个杠杆滞后。

Mdl = egarch(“GARCHLags”, 1“ARCHLags”, 1“LeverageLags”, 1“抵消”、南);

拟合EGARCH(1,1)模型与数据。

EstMdl =估计(Mdl,nr);
EGARCH(1,1)带偏移量的条件方差模型(高斯分布):Value StandardError TStatistic PValue __________ _____________ __________ _________ Constant -0.62723 0.74401 -0.84304 0.39921 GARCH{1} 0.77419 0.23628 3.2766 0.0010507 ARCH{1} 0.38636 0.37361 1.0341 0.30107杠杆{1}-0.0024989 0.19222 -0.013 0.98963偏移量0.10325 0.037727 2.7368 0.0062047

EstMdl是完全指定的egarch模型对象。也就是说,它不包含值。您可以通过使用生成残差来评估模型的充分性推断出,然后分析它们。

若要模拟条件方差或响应,则通过EstMdl模拟

预测创新,通过EstMdl预测

模拟完全指定的条件方差或响应路径egarch模型对象。也就是说,从估计值进行模拟egarch模型或已知的egarch模型,其中指定所有参数值。

加载Data_Danish数据集。

负载Data_Danish;rn = DataTable.RN;

创建一个具有未知条件平均偏移量的EGARCH(1,1)模型。拟合模型的年,名义收益系列。包括一个杠杆条款。

Mdl = egarch(“GARCHLags”, 1“ARCHLags”, 1“LeverageLags”, 1“抵消”、南);EstMdl =估计(Mdl,rn);
EGARCH(1,1)带偏移量的条件方差模型(高斯分布):Value StandardError TStatistic PValue __________ _____________ __________ _________ Constant -0.62723 0.74401 -0.84304 0.39921 GARCH{1} 0.77419 0.23628 3.2766 0.0010507 ARCH{1} 0.38636 0.37361 1.0341 0.30107杠杆{1}-0.0024989 0.19222 -0.013 0.98963偏移量0.10325 0.037727 2.7368 0.0062047

从估计的EGARCH模型中模拟100条条件方差和响应路径。

numObs = numel(rn);样本容量(T)numPaths = 100;%要模拟的路径数rng (1);%用于再现性[VSim,YSim] =模拟(EstMdl,numObs,“NumPaths”, numPaths);

VSim而且YSimT——- - - - - -numPaths矩阵。行对应采样周期,列对应模拟路径。

绘制模拟路径的平均值和97.5%和2.5%百分位数。将模拟统计数据与原始数据进行比较。

VSimBar = mean(VSim,2);VSimCI =分位数(VSim,[0.025 0.975],2);YSimBar = mean(YSim,2);YSimCI =分位数(YSim,[0.025 0.975],2);图;次要情节(2,1,1);h1 = plot(日期,VSim,“颜色”, 0.8 *(1、3));持有;h2 = plot(日期,VSimBar,“k——”“线宽”2);h3 = plot(日期,VSimCI,“r——”“线宽”2);持有;标题(“模拟条件方差”);ylabel (的电导率。var。);包含(“年”);次要情节(2,1,2);h1 = plot(日期,YSim,“颜色”, 0.8 *(1、3));持有;h2 = plot(日期,YSimBar,“k——”“线宽”2);h3 = plot(日期,YSimCI,“r——”“线宽”2);持有;标题(“模拟名义收益”);ylabel (“名义回报率(%)”);包含(“年”);图例([h1(1) h2 h3(1)],{“模拟路径”“的意思是”“信心界限”},...“字形大小”7“位置”“西北”);

图包含2个轴。标题为“模拟条件方差”的轴1包含103个类型为line的对象。标题为simulate Nominal Returns的坐标轴2包含103个类型为line的对象。这些对象表示模拟路径、均值、置信边界。

预测完全指定的条件方差egarch模型对象。也就是说,从估计中预测egarch模型或已知的egarch模型,其中指定所有参数值。示例如下EGARCH模型

加载Data_Danish数据集。

负载Data_Danish;nr = dattable . rn;

创建一个EGARCH(1,1)模型,该模型具有未知的条件平均偏移量,并包含一个杠杆项。将模型拟合到年名义收益系列。

Mdl = egarch(“GARCHLags”, 1“ARCHLags”, 1“LeverageLags”, 1“抵消”、南);EstMdl =估计(Mdl,nr);
EGARCH(1,1)带偏移量的条件方差模型(高斯分布):Value StandardError TStatistic PValue __________ _____________ __________ _________ Constant -0.62723 0.74401 -0.84304 0.39921 GARCH{1} 0.77419 0.23628 3.2766 0.0010507 ARCH{1} 0.38636 0.37361 1.0341 0.30107杠杆{1}-0.0024989 0.19222 -0.013 0.98963偏移量0.10325 0.037727 2.7368 0.0062047

用估计的EGARCH模型预测未来10年名义收益序列的条件方差。指定整个返回序列作为预样本观测值。该软件利用预样本观测值和模型推断预样本条件方差。

numPeriods = 10;vF = forecast(EstMdl,numPeriods,nr);

画出名义收益的预测条件方差。将预测结果与观测到的条件方差进行比较。

v = infer(EstMdl,nr);图;情节(日期、v、凯西:”“线宽”2);持有;plot(日期(结束):日期(结束)+ 10,[v(结束);vF],“r”“线宽”2);标题(“名义收益的预测条件方差”);ylabel (“有条件的差异”);包含(“年”);传奇({'估计样本cond。var。预测电导率。var。},...“位置”“最佳”);

图中包含一个轴。标题为“名义收益的预测条件方差”的轴包含2个类型为line的对象。这些对象表示估计样本cond。var,预测cond。var . .

更多关于

全部展开

提示

  • 您可以指定egarch模型作为条件均值和方差模型组成的一部分。详细信息请参见华宇电脑

  • EGARCH(1,1)规范对于大多数应用程序来说已经足够复杂了。通常在这些模型中,GARCH和ARCH系数为正,杠杆系数为负。如果你得到了这些迹象,那么巨大的意外下行冲击会增加方差。如果你得到的信号与预期相反,你可能会在推断波动序列和预测时遇到困难。ARCH系数为负是有问题的。在这种情况下,EGARCH模型可能不是应用程序的最佳选择。

参考文献

[1]蔡瑞。财务时间序列分析.霍博肯,新泽西州:John Wiley & Sons, Inc., 2010年。

在R2012a中引入