主要内容

模拟

蒙特卡罗模拟的条件方差模型

描述

例子

V=模拟(Mdl,numobs)返回数字数组V包含一个随机numobs期一系列条件方差的路径完全指定的条件方差模型MdlMdl可以是一个garch,egarch,或gjr模型。

例子

V=模拟(Mdl,numobs,名称=值)使用一个或多个名称参数指定选项。例如,模拟(Mdl 100、NumPaths = 1000 V0 = V0)1000年返回一个数字矩阵,100 -周期模拟条件方差的路径Mdl并指定presample条件方差的数值向量初始化每个返回的路径。

模拟生产条件,指定响应数据的仿真使用YF名称-值参数。

例子

(V,Y)=模拟(___)还返回模拟响应系列路径使用任何输入参数在前面的语法。

例子

资源描述=模拟(Mdl,numobsPresample =Presample,名称=值)返回表或时间表资源描述包含随机条件方差和反应级数,模型模拟的结果Mdl模拟利用创新的表或时间表或条件方差presample数据Presample初始化模型。如果您指定Presample,您必须指定包含presample创新或条件方差的变量数据使用PresampleInnovationVariablePresampleVarianceVariable名称-值参数。

例子

全部折叠

模拟条件方差和响应路径的GARCH(1,1)模型。返回结果的数字矩阵。

指定一个GARCH(1,1)模型与已知参数。

Mdl = garch(常数= 0.01,garch = 0.7,拱= 0.2);

模拟500个样本路径,每个100观察。

rng (“默认”)%的再现性[V, Y] =模拟(100年Mdl NumPaths = 500);

VY100 - 500年- 500年矩阵模拟路径的条件方差和响应,分别。

图tiledlayout (2, 1) nexttile情节(V)标题(“模拟条件方差”)nexttile情节(Y)标题(“模拟反应”)

图包含2轴对象。坐标轴对象1与标题模拟条件方差包含500行类型的对象。坐标轴对象与标题2模拟响应包含500行类型的对象。

模拟反应看起来像从一个平稳随机过程。

情节2.5、50(中值)和第97.5百分位数的模拟条件方差。

低= prctile (V, 2.5, 2);中间=值(V, 2);上= prctile (V, 97.5, 2);图绘制(1:10 0,降低,r:“1:10 0,中间,“k”,1:10 0,上,r:“线宽= 2)传说(“95%置信区间”,“中值”)标题(“近似95%间隔”)

图包含一个坐标轴对象。坐标轴对象标题近似95%区间包含3线类型的对象。这些对象代表95%置信区间值。

间隔的不对称是由于积极约束条件方差。

模拟条件方差和响应路径从一个EGARCH(1,1)模型。

指定一个EGARCH(1,1)模型与已知参数。

Mdl = egarch(常数= 0.001,GARCH = 0.7,拱= 0.2,杠杆= -0.3);

模拟500个样本路径,每个100观察。

rng (“默认”)%的再现性[V, Y] =模拟(100年Mdl NumPaths = 500);图tiledlayout (2, 1) nexttile情节(V)标题(“模拟条件方差”)nexttile情节(Y)标题(“模拟反应(创新)”)

图包含2轴对象。坐标轴对象1与标题模拟条件方差包含500行类型的对象。坐标轴对象2标题模拟反应(创新)包含500行类型的对象。

模拟反应看起来像从一个平稳随机过程。

情节2.5、50(中值)和第97.5百分位数的模拟条件方差。

低= prctile (V, 2.5, 2);中间=值(V, 2);上= prctile (V, 97.5, 2);图绘制(1:10 0,降低,r:“1:10 0,中间,“k”,1:10 0,上,r:“线宽= 2)传说(“95%置信区间”,“中值”)标题(“近似95%间隔”)

图包含一个坐标轴对象。坐标轴对象标题近似95%区间包含3线类型的对象。这些对象代表95%置信区间值。

间隔的不对称是由于积极约束条件方差。

从GJR模拟条件方差和响应路径(1,1)模型。

指定一个GJR(1,1)模型与已知参数。

Mdl = gjr(常数= 0.001,GARCH = 0.7,拱= 0.2,杠杆= 0.1);

模拟500个样本路径,每个100观察。

rng (“默认”)%的再现性[V, Y] =模拟(100年Mdl NumPaths = 500);图tiledlayout (2, 1) nexttile情节(V)标题(“模拟条件方差”)nexttile情节(Y)标题(“模拟反应(创新)”)

图包含2轴对象。坐标轴对象1与标题模拟条件方差包含500行类型的对象。坐标轴对象2标题模拟反应(创新)包含500行类型的对象。

模拟反应看起来像从一个平稳随机过程。

情节2.5、50(中值)和第97.5百分位数的模拟条件方差。

低= prctile (V, 2.5, 2);中间=值(V, 2);上= prctile (V, 97.5, 2);图绘制(1:10 0,降低,r:“1:10 0,中间,“k”,1:10 0,上,r:“线宽= 2)传说(“95%置信区间”,“中值”)标题(“近似95%间隔”)

图包含一个坐标轴对象。坐标轴对象标题近似95%区间包含3线类型的对象。这些对象代表95%置信区间值。

间隔的不对称是由于积极约束条件方差。

自从R2023a

模拟条件方差的日常纳斯达克综合指数收益为500天。利用模拟预测和近似区间预测的95%。比较预测在GARCH (1, 1), EGARCH (1,1), GJR (1,1)。供应presample数据的时间表。

负载纳斯达克工具箱中包含的数据。将指数的回报。

负载Data_EquityIdxDTTRet = price2ret (DataTimeTable);DTTRet。间隔= [];T =身高(DTTRet);

适合GARCH (1,1)、EGARCH(1,1),和GJR(1,1)模型对整个数据集。

Mdl =细胞(3,1);%预先配置Mdl {1} = garch (1,1);Mdl {2} = egarch (1,1);Mdl {3} = gjr (1,1);EstMdl = cellfun (@ (x)估计(x, DTTRet ResponseVariable =“纳斯达克”,显示=“关闭”)、Mdl UniformOutput = false);

EstMdl3×1细胞向量。每个细胞都是一个不同类型的条件方差估计模型,例如,EstMdl {1}是一个估计GARCH(1,1)模型。

模拟1000个样本路径与500年的观察。推断出条件方差和残差作为presample预测仿真。

DTTSim =细胞(3,1);%预先配置PS =细胞(3,1);j = 1:3 rng (“默认”)%的再现性p {j} =推断(EstMdl {j}, DTTRet, ResponseVariable =“纳斯达克”);DTTSim {j} =模拟(EstMdl {j}, 500年,NumPaths = 1000,Presample = p {j}, PresampleInnovationVariable =“Y_Residual”,PresampleVarianceVariable =“Y_Variance”);结束

DTTSim是一个3×1细胞向量,每个单元格包含一个500 - 1000年- 2时间表模拟路径的条件方差和反应生成相应的估计模型。

情节仿真预测和近似95%预测区间,随着条件方差从数据推断。

低= cellfun (@ (x) prctile (x.Y_Variance, 2.5, 2), DTTSim, UniformOutput = false);上= cellfun (@ (x) prctile (x.Y_Variance, 97.5, 2), DTTSim, UniformOutput = false);mn = cellfun (@ (x)的意思是(x.Y_Variance, 2), DTTSim, UniformOutput = false);datesPlot = DTTRet。时间(250年年底:结束);datesFH = DTTRet.Time(结束)+ caldays (1:50 0) ';h = 0 (3、4);图j = 1:3坳= 0 (1、3);坳(j) = 1;h (j, 1) =情节(datesPlot、PS {j} .Y_Variance(端- 250:端),颜色=坳);持有h (j, 2) =情节(datesFH, mn {j},颜色=坳,线宽= 3);h (j, 3:4) =情节([datesFH datesFH],[上限{j} {j}],”:“,颜色=坳,线宽= 2);结束甘氨胆酸hGCA =;情节(datesFH ([1]), hGCA.YLim,“k——”);轴;h = h (:, 1:3);传奇(h (:),GARCH -推断的,“EGARCH -推断”,“GJR -推断”,“GARCH - Sim卡。的意思是“,“EGARCH - Sim卡。的意思是“,“GJR - Sim卡。的意思是“,前的GARCH - 95%。Int。,前的EGARCH - 95%。Int。,“GJR - 95%。Int。,“位置”,“东北”)标题(“模拟条件方差预测”)举行

图包含一个坐标轴对象。坐标轴对象与标题模拟条件方差预测包含13线类型的对象。这些对象代表GARCH -推断,GARCH - Sim卡。意思是,GARCH - 95%。Int, EGARCH -推断,EGARCH - Sim卡。意思是,EGARCH - 95%。Int, GJR -推断,GJR - Sim卡。意思是,GJR - 95%。Int . .

输入参数

全部折叠

条件方差模型没有任何未知参数,指定为一个garch,egarch,或gjr模型对象。

Mdl不能包含任何属性价值。

样本路径长度指定为一个正整数。numobs是随机观察生成的数量每输出路径;输出VYnumobs行。

自从R2023a

Presample数据创新εt或条件方差σt2初始化模型,指定为一个表或时间表,相同的类型Tbl1,numprevars变量和numpreobs行。使用Presample只有当你提供一个数据表或时间表Tbl1

模拟输出表中返回模拟变量或时间表资源描述,这是符合Presample

每个选定的变量是一个路径(numpreobs1的向量)或多个路径(numpreobs——- - - - - -numprepaths矩阵)numpreobs观察presample的代表numpreobs观察的创新或有条件的差异。

每一行是一个presample观察和测量每一行同时发生。最后一行包含最新presample观察。numpreobs必须是下列值之一:

  • Mdl.QPresample只提供presample创新。

  • GARCH (P,)和GJR (P,)模型:

    • Mdl.PPresample只提供presample条件方差。

    • 马克斯([Mdl。P Mdl.Q])Presample同时提供presample创新和条件方差

  • EGARCH (P,)模型,马克斯([Mdl。P Mdl.Q])Presample提供presample条件方差

如果numpreobs超过最低数量,模拟只使用了最新的所需数量的观察。

如果Presample是一个时间表,所有下列条件必须是真实的:

  • Presample必须代表一个样本与正则datetime时间步(看到了吗isregular)。

  • datetime向量样本的时间戳Presample.Time必须升序或降序。

如果Presample是一个表,最后一行包含最新presample观察。

默认值是:

  • GARCH (P,)和GJR (P,)模型,模拟集任何必要presample创新的平均平方值的平方根offset-adjusted反应级数Y

  • EGARCH (P,)模型,模拟任何必要的presample创新设置为零。

  • 模拟集任何必要presample条件方差的无条件方差的过程。

如果你指定Presample,你必须指定presample创新或使用的条件方差的变量名PresampleInnovationVariablePresampleVarianceVariable名称-值参数。

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:100年模拟(Mdl NumPaths = 1000, E0 = (0.5;0.5])指定生成1000年从模型中样本路径长度为100Mdl,使用(0.5;0.5)作为创新的presample /路径。

数量的样本路径生成,指定为一个正整数。输出VYNumPaths列。

例子:NumPaths = 1000

数据类型:

Presample创新路径εt指定为一个numpreobs1数字或列向量numpreobs——- - - - - -numprepaths矩阵。使用E0只有当你提供可选的数据输入数字数组。

presample创新提供初始值条件方差的创新过程模型Mdl。presample创新源自一个分布均值为0。

numpreobs是presample观测的数量。numprepathspresample路径的数量。

每一行是一个presample观察和测量每一行同时发生。最后一行包含最新presample观察。numpreobs必须至少Mdl.Q。如果numpreobs>Mdl.Q,模拟只使用了最新的所需数量的观察。最后一个元素或行包含最新的观测。

  • 如果E0是一个列向量,它代表一个潜在的创新系列的路径。模拟它适用于每个输出路径。

  • 如果E0是一个矩阵,每一列代表一个系列presample路径潜在的创新。numprepaths必须至少NumPaths。如果numprepaths>NumPaths,模拟使用第一个NumPaths只列。

默认值是:

  • GARCH (P,)和GJR (P,)模型,模拟集任何必要presample创新独立的干扰序列是一个零和标准偏差等于无条件的标准偏差的条件方差的过程。

  • EGARCH (P,)模型,模拟集任何必要presample创新独立自主的干扰序列平均值为零,方差等于取幂无条件均值EGARCH对数的方差的过程。

例子:E0 = (0.5;0.5)

积极presample条件方差路径,指定为一个numpreobs1积极或列向量numpreobs——- - - - - -numprepaths积极的矩阵。提供初始值的条件方差模型。使用只有当你提供可选的数据输入数字数组。

每一行是一个presample观察和测量每一行同时发生。最后一行包含最新presample观察。

  • GARCH (P,)和GJR (P,)模型,numpreobs必须至少Mdl.P

  • EGARCH (P,)模型,numpreobs必须至少马克斯([Mdl。P Mdl.Q])

如果numpreobs超过最低数量,模拟只使用最新的观测。最后一个元素或行包含最新的观测。

  • 如果是一个列向量,它代表了一个路径的条件方差系列。模拟它适用于每个输出路径。

  • 如果是一个矩阵,每一列代表一个presample路径的条件方差系列。numprepaths必须至少NumPaths。如果numprepaths>NumPaths,模拟使用第一个NumPaths只列。

默认值是:

  • GARCH (P,)和GJR (P,)模型,模拟集任何必要presample方差的无条件方差条件方差的过程。

  • EGARCH (P,)模型,模拟集任何必要presample方差取幂无条件均值EGARCH对数的方差的过程。

例子:V0 = [1;0.5)

数据类型:

自从R2023a

变量的Presample包含presample创新路径εt指定为下列数据类型之一:

  • 字符串标量或特征向量包含一个变量名Presample.Properties.VariableNames

  • 变量指数(整数)可供选择Presample.Properties.VariableNames

  • 一个长度numprevars逻辑向量,PresampleInnovationVariable (j)= true选择变量jPresample.Properties.VariableNames,总和(PresampleInnovationVariable)1

选定的变量必须是一个数字矩阵和不能包含缺失值()。

如果您指定presample创新数据使用Presample名称-值参数,您必须指定PresampleInnovationVariable

例子:PresampleInnovationVariable = " StockRateInnov0 "

例子:PresampleInnovationVariable =(假假真假)PresampleInnovationVariable = 3选择第三个表变量作为presample创新变量。

数据类型:|逻辑|字符|细胞|字符串

自从R2023a

变量的Presample包含数据presample条件方差σt2指定为下列数据类型之一:

  • 字符串标量或特征向量包含一个变量名Presample.Properties.VariableNames

  • 变量指数(整数)可供选择Presample.Properties.VariableNames

  • 一个长度numprevars逻辑向量,PresampleVarianceVariable (j)= true选择变量jPresample.Properties.VariableNames,总和(PresampleVarianceVariable)1

所选变量必须是数字矢量和不能包含缺失的值()。

如果您指定presample条件方差数据使用Presample名称-值参数,您必须指定PresampleVarianceVariable

例子:PresampleVarianceVariable = " StockRateVar0 "

例子:PresampleVarianceVariable =(假假真假)PresampleVarianceVariable = 3选择第三个表变量presample条件方差的变量。

数据类型:|逻辑|字符|细胞|字符串

笔记

  • E0,显示缺失值。模拟删除缺失值由list-wise删除指定的数据。模拟横向连接E0,然后删除任何包含至少一个连接矩阵的行。这种类型的数据减少降低了有效的样本大小,可以创建一个不规则的时间序列。

  • 数字数据输入,模拟假设您同步presample最新数据,观察同时发生。

  • 模拟问题一个错误当任何表或时间表输入包含缺失值。

  • 如果E0是列向量,模拟他们适用于每一列的输出VY。这个应用程序允许模拟路径共享一个共同的起点预测和预测误差分布的蒙特卡罗模拟。

输出参数

全部折叠

模拟条件方差的路径σt2均值为0的创新联系在一起Y,返回numobs1数字或列向量numobs——- - - - - -NumPaths矩阵。模拟返回V当你没有指定输入表或时间表Presample

每一列的V对应于一个模拟的条件方差的道路。行V时间相应的周期性Mdl

模拟反应路径yt,返回numobs1数字或列向量numobs——- - - - - -NumPaths矩阵。模拟返回Y当你没有指定输入表或时间表Presample

Y通常代表一个均值为0,异方差的时间和条件方差给出一系列的创新V(presample创新系列的延续E0)。

Y也可以代表一个时间序列的均值为0,异方差的创新加上一个偏移量。如果Mdl包括一个偏移量,然后模拟添加了抵消潜在的均值为0,所以异方差的创新Y代表一个时间序列的offset-adjusted创新。

每一列的Y对应于一个模拟的反应路径。行Y时间相应的周期性Mdl

模拟条件方差σt2和响应yt路径,作为一个表或时间表,返回相同的数据类型Presample模拟返回资源描述只有当你提供输入Presample

资源描述包含以下变量:

  • 模拟条件方差路径,在numobs——- - - - - -NumPaths数字矩阵,行代表观察和列代表独立的路径。每个路径代表presample条件方差的相应路径的延续Presample模拟模拟的条件方差的变量的名称资源描述responseName_Variance,在那里responseNameMdl.SeriesName。例如,如果Mdl.SeriesNameStockReturns,资源描述包含一个变量对应的模拟条件方差的路径名称StockReturns_Variance

  • 在模拟的反应路径numobs——- - - - - -NumPaths数字矩阵,行代表观察和列代表独立的路径。每个路径代表相应的presample创新路径的延续Presample模拟模拟响应变量名称资源描述responseName_Response,在那里responseNameMdl.SeriesName。例如,如果Mdl.SeriesNameStockReturns,资源描述包含一个变量对应的模拟响应路径的名称StockReturns_Response

如果资源描述是一个时间表,下列条件:

  • 行顺序资源描述升序或降序,匹配的行顺序Preample

  • Tbl.Time (1)后下次Presample(结束)相对的采样频率Tbl.Time (2: numobs)是相对于采样频率以下的时期。

引用

[1]Bollerslev, t .“广义自回归条件异方差性。”计量经济学杂志。31卷,1986年,页307 - 327。

[2]Bollerslev, t .“有条件地Heteroskedastic投机性价格和时间序列模型的回报。”经济学和统计学的评审。69卷,1987年,页542 - 547。

[3],g . e . P。,G. M. Jenkins, and G. C. Reinsel.时间序列分析:预测与控制。第三。恩格尔伍德悬崖,新泽西:普伦蒂斯霍尔,1994年。

恩德斯[4],W。应用计量经济学时间序列。新泽西州霍博肯:约翰威利& Sons, 1995。

[5]·恩格尔,r . f .“自回归条件异方差性与英国通货膨胀率的方差的估计。”费雪。50卷,1982年,页987 - 1007。

[6]Glosten, l·R。,R. Jagannathan, and D. E. Runkle. “On the Relation between the Expected Value and the Volatility of the Nominal Excess Return on Stocks.”《金融。48卷,5号,1993年,页1779 - 1801。

[7]汉密尔顿,j . D。时间序列分析。普林斯顿,纽约:普林斯顿大学出版社,1994年。

[8]纳尔逊,d . b .”条件异方差性资产的回报:一个新方法。”费雪。59卷,1991年,页347 - 370。

版本历史

介绍了R2012a

全部展开