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

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

原文链接:http://tecdat.cn/?p=27246 


此示例说明如何从 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);


点击标题查阅往期内容


向量自回归(VAR)模型分析消费者价格指数 (CPI) 和失业率时间序列


01

02

03

04

生成 MMSE 预测


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

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

YMMSE 是 MMSE 预测的 10×3 数值矩阵。行对应于预测范围内的期间,列对应于 中的序列 YYMMSEMSE 是 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 预测是相同的。

相关文章
|
2月前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
206 80
|
2天前
|
机器学习/深度学习 数据采集 算法
基于GWO灰狼优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB2022a,展示了时间序列预测算法的运行效果(无水印)。核心程序包含详细中文注释和操作视频。算法采用CNN-GRU-SAM网络,结合灰狼优化(GWO),通过卷积层提取局部特征、GRU处理长期依赖、自注意力机制捕捉全局特征,最终实现复杂非线性时间序列的高效预测。
|
1月前
|
机器学习/深度学习 数据采集 算法
基于GA遗传优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB2022a实现时间序列预测,采用CNN-GRU-SAM网络结构。卷积层提取局部特征,GRU层处理长期依赖,自注意力机制捕捉全局特征。完整代码含中文注释和操作视频,运行效果无水印展示。算法通过数据归一化、种群初始化、适应度计算、个体更新等步骤优化网络参数,最终输出预测结果。适用于金融市场、气象预报等领域。
基于GA遗传优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
|
2月前
|
机器学习/深度学习 算法 数据安全/隐私保护
数据链中常见电磁干扰matlab仿真,对比噪声调频,线性调频,噪声,扫频,灵巧五种干扰模型
本项目展示了用于分析和模拟电磁干扰对数据链系统影响的算法。通过Matlab 2022a运行,提供无水印效果图预览。完整代码包含详细中文注释及操作视频。理论部分涵盖五种常见干扰模型:噪声调频、线性调频、噪声、扫频和灵巧干扰,详细介绍其原理并进行对比分析。灵巧干扰采用智能技术如认知无线电和机器学习,自适应调整干扰策略以优化效果。
|
2月前
|
机器学习/深度学习 算法
基于遗传优化的双BP神经网络金融序列预测算法matlab仿真
本项目基于遗传优化的双BP神经网络实现金融序列预测,使用MATLAB2022A进行仿真。算法通过两个初始学习率不同的BP神经网络(e1, e2)协同工作,结合遗传算法优化,提高预测精度。实验展示了三个算法的误差对比结果,验证了该方法的有效性。
|
2月前
|
机器学习/深度学习 数据采集 算法
基于PSO粒子群优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目展示了基于PSO优化的CNN-GRU-SAM网络在时间序列预测中的应用。算法通过卷积层、GRU层、自注意力机制层提取特征,结合粒子群优化提升预测准确性。完整程序运行效果无水印,提供Matlab2022a版本代码,含详细中文注释和操作视频。适用于金融市场、气象预报等领域,有效处理非线性数据,提高预测稳定性和效率。
|
2月前
|
算法
基于Adaboost模型的数据预测和分类matlab仿真
AdaBoost(Adaptive Boosting)是一种由Yoav Freund和Robert Schapire于1995年提出的集成学习方法,旨在通过迭代训练多个弱分类器并赋予分类效果好的弱分类器更高权重,最终构建一个强分类器。该方法通过逐步调整样本权重,使算法更关注前一轮中被误分类的样本,从而逐步优化模型。示例代码在MATLAB 2022A版本中运行,展示了随着弱分类器数量增加,分类错误率的变化及测试数据的分类结果。
207 13
|
2月前
|
机器学习/深度学习 算法 Python
基于BP神经网络的金融序列预测matlab仿真
本项目基于BP神经网络实现金融序列预测,使用MATLAB2022A版本进行开发与测试。通过构建多层前馈神经网络模型,利用历史金融数据训练模型,实现对未来金融时间序列如股票价格、汇率等的预测,并展示了预测误差及训练曲线。
|
2月前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。
|
4月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于BP神经网络的苦瓜生长含水量预测模型matlab仿真
本项目展示了基于BP神经网络的苦瓜生长含水量预测模型,通过温度(T)、风速(v)、模型厚度(h)等输入特征,预测苦瓜的含水量。采用Matlab2022a开发,核心代码附带中文注释及操作视频。模型利用BP神经网络的非线性映射能力,对试验数据进行训练,实现对未知样本含水量变化规律的预测,为干燥过程的理论研究提供支持。