В этом примере показано, как моделировать модель условного отклонения с помощью simulate.
Загрузите данные валютного курса Deutschmark/British pound, включенные в набор инструментов, и преобразуйте их в доходность. Укажите и поместите модель GARCH (1,1 ).
load Data_MarkPound
r = price2ret(Data);
T = length(r);
Mdl = garch(1,1);
EstMdl = estimate(Mdl,r);
GARCH(1,1) Conditional Variance Model (Gaussian Distribution):
Value StandardError TStatistic PValue
__________ _____________ __________ __________
Constant 1.0535e-06 3.5048e-07 3.0058 0.0026487
GARCH{1} 0.80657 0.01291 62.478 0
ARCH{1} 0.15436 0.011574 13.336 1.4293e-40
v0 = infer(EstMdl,r);
Используйте подобранную модель для моделирования 25 реализаций доходности валютного курса и условных отклонений за 1000-периодный горизонт прогноза. Используйте наблюдаемые возвращаемые и выводимые условные отклонения в качестве предварительных инноваций и отклонений соответственно.
rng default; % For reproducibility [V,Y] = simulate(EstMdl,1000,'NumPaths',25,... 'E0',r,'V0',v0); figure subplot(2,1,1) plot(v0) hold on plot(T+1:T+1000,V) xlim([0,T+1000]) title('Conditional Variances') hold off subplot(2,1,2) plot(r) hold on plot(T+1:T+1000,Y) xlim([0,T+1000]) title('Returns') hold off

Используйте моделирование для создания прогнозируемого распределения прибыли от иностранной валюты в течение 500 дней в будущем. Создайте 1000 путей выборки для оценки распределения.
rng default; % For reproducibility [V,Y] = simulate(EstMdl,500,'NumPaths',1000,... 'E0',r-EstMdl.Offset,'V0',v0); figure histogram(Y(500,:),10) title('Return Distribution in 500 Days')
