主要内容

egarch

条件方差时间序列模型

描述

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

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

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

  • ARCH多项式,它是由滞后的标准化创新的数量组成的。

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

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

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

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

创建

描述

例子

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

例子

Mdl= egarch (P创建EGARCH条件方差模型对象(Mdl)用阶为的GARCH多项式P,以及ARCH和利用多项式,每个都有度.所有多项式都包含从1到阶的所有连续滞后,所有系数都是值。

这种简写语法使您能够创建一个模板,在该模板中明确指定多项式次数。该模型模板适用于无约束参数估计,即不受任何参数相等约束的估计。然而,在创建模型之后,您可以使用点表示法更改属性值。

例子

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

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

输入参数

全部展开

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

Mdl = egarch(1、2);
要在估计期间对参数值施加等式约束,请设置适当的财产值使用点表示法。

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

属性指定此参数egarch(P, Q)简写语法。

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

例子:egarch (1,1)

数据类型:

ARCH多项式的次数,指定为非负整数。在ARCH多项式中t, MATLAB包括所有标准化创新术语(ARCH多项式)和所有标准化创新术语(杠杆多项式)从滞后的连续幅度t- 1 through lagt- - - - - -

属性指定此参数egarch(P, Q)简写语法。

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

例子:egarch (1,1)

数据类型:

名称-值对的观点

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

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

例子:“ARCHLags”,[1 - 4],“拱”,{南南}指定一个EGARCH(0,4)模型和未知但非零的滞后ARCH系数矩阵14

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

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

假设所有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(“GARCHLags”1“ARCHLags”,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,则适用以下条件。

    • 的长度GARCHGARCHLags是相等的。

    • 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”景深默认情况下。您可以在创建模型之后通过使用点表示法更改它的值。例如,Mdl.Distribution.DoF = 3

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

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

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

数据类型:字符串|字符

请注意

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

  • 通常,ARCH和杠杆多项式的滞后是相同的,但它们的相等性不是必须的。不同的多项式出现在以下情况:

    • 要么弓{Q}利用{Q}符合近乎零的排斥容忍度。在这种情况下,MATLAB从多项式中排除了相应的滞后。

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

    在这两种情况下,为两个多项式之间的最大滞后。

对象的功能

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

例子

全部折叠

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

创建EGARCH(0,0)模型。

Mdl = egarch
描述:“egarch(0,0)条件方差模型(高斯分布)”分布:Name = "高斯" P: 0 Q: 0 Constant: NaN GARCH: {} ARCH: {} Leverage: {} Offset: 0

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

指定两个未知的ARCH,并使用点表示法对滞后1和滞后2利用系数。

Mdl。ARCH = {NaN NaN};Mdl。leverage = {NaN NaN}; Mdl
描述:“egarch(0,2)条件方差模型(高斯分布)”分布:Name = "Gaussian" P: 0 Q: 2 Constant: NaN GARCH: {} ARCH: {NaN NaN} at lag [1 2] Leverage: {NaN NaN} at lag [1 2] Offset: 0

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

创建一个egarch使用速记符号建模对象egarch (P, Q),在那里PGARCH多项式的次数是多少是ARCH和杠杆多项式的程度。

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

Mdl = egarch (2)
描述:“egarch(3,2)条件方差模型(高斯分布)”分布:Name = "高斯" P: 3 Q: 2 Constant: NaN GARCH: {NaN NaN} at lag [1 2 3] ARCH: {NaN NaN} at lag [1 2] Leverage: {NaN NaN} at lag [1 2] Offset: 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)条件方差模型(高斯分布)”分布:Name = "Gaussian" P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Leverage: {NaN} at lag [1] Offset: 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.01, -0.3 {0})
描述:“带偏移的egarch(1,3)条件方差模型(高斯分布)”分布:Name = "高斯" P: 1 Q: 3 Constant: 0.0001 GARCH: {0.75} at lag [1] ARCH: {0.1} at lag [1] Leverage: {-0.3 0.01} at lag [1 3] Offset: 0.5

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

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

创建一个egarch模型对象。

Mdl = egarch (2)
描述:“egarch(3,2)条件方差模型(高斯分布)”分布:Name = "高斯" P: 3 Q: 2 Constant: NaN GARCH: {NaN NaN} at lag [1 2 3] ARCH: {NaN NaN} at lag [1 2] Leverage: {NaN NaN} at lag [1 2] Offset: 0

从模型中去掉第二个GARCH项。即,指定第二滞后条件方差的GARCH系数为0

Mdl。GARCH {2} = 0
描述:“egarch(3,2)条件方差模型(高斯分布)”分布:Name = "高斯" P: 3 Q: 2 Constant: NaN GARCH: {NaN NaN} at lag [1 3] ARCH: {NaN NaN} at lag [1 2] Leverage: {NaN NaN} at lag [1 2] Offset: 0

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

显示扰动的分布。

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

干扰为高斯分布,均值为0,方差为1。

指定潜在的扰动有t五自由度分布。

Mdl。分布=结构(“名字”“t”“景深”5)
描述:“egarch(3,2)条件方差模型(t分布)”分布:Name = "t", DoF = 5 P: 3 Q: 2 Constant: NaN GARCH: {NaN NaN} at lag [1 3] ARCH: {NaN NaN} at lag [1 2] Leverage: {NaN NaN} at lag [1 2] Offset: 0

指定第一次滞后的ARCH系数为0.2,第二次滞后的ARCH系数为0.1。

Mdl。Arch = {0.2 0.1}
描述:“egarch(3,2)条件方差模型(t分布)”分布:Name = "t", DoF = 5 P: 3 Q: 2 Constant: NaN GARCH: {NaN NaN} at lag [1 3] ARCH: {0.2 0.1} at lag [1 2] Leverage: {NaN NaN} at lag [1 2] Offset: 0

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

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

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

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

图中包含一个轴对象。标题为Danish Nominal Stock Returns的axis对象包含两个类型为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.3992 GARCH{1} 0.77419 0.23628 3.2766 0.0010508 ARCH{1} 0.38636 0.37361 1.0341 0.30107 Leverage{1} -0.002499 0.19222 -0.013001 0.98963 Offset 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“抵消”、南);rn EstMdl =估计(Mdl);
带偏移的EGARCH(1,1)条件方差模型(高斯分布):Value StandardError TStatistic PValue _________ _____________ __________ _________ Constant -0.62723 0.74401 -0.84304 0.3992 GARCH{1} 0.77419 0.23628 3.2766 0.0010508 ARCH{1} 0.38636 0.37361 1.0341 0.30107 Leverage{1} -0.002499 0.19222 -0.013001 0.98963 Offset 0.10325 0.037727 2.7368 0.0062047

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

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

VSimYSimT——- - - - - -numPaths矩阵。行对应一个采样周期,列对应一个模拟路径。

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

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

图中包含2个轴对象。标题为“模拟条件方差”的轴对象1包含103个类型为line的对象。标题为“模拟名义返回”的axis对象2包含103个类型为line的对象。这些对象表示模拟路径,均值,置信界限。

预测从一个完全指定的条件方差egarch模型对象。也就是说,根据估计做出的预测egarch模型或已知的egarch模型,在其中指定所有参数值。下面的例子是估计EGARCH模型

加载Data_Danish数据集。

负载Data_Danish;nr = DataTable.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 Leverage{1} -0.0024989 0.19222 -0.013 0.98963 Offset 0.10325 0.037727 2.7368 0.0062047

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

numPeriods = 10;vF =预测(EstMdl numPeriods, nr);

绘制名义收益的预测条件方差。将预测与观测到的条件方差进行比较。

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

图中包含一个轴对象。标题为“名义收益预测条件方差”的轴对象包含两个类型为line的对象。这些对象代表估计样本第二。var,预测电导率。var . .

更多关于

全部展开

提示

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

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

参考文献

Tsay, r.s。金融时间序列分析.第三版。霍博肯,新泽西州:约翰威利父子公司,2010。

介绍了R2012a