Этот пример показывает, как задать условную модель отклонения для ежедневных обменных курсов валюты Дойчмарки/Британского фунта, наблюдаемых с января 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';
Ряд возвратов колеблется вокруг общего уровня, но показывает кластеризацию энергозависимости. Большие изменения в возвратах имеют тенденцию кластеризироваться вместе, и небольшие изменения имеют тенденцию кластеризироваться вместе. Таким образом, ряд показывает условное выражение heteroscedasticity.
Возвраты имеют относительно высокую частоту. Поэтому ежедневные изменения могут быть небольшими. Для числовой устойчивости это - хорошая практика, чтобы масштабировать такие данные. В этом случае масштабируйтесь, возвраты к проценту возвращается.
r = 100*r;
Проверяйте ряд возвратов на автокорреляцию. Постройте демонстрационный ACF и PACF, и проведите Q-тест Ljung-поля.
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-поля, что все автокорреляции до протестированных задержек являются нулем, не отклоняется для тестов в задержках 5, 10, и 15. Это предполагает, что условная средняя модель не нужна для этого, возвращает ряд.
Проверяйте ряд возврата на условное выражение heteroscedasticity. Постройте демонстрационный ACF и PACF ряда возвратов в квадрате (после центрирования). Проведите тест ДУГИ Энгла с альтернативой модели ARCH 2D задержки.
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 с изолированными отклонениями и отстало инновации, в квадрате могут подходить для моделирования этого ряда. Тест ДУГИ Энгла отклоняет нулевую гипотезу (h = 1
) никаких эффектов ДУГИ в пользу альтернативной модели ARCH с двумя изолированными инновациями в квадрате. Модель ARCH с двумя изолированными инновациями локально эквивалентна модели GARCH(1,1).
На основе автокорреляции и условного выражения heteroscedasticity тестирование спецификации, задайте модель 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
, чтобы оценить параметры.