Этот пример показывает, как определить модель условного отклонения для ежедневных курсов иностранных валют Deutschmark/British pound, наблюдаемых с января 1984 года по декабрь 1991 года.
Загрузите данные валютного курса, включенные в тулбокс.
load Data_MarkPound y = Data; T = length(y); figure plot(y) h = gca; h.XTick = [1 659 1318 1975]; h.XTickLabel = {'Jan 1984','Jan 1986','Jan 1988',... 'Jan 1992'}; ylabel 'Exchange Rate'; title 'Deutschmark/British Pound Foreign Exchange Rate';
Валютный курс выглядит нестационарным (он, по-видимому, не колеблется вокруг фиксированного уровня).
Преобразуйте серию в возвраты. Это приводит к потере первого наблюдения.
r = price2ret(y); figure plot(2:T,r) h2 = gca; h2.XTick = [1 659 1318 1975]; h2.XTickLabel = {'Jan 1984','Jan 1986','Jan 1988',... 'Jan 1992'}; ylabel 'Returns'; title 'Deutschmark/British Pound Daily Returns';
Серия возвратов колеблется вокруг общего уровня, но показывает кластеризацию волатильности. Большие изменения в возвратах, как правило, кластеризуются вместе, а небольшие изменения, как правило, кластеризуются вместе. То есть серия проявляет условную гетероскедастичность.
Возвраты имеют относительно высокую частоту. Поэтому ежедневные изменения могут быть небольшими. Для численной устойчивости рекомендуется масштабировать такие данные. В этом случае масштабируйте возвраты до процентных возвратов.
r = 100*r;
Проверьте серию возвратов на автокорреляцию. Постройте график выборки ACF и PACF и проведите Q-тест Ljung-Box.
figure subplot(2,1,1) autocorr(r) subplot(2,1,2) parcorr(r)
[h,p] = lbqtest(r,'Lags',[5 10 15])
h = 1x3 logical array
0 0 0
p = 1×3
0.3982 0.7278 0.2109
Выборка ACF и PACF практически не показ значительной автокорреляции. Q-критерий Ljung-Box нулевой гипотезы о том, что все автокорреляции до тестируемых лагов равны нулю, не отклоняется для тестов с лагами 5, 10 и 15. Это предполагает, что условная модель среднего значения не нужна для этой серии возвращений.
Проверьте ряды возврата на условную гетероскедастичность. Постройте график выборки ACF и PACF квадратного ряда возвратов (после центрирования). Проведите тест ARCH Engle с помощью альтернативы модели ARCH с двумя задержками.
figure subplot(2,1,1) autocorr((r-mean(r)).^2) subplot(2,1,2) parcorr((r-mean(r)).^2)
[h,p] = archtest(r-mean(r),'Lags',2)
h = logical
1
p = 0
Выборки ACF и PACF квадратов возвратов показывают значительную автокорреляцию. Это предполагает, что модель GARCH с отстающими отклонениями и отстающими квадратными инновациями может быть подходящей для моделирования этой серии. ARCH-тест Engle отклоняет нулевую гипотезу (h = 1
) без эффектов ARCH в пользу альтернативной модели ARCH с двумя отстающими квадратными инновациями. Модель ARCH с двумя отстающими инновациями локально эквивалентна модели GARCH (1,1 ).
Основываясь на автокорреляционных и условных проверках спецификаций гетероскедастичности, задайте модель GARCH (1,1) со средним смещением :
с и
Предположим, что Гауссово инновационное распределение.
Mdl = garch('Offset',NaN,'GARCHLags',1,'ARCHLags',1)
Mdl = garch with properties: Description: "GARCH(1,1) Conditional Variance Model with Offset (Gaussian Distribution)" Distribution: Name = "Gaussian" P: 1 Q: 1 Constant: NaN GARCH: {NaN} at lag [1] ARCH: {NaN} at lag [1] Offset: NaN
Созданная модель, Mdl
, имеет NaN
значения для всех неизвестных параметров в указанной модели GARCH (1,1 ).
Можно передать модель GARCH Mdl
и r
в estimate
для оценки параметров.