clc
clear
load Data_USEconModel
DEF = log(DataTable.CPIAUCSL);
GDP = log(DataTable.GDP);
rGDP = diff(GDP - DEF); % Real GDP is GDP - deflation
TB3 = 0.01*DataTable.TB3MS;
dDEF = 4*diff(DEF); % Scaling
rTB3 = TB3(2:end) - dDEF; % Real interest is deflated
Y = [rGDP,rTB3];
%Fit a VAR(4) model specification:
Mdl = varm(2,4);
Mdl.SeriesNames = {'Transformed real GDP','Transformed real 3-mo T-bill rate'};
EstMdl = estimate(Mdl,Y);
% Predict the evolution of the time series:
numperiods = 21;
FDates = dateshift(DataTable.Time(end),'end','quarter',1:numperiods);
[Forecast,ForecastMSE] = forecast(EstMdl,numperiods,Y(end-3:end,:));
% Extract the main diagonal elements from the matrices in each cell of ForecastMSE. Apply the square root of the result to obtain standard errors.
extractMSE = @(x)diag(x)';
MSE = cellfun(extractMSE,ForecastMSE,'UniformOutput',false);
SE = sqrt(cell2mat(MSE));
% Estimate approximate 95% forecast intervals for each response series.
ForecastFI = zeros(numperiods,Mdl.NumSeries,2);
ForecastFI(:,:,1) = Forecast - 2*SE;
ForecastFI(:,:,2) = Forecast + 2*SE;
% Plot the forecasts and the data.
figure
h1 = plot(DataTable.Time((end-49):end),Y((end-49):end,1));
hold on
h2 = plot(FDates,Forecast(:,1));
h3 = plot(FDates,ForecastFI(:,1,1),'k--');
plot(FDates,ForecastFI(:,1,2),'k--');
title('Real GDP Growth Rate')
h = gca;
fill([FDates(1) h.XLim([2 2]) FDates(1)],h.YLim([1 1 2 2]),'k',...
'FaceAlpha',0.1,'EdgeColor','none');
legend([h1 h2 h3],'True','Forecast','95% Forecast interval',...
'Location','northwest')
hold off
figure
h1 = plot(DataTable.Time((end-49):end),Y((end-49):end,2));
hold on
h2 = plot(FDates,Forecast(:,2));
h3 = plot(FDates,ForecastFI(:,2,1),'k--');
plot(FDates,ForecastFI(:,2,2),'k--');
title('3-month T-bill rate')
h = gca;
fill([FDates(1) h.XLim([2 2]) FDates(1)],h.YLim([1 1 2 2]),'k',...
'FaceAlpha',0.1,'EdgeColor','none');
legend([h1 h2 h3],'True','Forecast','95% Forecast interval',...
'Location','northwest')
hold off
%此示例使用两个时间序列:实际 GDP 的对数和实际 3 个月国库券利率,两者的差异近似平稳。 假设 VAR(4) 模型适合描述时间序列。
没有合适的资源?快使用搜索试试~ 我知道了~
MATLAB实现VAR向量自回归时间序列区间预测(完整源码和数据)
共5个文件
png:2个
zip:1个
mat:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 4 下载量 11 浏览量
2023-07-29
14:08:25
上传
评论 1
收藏 118KB ZIP 举报
温馨提示
MATLAB实现VAR向量自回归时间序列区间预测(完整源码和数据) 区间预测 | MATLAB实现VAR向量自回归时间序列区间预测 VAR(Vector Autoregression)模型是一种广泛应用于时间序列分析中的多元自回归模型,可以用于对多个相关变量的时间序列进行预测和分析。
资源推荐
资源详情
资源评论
收起资源包目录
区间预测:VAR.zip (5个子文件)
1.png 34KB
VARTS.zip 28KB
VARTS
VARTS.m 2KB
Data_USEconModel.mat 27KB
2.png 33KB
共 5 条
- 1
资源评论
- xushaohui0982023-12-20资源不错,内容挺好的,有一定的使用价值,值得借鉴,感谢分享。
- x0_9999999992024-02-11资源是宝藏资源,实用也是真的实用,感谢大佬分享~
- meili03252023-08-28非常有用的资源,可以直接使用,对我很有用,果断支持!
- ange_hdbxge2023-09-16发现一个宝藏资源,资源有很高的参考价值,赶紧学起来~
机器学习之心
- 粉丝: 2w+
- 资源: 1011
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功