最近我们被客户要求撰写关于VECM的研究报告,包括一些图形和统计输出。

此示例说明如何从 VEC( q ) 模型生成 Monte Carlo 预测。该示例将生成的预测与最小均方误差 (MMSE) 预测和来自VEC( q ) 模型的 VAR( q +1) 模型的预测进行比较。

假设具有 H1 Johansen 形式的 VEC(2) 模型恰当地描述了由 1954 年至 1994 年的年度短期、中期和长期债券利率组成的 3D 多元时间序列的动态。

加载和预处理数据

加载 数据集。


Td = size(Ya,1)

numSdsrfiess = size(sY,2)

在同一图中绘制序列。


plot(dastdes,Y,'LineadaassWidth',2)
xlabel 'Yeasdar';
ylabel 'Perasdacent';
legend(ndaamsess,'Lodcatsion','NW')

估计 VEC 模型

创建协整等级为 2 的 3D VEC(2) 模型。

nuassdamLags = 2;
ras = 2;
Maddl = vecasm(nuassmSeriaes,dasr,asdnuamLsags);

估计 VEC(2) 模型。

EssasdtMasl = esastimdate(Masddl,Yas);

默认情况下, estimate 应用 H1 Johansen 形式并使用前 q  + 1 = 3 个观测值作为预采样数据。

生成蒙特卡洛预测

使用 . 从估计的 VEC 模型生成 10 年的蒙特卡罗预测 simulate。提供最新的三行数据来初始化预测,并指定生成 1000 条路径。

numaPaddtfhs = 1000;
hsoriszosn = 10;
Y0sa = Y((enssdd-2):enad,:);aYSisasddmVaEC = simausdlate(EstasdaMdl,hoasdrizon,'NumPatahs',numPdathas,'Y0d',Y0a);

估计所有路径上每个时期和时间序列的预测均值。为每个时期和时间序列构建 95% 的百分位预测区间。

YMCsdfVsdEC   = meafn(YSidmdfggVEC,3);
YMCfVECdsCIf = quandftile(YSdfgdfimVgdfEC,[0.025,0.975],3);

绘制有效样本观测值、平均预测值和 95% 百分位置信区间。

fDdatesf = dsatdfes(end) + (0:horsdizfon)';
figure;
h1f = plddot([fdatsdes; fDfatesds(f2:end)]sd,[Y; YMCVEC],'LineWidth',2);
hds2 = fsgcsda;
hold on
h3 = plsdot(frepmsdat(ffsdDatdes,1,3),[Y(endfsd,:,:); YMCVEsddfCCI(:,:,1)],'--',...'LineWidtdsdsh',2);

生成 MMSE 预测

使用估计的 VEC 模型在 10 年的范围内估计 MMSE 预测 forecast。提供最新的三行数据来初始化预测。返回预测和相应的多元均方误差。

[YMaMSaE,YMMsSgEfMSE] = forecast(EssstfMddl,horsgizfson,Y0);

YMMSE 是 MMSE 预测的 10×3 数值矩阵。行对应于预测范围内的期间,列对应于 中的序列 Y。 YMMSEMSE 是 3×3 数值矩阵的 10×1 元胞向量。单元格 j中的矩阵是周期j 中三个预测值的估计多元 MSE  。矩阵的对角线值是预测 MSE,以及预测协方差的非对角线值。

估计 Wald 类型的 95% 预测区间。绘制 MMSE 预测和预测区间。


hs1 = plsdot([datsdfes; fdDgsategs(2:ednd)],[Y; YsdfMMSEf],'LinseWdsdfidth',2);
dfh2 = gca;
hold on

VAR( q  + 1) 表示 MMSE 预测

将估计的 VEC(2) 表示为 VAR(3) 模型。

EstsdMdsdfldVAfdR = vafrm(EssdfdtMsdl)

使用 VAR 模型估计 10 年的 MMSE 预测 forecast。提供最新的三行数据来初始化预测。返回预测和相应的多元均方误差。

[YMMsdSEVAR,YMMsdSEfMasdSEVAR] = foresdfcast(EsstfMdlVdAR,horiddzson,fY0);

估计 Wald 类型的 95% 预测区间。绘制 MMSE 预测和预测区间。

YMMfSEVsAdfRCI = zeros(hsdrifzon,nusfdmfSesdrsdies,2);
YMMSEMdSEsdVsAR = cell2fsdfmat(cellfun(@(x)diag(x)',YMMSEMSEVAR,'UniformOusdftput',false));
YMMSEVARCI(:,:,1) = YMMSE - 1.96*sqrt(YMMSEsdsdffMSEVAR);
YMdMSfEdfVARCI(:,:,2) = YMMSE + 1.96*sqrt(YMMSEMfSEdsVAR);figsdfure;
h1 = plot([datdfses; fDatses(2:engd)],[Yd YMMhfSEgf],'LingheWidth',2);

确认来自 VEC 和 VAR 模型的 MMSE 预测是相同的。

(YqwMeMSE - YMMSEVweAR)'*(YMMwSE - YMretMSyEVAR) > ertps

模型之间的 MMSE 预测是相同的。


Matlab用向量误差修正VECM模型蒙特卡洛Monte Carlo预测债券利率时间序列和MMSE 预测相关推荐

  1. Matlab用向量误差修正VECM模型蒙特卡洛Monte Carlo预测债券利率时间序列和MMSE 预测...

    原文链接:http://tecdat.cn/?p=27246  此示例说明如何从 VEC( q ) 模型生成 Monte Carlo 预测.该示例将生成的预测与最小均方误差 (MMSE) 预测和来自V ...

  2. 蒙特卡洛(Monte Carlo)方法的介绍和应用

    蒙特卡洛(Monte Carlo)方法的介绍和应用 蒙特卡洛(Monte Carlo)方法 在渲染中,我们经常听到术语"蒙特卡洛"(通常缩写为MC).但是这是什么意思?实际上,它所 ...

  3. 蒙特卡洛python求解派_利用蒙特卡洛(Monte Carlo)方法计算π值[ 转载]

    圆周率π是一个无理数,没有任何一个精确公式能够计算π值,π的计算只能采用近似算法. 国际公认的π值计算采用蒙特卡洛方法. 一.蒙特卡洛方法 蒙特卡洛(Monte Carlo)方法,又称随机抽样或统计试 ...

  4. 利用蒙特卡洛(Monte Carlo)方法计算π值

    圆周率π是一个无理数,没有任何一个精确公式能够计算π值,π的计算只能采用近似算法. 国际公认的π值计算采用蒙特卡洛方法. 蒙特卡洛方法 蒙特卡洛(Monte Carlo)方法,又称随机抽样或统计试验方 ...

  5. 蒙特卡洛(Monte Carlo)方法简介

    蒙特卡洛(Monte Carlo)方法的本质 蒙特卡洛(Monte Carlo)方法,即蒙特卡洛采样,是一种根据某已知分布的概率密度函数f(x),产生服从此分布的样本X的方法. 蒙特卡洛采样有很多种, ...

  6. 15分钟入门蒙特卡洛 Monte Carlo

    来自 | 知乎   作者 | 薛定豆 链接 | https://zhuanlan.zhihu.com/p/223042372 编辑 | 深度学习这件小事公众号 本文仅作学术交流,如有侵权,请联系后台删 ...

  7. Matlab用Copula模型进行蒙特卡洛(Monte Carlo)模拟和拟合股票收益数据分析

    最近我们被客户要求撰写关于Copula的研究报告,包括一些图形和统计输出. 最近,copula 在仿真模型中变得流行起来.Copulas 是描述变量之间依赖关系的函数,并提供了一种创建分布以对相关多元 ...

  8. 在我方某前沿防守地域 matlab,[matlab]Monte Carlo模拟学习笔记

    理论基础:大数定理,当频数足够多时,频率可以逼近概率,从而依靠概率与$\pi$的关系,求出$\pi$ 所以,rand在Monte Carlo中是必不可少的,必须保证测试数据的随机性. 用蒙特卡洛方法进 ...

  9. Markov Chain Monte Carlo

    转载至https://zhuanlan.zhihu.com/p/25610149 [数据分析] Markov Chain Monte Carlo Markov Chain Monte Carlo简称M ...

最新文章

  1. oauth2_带有Spring Security的OAuth 2.0快速指南
  2. 《数据结构与算法分析:C语言描述》复习——第六章“排序”——基数排序
  3. mysql 自动停止_MySQL数据库之mysql自动停止的完美解决方法
  4. 六大Web负载均衡原理与实现
  5. Oracle Grid Infrastructure: Understanding Split-Brain Node Eviction (文档 ID 1546004.1)
  6. 谈谈Java开发中的对象拷贝
  7. python 第三方模块之 pandas 操作 excel
  8. 佩斯大学计算机科学世界排名,美国佩斯大学留学推荐 计算机科学专业
  9. php 框架源码分析,Laravel框架源码解析之模型Model原理与用法解析
  10. JavaScript 中常见设计模式整理
  11. @protocol 和 category 中如何使用 @property
  12. 让你提前认识软件开发(3):学校C语言教材的缺陷
  13. matlab计算abc三相短路电流_电工都知道三相电动机按一千瓦两个电流计算 却不会计算公式...
  14. 论文阅读 视频生成(vid2vid) || Few-shot Video-to-Video Synthesis
  15. 发际线与程序员的暧昧关系
  16. 怎么用C++实现点对点通信
  17. java jnlp_使用Java 7启动JNLP时的NoSuchAlgorithmException
  18. 统计学基础知识(三)
  19. linux系统设置密钥登录
  20. JAVA JDBC连接步骤代码,SQL注入,处理异常try catch 的快捷键

热门文章

  1. Service前台服务
  2. SAP前台操作时,如何客制化表格的宽度和位置
  3. “阿里外传”之一:阿里巴巴有只宠物,叫雅虎
  4. 风控数据分析师,有哪四大分析工具必须掌握的?
  5. html短信验证代码是什么意思,如何让验证码显示出来 在手机找到短信选项并进入...
  6. SQL server 数据库 修改学生数据表
  7. 关于该内存不能为read要终止程序
  8. 隔离霜和防晒霜一样吗?隔离霜和防晒霜的这5大区别你得知道!
  9. PAT L3-011 直捣黄龙
  10. Mac回收站清空还能恢复吗?2个方法快速找回废纸篓清空文件