主要内容

预测

从经建会动态回归模型预测样本路径

自从R2019b

描述

例子

YF=预测(Mdl,Y,numPeriods)返回最佳点预测YF指定的一个完全经建会动态回归模型Mdl在预测地平线的长度numPeriods。预测的反应代表响应数据的延续Y

例子

YF=预测(Mdl,Y,numPeriods,名称,值)使用附加选项指定一个或多个名称参数。例如,“X”, X在预测地平线外生指定数据评价回归模型中的组件。

例子

(YF,EstCov)=预测(___)返回基于仿真的预测YF和相应的预测误差协方差EstCov,使用任何输入参数组合在前面的语法。

例子

全部折叠

从两国经建会预测响应路径动态回归模型一维反应过程。这个示例使用任意参数的值的数据生成过程(文章)。

为文章创建完全指定的模型

创建一个两国并存的离散时间马尔可夫链模型,描述了政权转换机制。标签的政权。

P = [0.9 - 0.1;0.3 - 0.7);mc = dtmc (P,“StateNames”,(“扩张”“衰退”]);

mc是一个完全指定的dtmc对象。

对于每一个政权,用arima创建一个AR模型,描述了政权内的响应过程。子存储在一个向量。

mdl1 = arima (“不变”5,基于“增大化现实”技术的(0.3 - 0.2),“方差”2);mdl2 = arima (“不变”5,基于“增大化现实”技术的,0.1,“方差”1);mdl = [mdl1;mdl2];

mdl1mdl2完全指定的华宇电脑对象。

创建一个经建会动态回归模型的转换机制mc和子的向量mdl

Mdl = msVAR (mc, Mdl);

Mdl是一个完全指定的msVAR对象。

从文章模拟响应数据

预测需要足够的数据预测地平线之前初始化模型。文章还从模拟120次观测结果。

rng (1);%的再现性y =模拟(Mdl, 120);

y120 - 1的随机路径的回答。

计算最优点预测

治疗的第一个100年观测模拟响应数据的presample预测,和治疗过去20作为抵抗样本观察。

idx0 = 1:10 0;idx1 = 101:120;y0 = y (idx0);日元= y (idx1);

计算1 -通过20-step-ahead最佳点的预测模型。

yf =预测(Mdl, y0, 20);

yf是一个20-by-1向量的最佳预测。

画出模拟响应数据和预测。

图保存情节(idx0 y0,“b”);h =情节(idx1, y1,“b——”);h1 =情节(idx1, yf,“r”);yfill = [ylim fliplr (ylim)];xfill = [idx0(结束)idx0(结束)idx1(结束)idx1(结束)];填充(xfill yfill,“k”,“FaceAlpha”0.05)传说(h1 [h]、[“实际”“最佳”),“位置”,“西北”)标题(“预测”)举行

图包含一个坐标轴对象。坐标轴对象与标题预测包含4线类型的对象,补丁。这些对象代表实际,优化。

考虑到模型中计算最优点预测

为文章创建完全指定的模型

创建指定的完全经建会动态回归模型。

P = [0.9 - 0.1;0.3 - 0.7);mc = dtmc (P,“StateNames”,(“扩张”“衰退”]);mdl1 = arima (“不变”5,基于“增大化现实”技术的(0.3 - 0.2),“方差”2);mdl2 = arima (“不变”5,基于“增大化现实”技术的,0.1,“方差”1);mdl = [mdl1;mdl2];Mdl = msVAR (mc, Mdl);

从文章模拟响应数据

预测需要足够的数据预测地平线之前初始化模型。文章还从模拟120次观测结果。

rng (10);%的再现性y =模拟(Mdl, 120);

y120 - 1的随机路径的回答。

蒙特卡罗计算点的预测

治疗的第一个100年观测模拟响应数据的presample预测,和治疗过去20作为抵抗样本观察。

idx0 = 1:10 0;idx1 = 101:120;y0 = y (idx0);日元= y (idx1);

计算1 -通过20-step-ahead最佳点的预测模型。

yf1 =预测(Mdl, y0, 20);

yf2是一个20-by-1向量的最佳预测。

计算1 -通过20-step-ahead蒙特卡罗点预测回归估计预测误差方差。

[yf2, estVar] =预测(Mdl, y0, 20);

yf2是一个20-by-1向量蒙特卡罗点预测。estVAR是一个20-by-1向量相应的估计预测误差方差。

画出模拟响应数据,预测,使用蒙特卡罗估计,95%的预测区间。

图保存情节(idx0 y0,“b”);h =情节(idx1, y1,“b——”);h1 =情节(idx1, yf1,“r”);h2 =情节(idx1, yf2,“米”);ciu = yf2 + 1.96 * sqrt (estVar);%上95%置信水平cil = yf2 - 1.96 * sqrt (estVar);%降低95%置信水平情节(idx1, ciu,“m -”。);情节(idx1, cil,“m -”。);yfill = [ylim fliplr (ylim)];xfill = [idx0(结束)idx0(结束)idx1(结束)idx1(结束)];填充(xfill yfill,“k”,“FaceAlpha”传说,0.05)([h h1 h2], [“实际”“最佳”“估计”),“位置”,“西北”)标题(“点与区间预测”)举行

图包含一个坐标轴对象。坐标轴对象标题点和区间预测包含7线类型的对象,补丁。这些对象代表实际、最优估计。

预测估计预测和相应的预测误差方差进行蒙特卡洛模拟。你可以调整样本通过指定路径的数量“NumPaths”名称-值对的论点。考虑到模型中计算最优点预测

创建指定的完全经建会动态回归模型。

P = [0.9 - 0.1;0.3 - 0.7);mc = dtmc (P,“StateNames”,(“扩张”“衰退”]);mdl1 = arima (“不变”5,基于“增大化现实”技术的(0.3 - 0.2),“方差”2);mdl2 = arima (“不变”5,基于“增大化现实”技术的,0.1,“方差”1);mdl = [mdl1;mdl2];Mdl = msVAR (mc, Mdl);

文章还从模拟100次观测结果。

rng (10);%的再现性y =模拟(Mdl, 100);

计算1 -通过20-step-ahead蒙特卡罗点预测回归估计预测误差方差。指定1000样本路径的蒙特卡罗模拟。治疗观察y作为presample预测。

(yf, estVar) =预测(Mdl, y, 20日“NumPaths”,1000);

yf是一个20-by-1向量蒙特卡罗点预测。estVAR是一个20-by-1向量相应的估计预测误差方差。

考虑两国经建会动态回归模型的战后美国实际GDP增长率。模型中给出的参数估计[1]

创建经建会动态回归模型

创建一个完全指定的离散时间马尔可夫链模型,描述了政权转换机制。标签的政权。

P = [0.92 - 0.08;0.26 - 0.74);mc = dtmc (P,“StateNames”,(“扩张”“衰退”]);

创建单独的、完全指定两个政权的AR(0)模型。

σ= 3.34;跨州%同方差的模型mdl1 = arima (“不变”,4.62,“方差”σ^ 2);mdl2 = arima (“不变”,-0.48,“方差”σ^ 2);mdl = [mdl1 mdl2];

创建经建会动态回归模型的转换机制mc针对各州具体情况和子mdl

Mdl = msVAR (mc, Mdl);

Mdl是一个完全指定的msVAR对象。

加载和数据预处理

预测需要观察初始化模型。载入美国GDP数据集。

负载Data_GDP

数据包含我们的季度测量实际GDP在1947 q1 - 2005: Q2。兴趣的时期[1]1947:- 2004:沿。更详细的数据集,输入描述在命令行中。

转换数据的年率系列:

  1. 将数据转换为一个季度评估期内

  2. 按年计算季度利率

qrate = diff(数据(2:230)。/数据(2:229);季度率%arate = 100 * ((1 + qrate)。^ 4 - 1);%折合成年率

转换滴第一次观察到。

美国GDP预测利率

预测模型在12-quarter预测地平线。初始化模型通过提供折合成年率系列。

numPeriods = 12;yf =预测(Mdl arate numPeriods);

yf是一个12-by-1向量模型的预测。yf (j)j提前预测最优点。

图观察到从1980年国内生产总值(GDP)年率与模型预测。

日期= datetime(日期(3:230),“ConvertFrom”,“datenum”,“格式”,“yyyy QQQ”,“场所”,“en_US”);dt1980Q1 = datetime (“1980:Q1”,“InputFormat”,“yyyy QQQ”,“场所”,“en_US”);1980年%我们指定日期格式为:Q1。idx = > = dt1980Q1日期;图;情节(日期(idx) arate (idx),“k”,日期(结束)+ calquarters (1: numPeriods)、yf,“r——”)包含(“年”)ylabel (“国内生产总值(GDP)(折合成年率)”)recessionplot传奇(“观察”,“预测”)

图包含一个坐标轴对象。坐标轴对象包含一年,ylabel GDP(折合成年率)包含6行类型的对象,补丁。这些对象代表观察,预测。

计算最优估计和预测和相应的预测误差协方差矩阵的三态经建会动态回归模型为二维VARX响应过程。这个示例使用任意文章的参数值。

为文章创建完全指定的模型

创建一个三态离散时间马尔可夫链模型切换机制。

P = [10 1 1;1 10 1;1 1 10];mc = dtmc (P);

mc是一个完全指定的dtmc对象。dtmc规范化的行P所以他们总和1

对于每一个政权,使用varm创建一个VAR模型,描述了政权内的响应过程。指定所有参数值。

%的常量C1 = (1, 1);C2 = (2, 2);C3 = [3; 3);%自回归系数AR1 = {};AR2 = {[0.5 - 0.1;0.5 - 0.5]};AR3 = {(0.25 0;0 0][0 0;0.25 0]};%回归系数Beta1 = (1, 1);Beta2 = (2 2 2; 2);Beta3 = [3 3 3; 3 3 3];%创新协方差Sigma1 = [1 -0.1;-0.1 - 1];Sigma2 = [2 -0.2;-0.2 - 2);Sigma3 = [3 -0.3;-0.3 3];% VARX子mdl1 = varm (“不变”C1,基于“增大化现实”技术的AR1,“β”Beta1,协方差的,Sigma1);mdl2 = varm (“不变”C2,基于“增大化现实”技术的AR2,“β”Beta2,协方差的,Sigma2);mdl3 = varm (“不变”C3,基于“增大化现实”技术的AR3,“β”Beta3,协方差的,Sigma3);mdl = [mdl1;mdl2;mdl3];

mdl包含三个完全指定的varm模型对象。

的文章,创建一个完全指定经建会动态回归模型的切换机制mc和子mdl

Mdl = msVAR (mc, Mdl);

Mdl是一个完全指定的msVAR模型。

预测模型忽略回归组件

如果你不提供外源性数据,模拟预测忽略的回归组件的子。预测需要足够的数据预测地平线之前初始化模型。文章还从模拟120次观测结果。

rng (“默认”);%的再现性Y =模拟(Mdl, 120);

Y是由- 120 - 2的矩阵模拟响应。行对应的时间点,和列对应于系统中的变量。

治疗的第一个100年观测模拟响应数据的presample预测,和治疗过去20作为抵抗样本观察。

idx0 = 1:10 0;idx1 = 101:120;Y0 = Y (idx0:);%的预测样本日元= Y (idx1,:);%抵抗样本

计算1 -通过20-step-ahead最优估计点的预测模型。计算预测误差协方差矩阵的估计预测。

YF1 =预测(Mdl, Y0, 20);[YF2, EstCov] =预测(Mdl, Y0, 20);

YF1YF2分别20-by-2矩阵的最优估计和预测。EstCov是一个2-by-2-by-20预测误差协方差的数组。

提取每个时期每个响应的预测误差方差的预测地平线。

estVar1 (,) = EstCov (1 1:);estVar2 (,) = EstCov (2 2:);

estVar1estVar2是预测误差方差的1-by-20向量。

图数据,预测,95%的预测区间的每个变量在不同的次要情节。

图次要情节(2,1,1)情节(idx0 Y0 (: 1),“b”);h =情节(idx1, Y1 (: 1),“b——”);h1 =情节(idx1, YF1 (: 1),“r”);h2 =情节(idx1, YF2 (: 1),“米”);ciu = YF2 (: 1) + 1.96 * sqrt (estVar1 ');%上95%置信水平cil = YF2 (: 1) - 1.96 * sqrt (estVar1 ');%降低95%置信水平情节(idx1, ciu,“m -”。);情节(idx1, cil,“m -”。);yfill = [ylim fliplr (ylim)];xfill = [idx0(结束)idx0(结束)idx1(结束)idx1(结束)];填充(xfill yfill,“k”,“FaceAlpha”传说,0.05)([h h1 h2], [“实际”“最佳”“估计”),“位置”,“西北”)标题(“点与区间预测:系列1”)举行次要情节(2,1,2)情节(idx0 Y0 (:, 2),“b”);h =情节(idx1, Y1 (:, 2),“b——”);h1 =情节(idx1, YF1 (:, 2),“r”);h2 =情节(idx1, YF2 (:, 2),“米”);ciu = YF2 (:, 2) + 1.96 * sqrt (estVar2 ');%上95%置信水平cil = YF2 (:, 2) - 1.96 * sqrt (estVar2 ');%降低95%置信水平情节(idx1, ciu,“m -”。);情节(idx1, cil,“m -”。);yfill = [ylim fliplr (ylim)];xfill = [idx0(结束)idx0(结束)idx1(结束)idx1(结束)];填充(xfill yfill,“k”,“FaceAlpha”传说,0.05)([h h1 h2], [“实际”“最佳”“估计”),“位置”,“西北”)标题(“点与区间预测:系列2”)举行

图包含2轴对象。轴与标题点和区间预测对象1:系列1包含7线类型的对象,补丁。这些对象代表实际、最优估计。轴与标题点和区间预测对象2:系列2包含7线类型的对象,补丁。这些对象代表实际、最优估计。

回归预测模型包括组件

模拟三个解释变量外生数据通过生成120个随机观察的三维标准正态分布。

X = randn (120 3);

文章还从模拟120次观测结果。指定的外生数据回归组件。

rng (“默认”120年)Y =模拟(Mdl,“X”,X);

治疗的第一个100年观测模拟响应和外生的presample数据作为预测,和治疗过去20作为抵抗样本观察。

idx0 = 1:10 0;idx1 = 101:120;Y0 = Y (idx0:);日元= Y (idx1,:);X1 = X (idx1,:);

计算1 -通过20-step-ahead最优估计点的预测模型。计算预测误差协方差矩阵的估计预测。指定回归预测期外生数据组件。

YF1 =预测(Mdl, Y0, 20日“X”X1);[YF2, EstCov] =预测(Mdl, Y0, 20日“X”X1);estVar1 (,) = EstCov (1 1:);estVar2 (,) = EstCov (2 2:);

图数据,预测,95%的预测区间的每个变量在不同的次要情节。

图次要情节(2,1,1)情节(idx0 Y0 (: 1),“b”);h =情节(idx1, Y1 (: 1),“b——”);h1 =情节(idx1, YF1 (: 1),“r”);h2 =情节(idx1, YF2 (: 1),“米”);ciu = YF2 (: 1) + 1.96 * sqrt (estVar1 ');%上95%置信水平cil = YF2 (: 1) - 1.96 * sqrt (estVar1 ');%降低95%置信水平情节(idx1, ciu,“m -”。);情节(idx1, cil,“m -”。);yfill = [ylim fliplr (ylim)];xfill = [idx0(结束)idx0(结束)idx1(结束)idx1(结束)];填充(xfill yfill,“k”,“FaceAlpha”传说,0.05)([h h1 h2], [“实际”“最佳”“估计”),“位置”,“西北”)标题(“点与区间预测:系列1”)举行次要情节(2,1,2)情节(idx0 Y0 (:, 2),“b”);h =情节(idx1, Y1 (:, 2),“b——”);h1 =情节(idx1, YF1 (:, 2),“r”);h2 =情节(idx1, YF2 (:, 2),“米”);ciu = YF2 (:, 2) + 1.96 * sqrt (estVar2 ');%上95%置信水平cil = YF2 (:, 2) - 1.96 * sqrt (estVar2 ');%降低95%置信水平情节(idx1, ciu,“m -”。);情节(idx1, cil,“m -”。);yfill = [ylim fliplr (ylim)];xfill = [idx0(结束)idx0(结束)idx1(结束)idx1(结束)];填充(xfill yfill,“k”,“FaceAlpha”传说,0.05)([h h1 h2], [“实际”“最佳”“估计”),“位置”,“西北”)标题(“点与区间预测:系列2”)举行

图包含2轴对象。轴与标题点和区间预测对象1:系列1包含7线类型的对象,补丁。这些对象代表实际、最优估计。轴与标题点和区间预测对象2:系列2包含7线类型的对象,补丁。这些对象代表实际、最优估计。

输入参数

全部折叠

完全指定经建会动态回归模型,指定为一个msVAR模型对象返回的msVAR估计。属性指定的一个完整的模型对象不包含值。

响应数据,提供初始值的预测,作为一个指定numObs——- - - - - -numSeries数字矩阵。

numObs是样本容量。numSeries响应变量的数量(Mdl.NumSeries)。

行对应于观测,最后一行包含最新的观测。列对应单个响应变量。

预测YF代表的延续Y

数据类型:

预测地平线,或时间点在预测期的数量,指定为一个正整数。

数据类型:

名称-值参数

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

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

例子:“X”, X使用矩阵X作为外生的数据预测地平线评价回归模型中的组件。

初始状态概率的预测,指定为逗号分隔组成的“S0”和一个非负数字向量的长度numStatesS0对应的响应数据样本Y

预测规范化S0产生一个分布。

默认情况下,预测适用于光滑的Y使用默认设置,然后设置S0州的终端分布数据。

例子:“S0”, 0.2 0.2 0.6

例子:“S0”, [0 1]指定状态2为初始状态。

数据类型:

预测的数据预测地平线用来评估回归的所有的子组件Mdl,指定为逗号分隔两人组成的“X”细胞和一个数字矩阵或向量的数值矩阵。第一行的X包含观察后的一段时间内,由最后一个观察Y

使用相同的一个子集预测在每个州,指定X作为一个矩阵numPreds列,至少numPeriods行。列对应不同的预测变量。子用关联矩阵的列,在秩序,子模型预测的数量。列的数量β的属性Mdl.SubModels (j)确定的外生变量回归组件的子模型j。如果超过的行数numPeriods,然后预测使用最早的观察。

使用不同的预测在每个州,指定一个细胞这样的矩阵和向量numStates

默认情况下,预测忽略了回归组件Mdl

数据类型:

数量的样本路径生成的模拟,指定为逗号分隔组成的“NumPaths”和一个正整数。如果预测只返回YF,它忽略了NumPaths

例子:“NumPaths”, 1000年

数据类型:

输出参数

全部折叠

点预测,作为一个返回numPeriods——- - - - - -numSeries数字矩阵。

如果预测只返回YF,然后点预测最优。否则,预测采用蒙特卡罗模拟来评估预测。

预测误差协方差,作为一个数字列向量或数值数组返回。

如果子Mdl.SubModels代表一元ARX模型,EstCov是一个numPeriods1的向量。如果Mdl.SubModels代表多元VARX模型,EstCov是一个numSeries——- - - - - -numSeries——- - - - - -numPeriods数组中。

预测执行蒙特卡罗模拟计算EstCov

算法

汉密尔顿[2]提供了统计最优,领先一步预测YF经建会动态回归模型。预测计算YF迭代预测地平线时,称为单一输出。经建会动态回归模型的非线性导致非正规的预测错误,这使间隔和密度预测[3]。作为一个结果,预测它返回时切换到蒙特卡洛方法EstCov

引用

[1]萧韦,M。,和J. D. Hamilton. "Dating Business Cycle Turning Points." In商业周期的非线性分析(276年对经济分析的贡献,体积)。(c .米拉·罗斯曼和d·冯·eds)。阿姆斯特丹:翡翠集团出版有限公司,2006年。

[2]汉密尔顿,j . D。“分析的时间序列的变化机制。”计量经济学杂志。45卷,1990年,页39 - 70。

[3]Krolzig,小时。经建会向量自回归。柏林:施普林格出版社,1997年。

版本历史

介绍了R2019b

另请参阅

对象

功能