В этом примере показано, как прогнозировать модель условного отклонения с помощью forecast.
Загрузите данные валютного курса Deutschmark/British pound, включенные в набор инструментов, и преобразуйте их в доходность. Для стабильности числовых значений преобразуйте возвращаемые значения в процентные возвращаемые значения.
load Data_MarkPound
r = price2ret(Data);
pR = 100*r;
T = length(r);Укажите и поместите модель GARCH (1,1).
Mdl = garch(1,1); EstMdl = estimate(Mdl,pR);
GARCH(1,1) Conditional Variance Model (Gaussian Distribution):
Value StandardError TStatistic PValue
________ _____________ __________ __________
Constant 0.010868 0.0012972 8.3779 5.3898e-17
GARCH{1} 0.80452 0.016038 50.162 0
ARCH{1} 0.15432 0.013852 11.141 7.9447e-29
Для создания прогнозов MMSE на 200-периодном горизонте используется соответствующая модель. Используйте наблюдаемую серию возврата в качестве данных предварительной выборки. По умолчанию forecast выводит соответствующие условные отклонения предварительной выборки. Сравните асимптоту прогноза дисперсии с теоретической безусловной дисперсией модели GARCH (1,1 ).
v = forecast(EstMdl,200,pR);
sig2 = EstMdl.Constant/(1-EstMdl.GARCH{1}-EstMdl.ARCH{1});
figure
plot(v,'r','LineWidth',2)
hold on
plot(ones(200,1)*sig2,'k--','LineWidth',1.5)
xlim([0,200])
title('Forecast Conditional Variance')
legend('Forecast','Theoretical','Location','SouthEast')
hold off
Прогнозы MMSE сходятся к теоретической безусловной дисперсии примерно после 160 шагов.