主要内容

指定预测前样本和预测周期数据来预测ARIMAX模型

该示例示出了如何将时间线划分成样品前体,估计和预测期间,它显示了如何提供观测的适当数量来初始化估计和预测的动态模型。

考虑估计和预测一个包含自回归和移动平均项的动态模型,以及外生预测变量的回归组件(例如,ARMAX模型)。为了估计和预测模型,估计必须有足够的样品前应对初始化自回归条件,并且必须具有足够的创新初始化均线条款。如果不指定样品前体的反应,然后估计返回所需的数量,并将所需的前样例创新设置为0。

同样,从拟合模型预测的响应,预测必须有足够的反应样本和创新。虽然您必须指定前样本响应,但预测集所需的前样本创新为0。此外,预测期的回归分量需要预测或未来的预测数据;没有未来预测数据,预测当模型生成预测时,将回归组件从模型中删除。

虽然默认行为估计预测对于大多数工作流程来说都是合理的,一个好的实践是通过将样本的时间轴划分为样本前、估计和预测周期,并提供适当数量的观察来初始化模型。

考虑一个ARMAX(1,2)模型,该模型预测当前美国实际国民生产总值(GNPR),以现时工业生产指数(新闻学会),就业(E)及实际工资(或者说是)作为外生变量。将样本的时间线划分为预样本期、估计期和预测期。将模型拟合到估计样本,并使用样本前的响应初始化自回归项。然后,预测GNPR速率从拟合模型。当你预测:

  • 在估计周期结束时指定响应作为初始化自回归项的预样本

  • 在估计周期结束时指定预测器数据作为初始化移动平均分量的前样例。预测推断从指定的样品前体反应和预测数据所需要的创新。

  • 通过指定未来预测数据,包括预测变量对预测响应的影响。

加载Nelson-Plosser数据集。

负载Data_NelsonPlosser

关于数据集的详细信息,显示描述

数据表包含每年的测量,但数据集是不可知的时间基准。时基应用于数据,转换数据表一个时间表。

数据表= table2timetable(数据表,“RowTimes”datetime(数据表。日期,“格式”“YYYY”));

在该系列数据表,有些样本的开始日期开始于不同的年份。数据表通过前置足够的导序同步所有系列如此的所有系列具有相同数目的元素。

计量经济学工具箱™ARIMA模型软件去除如果至少一个观察缺少响应和预测数据的所有行(时间点)。此默认行为可以变得复杂时间表分区。避免默认行为的一种方法是删除包含自己至少一个缺失值的所有行。

删除所有主要■从通过应用列表删除的数据。

varnames = [“GNPR”“IPI”“E”“WR”];TBL = rmmissing(数据表(:,varnames));

将它们转换为收益稳定的响应和预测变量。

StblTbl = varfun (@price2ret(资源);StblTbl.Properties.VariableNames = varnames;T =大小(StblTbl, 1)%总样本量
T = 61
GNPR = StblTbl.GNPR;X = StblTbl {: varnames(2:结束)};

转换到返回值将样本量减少1。

为了对数据拟合一个ARMAX(1,2)模型,估计必须初始化第一个响应的条件均值 y 1 通过使用前面的响应 y 0 以及之前的两个创新 ε. 0 ε. - 1 .如果不指定样品前值,估计backcasts获得 y 0 它集样品前创新为0,这是他们的期望值。

对样品前,估计和预测样本创建索引矢量。考虑了5年的预测期内。

idxpresample = 1;idxestimate = 2:56;idxforecast = 57: T;

适合的ARMAX(1,2)模型的数据。指定样品前体响应数据和估计样本外生数据。因为没有模型用以推导样品前体的创新,允许估计设置所需的样品前创新,0

Mdl = arima (1 0 2);y0 = GNPR (idxpresample);用于估计的%样品前体响应数据是的= GNPR (idxestimate);%估计响应数据X = X (idxestimate:);%估算样品外生数据Mdl =估计(Mdl,是的,“Y0”,y0est,'X',XEst,'展示''离开');

为了将ARMAX(1,2)模型预测到预测期,预测必须初始化第一个预测 y 57 通过使用前面的响应 y 56 与前两个创新 ε. 56 ε. 55 .不过,如果你提供足够的响应和外生数据初始化模式,那么预测推断创新为您服务。预测一个ARMAX(1,2)模型,预测只需要预测期间之前,从所述外源数据的三个响应和两个观察。当您预测提供样品前的数据,预测只使用所需的最新观测结果。然而,本例仅指定必要的样本前观察量。

预测嵌合ARMAX(1,2)到模型预测期。在估计样本作为样品前体数据的结束仅指定必要观测。指定预测期外生数据。

Y0f = yes ((end - 2):end); / /结束%预采样响应数据进行预测X0f = XEst(((end - 1):end,:));%预取样外生数据进行预测XF = X(idxforecast,:);%模型回归组件的预测期外生数据YF =预测(MDL,5,Y0F,“X0”,X0F,'XF'、XF);

YF预测响应的5乘1向量是否表示估计样本的延续是的进入预测期。

绘制后半部分的响应数据和预测。

年=年(StblTbl.Time(30:端));数字;情节(年,StblTbl.GNPR(30:结束),“B”“行宽”,2);抓住情节(年(端4:结束),YF,“R--”“行宽”,2);H = GCA;PX =岁([端 -  4端结束端 -  4]);PY = h.YLim([1 1 2 2]);马力=补丁(PX,PY,[0.9 0.9 0.9]);uistack(HP,“底部”);轴紧的标题(“实际国民生产总值率”);传奇([“预测期”“观察到的”“预测”])

图包含轴对象。与标题实际GNP率轴对象包含型贴剂,线的3个对象。这些对象代表预测期内,观察,预测。

另请参阅

对象

功能

相关话题