指定预采样和预测期数据以预测ARIMAX模型

此示例显示如何将时间线划分为预采样、估计和预测时段,并显示如何提供适当数量的观测值以初始化用于估计和预测的动态模型。

考虑包含自回归和移动平均项的动态模型的估计和预测,以及外生预测变量(例如ARMAX模型)的回归分量。估计必须有足够的预采样响应来初始化自回归项,并且必须有足够的创新来初始化移动平均项。如果未指定采样前响应,则估计所需数量的回溯,并将所需的采样前创新设置为0。

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

虽然估计预测对于大多数工作流来说都是合理的,一个好的做法是通过将样本的时间线划分为预采样、估计和预测时段,并提供适当数量的观察值,自己初始化模型。

考虑ARMAX(1,2)模型,预测美国当前的实际国民生产总值(GDP)GNPR)与当前工业生产指数的比率(IPI),就业(E),以及实际工资(西铁)将速率作为外生变量。将样本的时间线划分为预采样、估计和预测时段。将模型与估计样本相匹配,并使用预采样响应初始化自回归项。然后,预测GNPR根据已安装型号进行费率计算。预测时:

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

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

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

加载Nelson Plosser数据集。

负载数据采集器

有关数据集的详细信息,请显示描述.

桌子数据表包含年度测量值,但数据集与时基无关。若要将时基应用于数据,请转换数据表根据时间表。

DataTable=table2timetable(DataTable,“划船次数”,datetime(DataTable.Dates,“格式”,“yyyy”));

在系列中数据表,一些示例开始日期开始于不同的年份。数据表通过预先设置足够的前导来同步所有序列使所有系列具有相同数量的元素。

计量经济学工具箱™ 如果至少缺少一个观测值,ARIMA模型软件将从响应和预测数据中删除所有行(时间点)。此默认行为会使时间轴分区复杂化。避免默认行为的一种方法是删除包含至少一个缺少值的所有行。

移除所有引线通过应用列表删除从数据中删除。

变量名=[“GNPR”“IPI”“E”“WR”];Tbl=rmmissing(DataTable(:,varnames));

通过将响应和预测变量转换为回报来稳定它们。

StblTbl=varfun(@price2ret,Tbl);StblTbl.Properties.VariableNames=varnames;T=size(StblTbl,1)%总样本量
T=61
GNPR=StblTbl.GNPR;X=StblTbl{:,varnames(2:end)};

转换为返回值会将样本大小减少1。

要将ARMAX(1,2)模型拟合到数据,估计必须初始化第一个响应的条件平均值 Y 1. 通过使用前面的响应 Y 0 以及之前的两项创新 ε 0 ε - 1. 。如果未指定预采样值,估计要获得的回溯 Y 0 它将采样前创新设置为0,这是它们的预期值。

为预置、估计和预测样本创建索引向量,考虑5年的预测范围。

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

将ARMAX(1,2)模型拟合到数据。指定采样前响应数据和估计样本外部数据。因为没有模型可以从中得出样本前创新,所以允许估计将所需的采样前创新设置为0.

Mdl=arima(1,0,2);y0est=GNPR(idxpresample);%用于估计的预采样响应数据yest=GNPR(idxestimate);%用于估算的响应数据XEst=X(idxestimate,:);%估计样本外生数据Mdl=估计值(Mdl,是,“Y0”,y0est,“X”,XEst,“显示”,“关”);

要在预测期内预测ARMAX(1,2)模型,预测必须初始化第一个预测 Y 57 通过使用前面的响应 Y 56 以及前两项创新 ε 56 ε 55 。但是,如果您提供足够的响应和外部数据来初始化模型,则预测为您推断创新。要预测ARMAX(1,2)模型,预测需要在预测期之前从外部数据中获得三个响应和两个观察值。当您提供用于预测的样本前数据时,预测仅使用所需的最新观测值。但是,本例仅指定必要的采样前观测值。

将拟合的ARMAX(1,2)模型预测到预测期。仅在估计样本末尾指定必要的观测值作为预样本数据。指定预测期外部数据。

y0f=是((结束-2):结束);%用于预测的预采样响应数据X0f=XEst((end-1):end,:);%用于预测的预采样外生数据XF=X(idxforecast,:);%模型回归组件的预测期外部数据yf=预测(Mdl,5,y0f,“X0”,X0f,“XF”,XF);

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

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

年=年(标准时间(30:end));图形地块(年、标准地块GNPR(30:end),“b”,“线宽”,2);保持在…上绘图(yrs(结束-4:end),yf,“r——”,“线宽”,2); h=gca;px=年([end-4 end-4]);py=h.YLim([1 2]);hp=贴片(px,py,[0.9 0.9 0.9]);尤斯塔克(惠普),“底部”);轴线牢固的头衔(“实际国民生产总值率”); 传奇([“预测期”“观察到”“预测”])

另见

||

相关话题