forecast

Прогнозируйте условные отклонения от моделей условных дисперсий

Описание

пример

V = forecast(Mdl,numperiods,Y0) возвращает numperiods последовательные прогнозируемые условные отклонения V полностью заданной одномерной модели условного отклонения Mdl. Модель Mdl может быть garch, egarch, или gjr объект модели. Предварительный образец данных отклика Y0 инициализирует модель, чтобы сгенерировать прогнозы.

пример

V = forecast(Mdl,numperiods,Y0,Name,Value) генерирует прогнозы с дополнительными опциями, заданными одним или несколькими аргументами пары "имя-значение". Для примера можно инициализировать модель путем определения предварительной выборки условных отклонений.

Примеры

свернуть все

Прогнозируйте условное отклонение моделируемых данных по 30-периодическому горизонту.

Симулируйте 100 наблюдений из модели GARCH (1,1) с известными параметрами .

Mdl = garch('Constant',0.02,'GARCH',0.8,'ARCH',0.1);
rng default; % For reproducibility
[v,y] = simulate(Mdl,100);

Прогнозируйте условные отклонения по 30-периодическому горизонту с использованием моделируемых данных и без них в качестве предварительных примеров инноваций. Постройте график прогнозов.

vF1 = forecast(Mdl,30,'Y0',y);
vF2 = forecast(Mdl,30);

figure
plot(v,'Color',[.7,.7,.7])
hold on
plot(101:130,vF1,'r','LineWidth',2);
plot(101:130,vF2,':','LineWidth',2);
title('Forecasted Conditional Variances')
legend('Observed','Forecasts with Presamples',...
		'Forecasts without Presamples','Location','NorthEast')
hold off

Figure contains an axes. The axes with title Forecasted Conditional Variances contains 3 objects of type line. These objects represent Observed, Forecasts with Presamples, Forecasts without Presamples.

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

Прогнозируйте условное отклонение моделируемых данных по 30-периодическому горизонту.

Симулируйте 100 наблюдений из модели EGARCH (1,1) с известными параметрами .

Mdl = egarch('Constant',0.01,'GARCH',0.6,'ARCH',0.2,...
            'Leverage',-0.2);
rng default; % For reproducibility
[v,y] = simulate(Mdl,100);

Прогнозируйте условное отклонение по 30-периодическому горизонту с использованием моделируемых данных и без их использования в качестве предварительного образца инноваций. Постройте график прогнозов.

Vf1 = forecast(Mdl,30,y);
Vf2 = forecast(Mdl,30);

figure
plot(v,'Color',[.7,.7,.7])
hold on
plot(101:130,Vf1,'r','LineWidth',2);
plot(101:130,Vf2,':','LineWidth',2);
title('Forecasted Conditional Variances')
legend('Observed','Forecasts with Presamples',...
		'Forecasts without Presamples','Location','NorthEast')
hold off

Figure contains an axes. The axes with title Forecasted Conditional Variances contains 3 objects of type line. These objects represent Observed, Forecasts with Presamples, Forecasts without Presamples.

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

Прогнозируйте условное отклонение моделируемых данных по 30-периодическому горизонту.

Симулируйте 100 наблюдений из модели GJR (1,1) с известными параметрами .

Mdl = gjr('Constant',0.01,'GARCH',0.6,'ARCH',0.2,...
    'Leverage',0.2);
rng default; % For reproducibility
[v,y] = simulate(Mdl,100);

Прогнозируйте условные отклонения по 30-периодическому горизонту с использованием моделируемых данных и без них в качестве предварительных примеров инноваций. Постройте график прогнозов.

vF1 = forecast(Mdl,30,'Y0',y);
vF2 = forecast(Mdl,30);

figure
plot(v,'Color',[.7,.7,.7])
hold on
plot(101:130,vF1,'r','LineWidth',2);
plot(101:130,vF2,':','LineWidth',2);
title('Forecasted Conditional Variances')
legend('Observed','Forecasts with Presamples',...
		'Forecasts without Presamples','Location','NorthEast')
hold off

Figure contains an axes. The axes with title Forecasted Conditional Variances contains 3 objects of type line. These objects represent Observed, Forecasts with Presamples, Forecasts without Presamples.

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

Прогнозируйте условное отклонение композитного индекса NASDAQ возвратов на 500-дневном горизонте с помощью моделей GARCH (1,1), EGARCH (1,1) и GJR (1,1).

Загрузите данные NASDAQ, включенные в тулбокс. Преобразуйте индекс в возвраты. Постройте график возвратов.

load Data_EquityIdx
nasdaq = DataTable.NASDAQ;
r = price2ret(nasdaq);
T = length(r);  
meanR = mean(r)
meanR = 4.7771e-04
figure;
plot(dates(2:end),r,dates(2:end),meanR*ones(T,1),'--r');
datetick;
title('Daily NASDAQ Returns');
xlabel('Day');
ylabel('Return');

Figure contains an axes. The axes with title Daily NASDAQ Returns contains 2 objects of type line.

Отклонение ряда, кажется, меняется. Это изменение является показателем кластеризации волатильности. Условное среднее смещение модели очень близко к нулю.

Подгонка моделей GARCH (1,1), EGARCH (1,1) и GJR (1,1) к данным. По умолчанию программа устанавливает условное среднее смещение модели в нуль.

MdlGARCH = garch(1,1);
MdlEGARCH = egarch(1,1);
MdlGJR = gjr(1,1);

EstMdlGARCH = estimate(MdlGARCH,r);  
 
    GARCH(1,1) Conditional Variance Model (Gaussian Distribution):
 
                  Value       StandardError    TStatistic      PValue  
                __________    _____________    __________    __________

    Constant    2.0101e-06     5.4314e-07        3.7008       0.0002149
    GARCH{1}        0.8833      0.0084528         104.5               0
    ARCH{1}        0.10919       0.007662        14.251      4.4112e-46
EstMdlEGARCH = estimate(MdlEGARCH,r);  
 
    EGARCH(1,1) Conditional Variance Model (Gaussian Distribution):
 
                     Value      StandardError    TStatistic      PValue  
                   _________    _____________    __________    __________

    Constant        -0.13494       0.022096       -6.1073      1.0134e-09
    GARCH{1}         0.98389      0.0024225        406.15               0
    ARCH{1}          0.19964       0.013964        14.297      2.2804e-46
    Leverage{1}    -0.060242       0.005646        -10.67      1.4065e-26
EstMdlGJR = estimate(MdlGJR,r);
 
    GJR(1,1) Conditional Variance Model (Gaussian Distribution):
 
                     Value       StandardError    TStatistic      PValue  
                   __________    _____________    __________    __________

    Constant       2.4568e-06     5.6828e-07        4.3231      1.5385e-05
    GARCH{1}          0.88144       0.009478        92.998               0
    ARCH{1}           0.06394      0.0091771        6.9674      3.2293e-12
    Leverage{1}      0.088909      0.0099025        8.9784      2.7468e-19

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

vFGARCH = forecast(EstMdlGARCH,500,r);  
vFEGARCH = forecast(EstMdlEGARCH,500,r);  
vFGJR= forecast(EstMdlGJR,500,r);

Постройте график прогнозов вместе с условными отклонениями, выведенными из данных.

vGARCH = infer(EstMdlGARCH,r);
vEGARCH = infer(EstMdlEGARCH,r);
vGJR = infer(EstMdlGJR,r);
datesFH = dates(end):(dates(end)+1000); % 1000 period forecast horizon

figure;
subplot(3,1,1);
plot(dates(end-250:end),vGARCH(end-250:end),'b',...
    datesFH(2:end-500),vFGARCH,'b--');
legend('Inferred','Forecast','Location','NorthEast');
title('GARCH(1,1) Conditional Variances');
datetick;
axis tight;
subplot(3,1,2);
plot(dates(end-250:end),vEGARCH(end-250:end),'r',...
    datesFH(2:end-500),vFEGARCH,'r--');
legend('Inferred','Forecast','Location','NorthEast');
title('EGARCH(1,1) Conditional Variances');
datetick;
axis tight;

subplot(3,1,3);
plot(dates(end-250:end),vGJR(end-250:end),'k',...
    datesFH(2:end-500),vFGJR,'k--');
legend('Inferred','Forecast','Location','NorthEast');
title('GJR(1,1) Conditional Variances');
datetick;
axis tight;

Figure contains 3 axes. Axes 1 with title GARCH(1,1) Conditional Variances contains 2 objects of type line. These objects represent Inferred, Forecast. Axes 2 with title EGARCH(1,1) Conditional Variances contains 2 objects of type line. These objects represent Inferred, Forecast. Axes 3 with title GJR(1,1) Conditional Variances contains 2 objects of type line. These objects represent Inferred, Forecast.

Постройте прогнозы условных отклонений на 1000 дней.

vF1000GARCH = forecast(EstMdlGARCH,1000,r);
vF1000EGARCH = forecast(EstMdlEGARCH,1000,r);
vF1000GJR = forecast(EstMdlGJR,1000,r);

figure;
plot(datesFH(2:end),vF1000GARCH,'b',...
    datesFH(2:end),vF1000EGARCH,'r',...
    datesFH(2:end),vF1000GJR,'k');
legend('GARCH','EGARCH','GJR','Location','NorthEast');
title('Conditional Variance Forecast Asymptote')    
datetick;

Figure contains an axes. The axes with title Conditional Variance Forecast Asymptote contains 3 objects of type line. These objects represent GARCH, EGARCH, GJR.

Прогнозы сходятся асимптотически к безусловным отклонениям их соответствующих процессов.

Входные параметры

свернуть все

Модель условного отклонения без каких-либо неизвестных параметров, заданная как garch, egarch, или gjr объект модели.

Mdl не может содержать никаких свойств, имеющих NaN значение.

Горизонт прогноза или количество временных точек в прогнозном периоде, заданное в виде положительного целого числа.

Типы данных: double

Предварительный образец данных отклика, используемых для вывода предварительных примеров инноваций E0, и условное отклонение которого прогнозируется , задается в виде числового вектора-столбца с длиной numpreobs или numpreobs-by- numpaths числовая матрица.

Y0 может представлять серию нововведений среднего значения 0 с процессом отклонения, характеризующимся моделью условного отклонения Mdl. Y0 может также представлять ряд предварительных примеров инноваций плюс смещение (сохранено в Mdl.Offset). Для получения дополнительной информации см. «Алгоритмы».

Строки Y0 соответствуют периодам в предварительной выборке, а последняя строка содержит последний ответ предварительного образца. numpreobs количество заданных откликов presample и должно быть как минимум Mdl.Q чтобы инициализировать отклонение. Если numpreobs превышает Mdl.Q, forecast использует только последние Mdl.Q строки. Для получения дополнительной информации см. Раздел основы времени для прогнозирования.

Столбцы Y0 соответствуют отдельным, независимым путям.

  • Если Y0 является вектор-столбец, forecast применяет его к каждому прогнозируемому пути. В этом случае все пути прогноза Y получают из тех же первоначальных ответов.

  • Если Y0 является матрицей, она должна иметь numpaths столбцы, где numpaths является максимальным среди вторых измерений заданных массивов наблюдений предварительного образца Y0 и V0.

Типы данных: double

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'V0',[1 0.5;1 0.5] задает два различных пути предварительного образца условных отклонений.

Предварительная выборка условных отклонений, используемых для инициализации модели условных отклонений, заданный как разделенная разделенными запятой парами, состоящая из 'V0' и числовой вектор-столбец или матрицу с положительными значениями и numpaths столбцы.

Строки V0 соответствуют периодам в предварительной выборке, а последняя строка содержит последнее предварительное условное отклонение.

  • Для моделей GARCH (P, Q) и GJR (P, Q), V0 должно иметь по крайней мере Mdl.P строки для инициализации уравнения отклонения.

  • Для моделей EGARCH (P, Q), V0 должно иметь по крайней мере max([Mdl.P Mdl.Q]) строки для инициализации уравнения отклонения.

Если количество строк превышает минимальное, то forecast использует только последние наблюдения.

Столбцы V0 соответствуют отдельным, независимым путям.

  • Если V0 является вектор-столбец, forecast применяет его к каждому прогнозируемому пути. В этом случае модель условного отклонения всех путей прогноза Y выводится из тех же начальных условных отклонений.

  • Если V0 является матрицей, она должна иметь numpaths столбцы.

  • По умолчанию, если Y0 имеет не менее (P, Q) + P строк, forecast выводит любые необходимые предварительные условные отклонения путем прохождения Mdl и Y0 кому infer.

  • По умолчанию, если Y0 имеет недостаточную длину:

    • Для моделей GARCH (P, Q) и GJR (P, Q), forecast устанавливает любые необходимые предварительные условные отклонения в безусловное отклонение процесса условного отклонения.

    • Для моделей EGARCH (P, Q), forecast устанавливают любой необходимый перед выборкой условные отклонения в экспоненциальное, безусловное среднее значение логарифма процесса EGARCH (P, Q) отклонению.

Типы данных: double

Примечание

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

Выходные аргументы

свернуть все

Прогнозы минимальной средней квадратной ошибки ( MMSE) условных отклонений будущих инноваций модели, возвращенные как числовой вектор-столбец с длиной numperiods или numperiods-by- numpaths числовая матрица. V представляет собой продолжение V0 (V(1,:) происходит в следующую временную точку после V0(end,:)).

V (j, k) содержит j-период прогнозируемое условное отклонение пути k.

forecast определяет numpaths от количества столбцов в предварительных наборах данных Y0 и V0. Для получения дополнительной информации смотрите Алгоритмы. Если каждый предварительный образец набора данных имеет один столбец, то V является вектор-столбец.

Подробнее о

свернуть все

Временные Основы разделы для прогнозирования

Time base partitions for forecasting являются двумя несвязанными, смежными интервалами временной основы; каждый интервал содержит данные временных рядов для прогнозирования динамической модели. forecast period (горизонт прогноза) является numperiods разбиение длины в конце временной основы, в течение которой forecast генерирует прогнозы V от динамической модели Mdl. Это presample period - весь раздел, возникший до периода прогноза. forecast может потребовать наблюдаемых реакций (или инноваций) Y0 или условные отклонения V0 в периоде предварительного образца для инициализации динамической модели для прогнозирования. Структура модели определяет типы и объемы необходимых предварительных наблюдений.

Общей практикой является подгонка динамической модели к фрагменту набора данных, а затем подтверждение предсказуемости модели путем сравнения ее прогнозов с наблюдаемыми ответами. Во время прогноза период предварительного образца содержит данные, к которым подходит модель, а период прогноза содержит выборку удержания для валидации. Предположим, что yt является наблюдаемой последовательностью откликов. Рассмотрите прогнозирование условных отклонений от динамической модели y t numperiods = K периоды. Предположим, что динамическая модель соответствует данным в интервале [1, T - K] (для получения дополнительной информации см. estimate). Этот рисунок показывает разделы основы времени для прогнозирования.

Для примера, чтобы сгенерировать прогнозы Y из модели GARCH (0,2 ),forecast требует приёма откликов (инноваций) Y0 = [yTK1yTK] для инициализации модели. Прогноз на 1 период вперед требует обоих наблюдений, в то время как прогноз на 2 периода вперед требует y T - K и прогноз на 1 период вперед V(1). forecast генерирует все другие прогнозы путем замены предыдущих прогнозов на отстающие отклики в модели.

Динамические модели, содержащие компонент GARCH, могут потребовать предварительных условных отклонений. Учитывая достаточное количество нажатий, forecast выводит необходимые предварительные условные отклонения. Этот рисунок показывает массивы необходимых наблюдений для этого случая с соответствующими входными и выходными аргументами.

Алгоритмы

  • Если модель условного отклонения Mdl имеет смещение (Mdl.Offset), forecast вычитает его из заданных примитивных характеристик Y0 для получения предварительных примеров инноваций E0. Впоследствии, forecast использует E0 для инициализации модели условного отклонения для прогнозирования.

  • forecast устанавливает количество выборочных путей для прогноза numpaths к максимальному количеству столбцов среди предварительных образцов наборов данных Y0 и V0. Все наборы данных предварительного образца должны иметь numpaths > 1 столбец или один столбец. В противном случае, forecast выдает ошибку. Для примера, если Y0 имеет пять столбцов, представляющих пять путей, затем V0 может иметь пять столбцов или один столбец. Если V0 имеет один столбец, тогда forecast применяется V0 к каждому пути.

  • NaN значения в предпробных наборах данных указывают на отсутствующие данные. forecast удаляет отсутствующие данные из предпробных наборов данных в соответствии с этой процедурой:

    1. forecast горизонтально конкатенирует указанные наборы данных предварительного образца Y0 и V0 таким образом, что последние наблюдения происходят одновременно. Результатом может быть массив с заземлением, потому что предварительный образец наборов данных может иметь разное количество строк. В этом случае, forecast обеспечивает переменные с соответствующим количеством нулей для формирования матрицы.

    2. forecast применяет списковое удаление к комбинированной матрице предварительной выборки путем удаления всех строк, содержащих по крайней мере одну NaN.

    3. forecast извлекает обработанные предварительные наборы данных из результата шага 2 и удаляет все предварительно добавленные нули.

    Список удаления уменьшает размер выборки и может создать неправильные временные ряды.

Вопросы совместимости

расширить все

Ссылки

[1] Боллерслев, Т. «Обобщенная авторегрессивная условная гетероскедастичность». Журнал эконометрики. Том 31, 1986, стр. 307-327.

[2] Боллерслев, Т. «Условно гетероскедастические Временные ряды модель для спекулятивных цен и ставок Возврата». Обзор экономики и статистики. Том 69, 1987, стр. 542-547.

[3] Бокс, Г. Е. П., Г. М. Дженкинс и Г. К. Рейнсел. Анализ временных рядов: прогнозирование и управление. 3-й эд. Englewood Cliffs, Нью-Джерси: Prentice Hall, 1994.

[4] Enders, W. Applied Econometric Time Series. Hoboken, NJ: John Wiley & Sons, 1995.

[5] Engle, R. F. «Авторегрессивная условная гетероскедастичность с оценками отклонения инфляции в Соединенном Королевстве». Эконометрика. Том 50, 1982, с. 987-1007.

[6] Glosten, L. R., R. Jagannathan, and D. E. Runkle. «О связи между Ожидаемым значением и волатильностью номинального избыточного Возврата по акциям». The Journal of Finance. Том 48, № 5, 1993, с. 1779-1801.

[7] Гамильтон, Дж. Д. Анализ временных рядов. Princeton, NJ: Princeton University Press, 1994.

[8] Нельсон, Д. Б. «Условная гетероскедастичность в возвратах активов: новый подход». Эконометрика. Том 59, 1991, с. 347-370.

Введенный в R2012a