Предскажите модель VAR условные ответы

Этот пример показывает, как предсказать условное выражение ответов на текущих значениях других ответов в горизонте прогноза. Проиллюстрировать условное прогнозирование, модели в качестве примера ежеквартальные меры индекса потребительских цен (CPI) и уровня безработицы как модель VAR (4).

Загрузите набор данных Data_USEconModel.

load Data_USEconModel

Постройте два ряда на отдельных графиках.

figure;
plot(DataTable.Time,DataTable.CPIAUCSL);
title('Consumer Price Index');
ylabel('Index');
xlabel('Date');

figure;
plot(DataTable.Time,DataTable.UNRATE);
title('Unemployment Rate');
ylabel('Percent');
xlabel('Date');

CPI, кажется, растет экспоненциально.

Стабилизируйте CPI путем преобразования его в серию темпов роста. Синхронизируйте два ряда путем удаления первого наблюдения из ряда уровня безработицы. Создайте новый набор данных, содержащий преобразованные переменные.

rcpi = price2ret(DataTable.CPIAUCSL);
unrate = DataTable.UNRATE(2:end);
Data = array2timetable([rcpi unrate],'RowTimes',DataTable.Time(2:end),...
    'VariableNames',{'rcpi','unrate'});

Создайте модель VAR (4) по умолчанию с помощью краткого синтаксиса.

Mdl = varm(2,4)
Mdl = 
  varm with properties:

     Description: "2-Dimensional VAR(4) Model"
     SeriesNames: "Y1"  "Y2" 
       NumSeries: 2
               P: 4
        Constant: [2×1 vector of NaNs]
              AR: {2×2 matrices of NaNs} at lags [1 2 3 ... and 1 more]
           Trend: [2×1 vector of zeros]
            Beta: [2×0 matrix]
      Covariance: [2×2 matrix of NaNs]

Mdl является объектом модели varm. Это служит шаблоном для образцовой оценки.

Соответствуйте модели к данным.

EstMdl = estimate(Mdl,Data.Variables)
EstMdl = 
  varm with properties:

     Description: "AR-Stationary 2-Dimensional VAR(4) Model"
     SeriesNames: "Y1"  "Y2" 
       NumSeries: 2
               P: 4
        Constant: [0.00171639 0.316255]'
              AR: {2×2 matrices} at lags [1 2 3 ... and 1 more]
           Trend: [2×1 vector of zeros]
            Beta: [2×0 matrix]
      Covariance: [2×2 matrix]

EstMdl является объектом модели varm. EstMdl является структурно тем же самым как Mdl, но все параметры известны.

Предположим, что экономист ожидает, что уровень безработицы останется то же самое как последний наблюдаемый уровень за следующие два года. Создайте 8 2 матрица, в которой первый столбец содержит значения NaN, и второй столбец содержит последний наблюдаемый уровень безработицы.

YF = [nan(8,1) repmat(Data.unrate(end),8,1)];

Используя предполагаемую модель, прогноз путь ежеквартального темпа роста CPI в течение следующих двух лет. Примите, что уровень безработицы остается то же самое в течение следующих двух лет. Задайте целый набор данных как преддемонстрационные наблюдения и известные значения в горизонте прогноза.

Y = forecast(EstMdl,8,Data.Variables,'YF',YF)
Y = 8×2

   -0.0076    8.5000
   -0.0136    8.5000
   -0.0009    8.5000
   -0.0051    8.5000
   -0.0050    8.5000
   -0.0007    8.5000
   -0.0009    8.5000
    0.0003    8.5000

Y 8 2 массив путей к ответу. Несмотря на то, что первый столбец содержит условные прогнозы, второй столбец состоит полностью из последнего наблюдаемого уровня безработицы.

Учитывая, что уровень безработицы 8.5 в течение следующих двух лет, темп роста CPI, как ожидают, уменьшится.

Смотрите также

Объекты

Функции

Похожие темы