主要内容

修改条件方差模型的性质

点符号

garchegarch,或gjr具有分配给所有模型属性的值。要更改这些属性值,您不需要重构整个模型。您可以使用点符号来修改现有模型的属性值。也就是说,输入模型名,然后是属性名,用“。”(一段时间)。

例如,从以下模型规范开始:

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

默认模型没有平均偏移量,所以抵消属性没有出现在模型输出中。但是,该属性存在:

抵消= Mdl。抵消
抵消= 0

修改模型,添加一个未知的平均偏移项:

Mdl。抵消=南
描述:“garch(1,1)带偏移的条件方差模型(高斯分布)”分布:Name = "Gaussian" P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Offset: NaN

抵消现在出现在模型输出中,带有更新后的非零值。

请注意,每个模型属性都有一个数据类型。对属性值所做的任何修改都必须与属性的数据类型一致。例如,GARCH(和利用egarchgjr模型)都是细胞载体。这意味着您必须使用单元格数组语法对它们进行索引。

例如,从以下模型开始:

GJRMdl = gjr (1,1)
描述:“gjr(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: 0

的属性值GARCH,分配GARCH一个细胞数组。在这里,指定已知的GARCH系数值:

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

更新后的模型现在有两个具有指定等式约束的GARCH项(滞后1和2)。

类似地,的数据类型分布是一个数据结构。默认数据结构只有一个字段,的名字,价值“高斯”

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

修改创新分配,分配分布一个新的名称或数据结构。数据结构最多可以有两个字段,的名字景深.第二个场对应于学生的自由度t分配,并且只在的名字的值“t”

指定一个学生的t自由度未知的分布,进入:

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

更新后的模型有一个Student'st分布与的自由度。指定一个t八自由度分布,即:

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

对模型中的自由度属性进行了更新。请注意,景深领域的分布不能直接分配。例如,GJRMdl.Distribution.DoF = 8不是有效的转让。但是,你可以获得单独的字段:

DistributionDoF = GJRMdl.Distribution.DoF
DistributionDoF = 8

Nonmodifiable属性

并不是所有的模型属性都可以修改。您不能在现有模型中更改这些属性:

  • P.当对应于最大非零GARCH项的延迟发生变化时,此属性将自动更新。

  • .当对应于最大的非零ARCH或杠杆项更改的延迟时,此属性将自动更新。

并非所有可以用于模型创建的名称-值对参数都是所创建模型的属性。具体来说,您可以指定参数GARCHLagsARCHLags(和LeverageLags用于EGARCH和GJR模型)。然而,这些不是garchegarch,或gjr模型。这意味着您不能在现有模型中检索或修改它们。

如果在系数单元阵列中添加(或删除)任何元素,ARCH、GARCH和杠杆会自动更新GARCH,或利用

例如,指定一个EGARCH(1,1)模型:

Mdl = egarch (1,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: 0

模型输出显示了滞后1的非零GARCH、ARCH和杠杆系数。

在滞后3时添加一个新的GARCH系数:

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

滞后1和3处的非零GARCH系数现在显示在模型输出中。然而,单元格数组分配给GARCH返回三个要素:

garchCoefficients = Mdl。GARCH
garchCoefficients =1×3单元阵列(南){}{[0]}{(南)}

GARCH在滞后2时系数为零,以保持与传统MATLAB®单元阵列索引的一致性。

另请参阅

对象

相关的例子

更多关于