蒙特卡罗模拟预测VAR模型

此示例演示如何通过模拟预测风险值模型。

模拟使您能够基于模型生成时间序列的模拟。如果您有一个值得信赖的VAR模型对象,那么可以将这些模拟用作示例预测。

模拟requires:

  • 模型(EstMdl以下内容)

  • 预测的时段数(numobs以下内容)

模拟可选服用:

  • 外生数据系列

  • 预采样时间序列(Y(结束-3:结束,:)以下内容)

  • 条件模拟的未来样本响应

  • 要模拟的实现或路径的数目(2000年以下内容)

装载数据使用模型数据集。这个例子使用了两个时间序列:实际GDP的对数和实际3个月的T-bill率,两者相差都是近似平稳的。为了举例说明,VAR(4)模型描述了时间序列。

负载数据使用模型DEF=日志(数据表.CPIAUCSL);GDP=对数(数据表.GDP);rGDP=差异(GDP-DEF);%实际GDP是GDP-通货紧缩TB3=0.01*数据表.TB3MS;dDEF=4*diff(DEF);%缩放rTB3=TB3(2:结束)-dDEF;%实际利息缩水Y=[rGDP,rTB3];

符合VAR(4)模型规范。

Mdl=varm(2,4);Mdl.SeriesNames系列= {'转化后的实际GDP','已转换的实际3个月期国库券利率'};EstMdl=估计值(Mdl,Y);

定义预测范围。

numobs=21;FDates=dateshift(数据表时间(结束),'结束','季度',1:numobs);

模拟模型numobssteps ahead, and generate 2000 paths. Specify presample observations from the end of the data.

rng(1);%再现性Ysim=模拟(EstMdl,numobs,'Y0',Y(结束-3:结束,:),'毫帕'2000年);

Calculate the mean and standard deviation of the simulated series:

Ymean=平均值(Ysim,3);%计算平均值Ystd=std(Ysim,0,3);%计算标准偏差

绘制模拟序列的平均值±1标准偏差:

图:子地块(2,1,1)图(数据表时间(结束-10:结束),Y(结束-10:结束,1),“k”)hold('打开')情节([数据表时间(结束)FDates,[Y(结束,1);Ymean(:,1)],“r”)情节([数据表时间(结束)FDates],[Y(结束,1);Ymean(:,1)]+[0;Ystd(:,1)],“b”)情节([数据表时间(结束)FDates],[Y(结束,1);Ymean(:,1)]-[0;Ystd(:,1)],“b”)标题('转化后的实际GDP')子地块(2,1,2)图(数据表时间(结束-10:结束),Y(结束-10:结束,2),“k”)hold('打开')情节([数据表时间(结束)FDates,[Y(结束,2);Ymean(:,2)],“r”)情节([数据表时间(结束)FDates],[Y(结束,2);Ymean(:,2)]+[0;Ystd(:,2)],“b”)情节([数据表时间(结束)FDates],[Y(结束,2);Ymean(:,2)]-[0;Ystd(:,2)],“b”)标题('已转换的实际3个月期国库券利率')

另见

物体

功能

Related Topics