exponenta event banner

Обнаружение эффектов ARCH

Проверка автокорреляции квадратных остатков

В этом примере показано, как проверить квадрат остаточного ряда для автокорреляции путем построения графика функции автокорреляции образца (ACF) и функции частичной автокорреляции (PACF). Затем проведите Q-тест Ljung-Box, чтобы более формально оценить автокорреляцию.

Загрузите данные.

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

load Data_EquityIdx;
y = DataTable.NASDAQ;
r = 100*price2ret(y);
T = length(r);

figure
plot(r)
xlim([0,T])
title('NASDAQ Daily Returns')

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

Результаты, по-видимому, колеблются вокруг постоянного уровня, но демонстрируют кластеризацию волатильности. Большие изменения в возвращаемых данных имеют тенденцию объединяться, а небольшие изменения имеют тенденцию объединяться. То есть серия проявляет условную гетероскедастичность.

Возвращаемые данные имеют относительно высокую частоту. Поэтому ежедневные изменения могут быть небольшими. Для обеспечения численной стабильности целесообразно масштабировать такие данные.

Постройте график выборки ACF и PACF.

Постройте график выборки ACF и PACF для квадратного остаточного ряда.

e = r - mean(r);

figure
subplot(2,1,1)
autocorr(e.^2)
subplot(2,1,2)
parcorr(e.^2)

Figure contains 2 axes. Axes 1 with title Sample Autocorrelation Function contains 4 objects of type stem, line. Axes 2 with title Sample Partial Autocorrelation Function contains 4 objects of type stem, line.

Образцы ACF и PACF показывают значительную автокорреляцию в квадрате остаточных рядов. Это указывает на то, что кластеризация волатильности присутствует в остаточном ряду.

Выполните Q-тест Ljung-Box.

Проведите Q-тест Ljung-Box в квадрате остаточных рядов на 5 и 10 лагах.

[h,p] = lbqtest(e.^2,'Lags',[5,10])
h = 1x2 logical array

   1   1

p = 1×2

     0     0

Нулевая гипотеза отклоняется для двух тестов (h = 1). Значения p для обоих тестов: 0. Таким образом, не все автокорреляции до запаздывания 5 (или 10) равны нулю, что указывает на кластеризацию волатильности в остаточном ряду.

Проведение теста Engle ARCH

В этом примере показано, как проводить тест ARCH Энгла на условную гетероскедастичность.

Загрузите данные.

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

load Data_EquityIdx;
y = DataTable.NASDAQ;
r = 100*price2ret(y);
T = length(r);

figure
plot(r)
xlim([0,T])
title('NASDAQ Daily Returns')

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

Результаты, по-видимому, колеблются вокруг постоянного уровня, но демонстрируют кластеризацию волатильности. Большие изменения в возвращаемых данных имеют тенденцию объединяться, а небольшие изменения имеют тенденцию объединяться. То есть серия проявляет условную гетероскедастичность.

Возвращаемые данные имеют относительно высокую частоту. Поэтому ежедневные изменения могут быть небольшими. Для обеспечения численной стабильности целесообразно масштабировать такие данные.

Проведение теста ARCH Энгла.

Проведите тест ARCH Энгла на условную гетероскедастичность по остаточному ряду, используя два лага в альтернативной гипотезе.

e = r - mean(r);
[h,p,fStat,crit] = archtest(e,'Lags',2)
h = logical
   1

p = 0
fStat = 399.9693
crit = 5.9915

Нулевая гипотеза обоснованно отвергается (h = 1, p = 0) в пользу альтернативы ARCH (2). Статистика F для теста 399.97, гораздо больше, чем критическое значение из распределения, имеющего две степени свободы, 5.99.

Тест делает вывод о наличии значительной кластеризации волатильности в остаточном ряду.

См. также

| | |

Связанные примеры

Подробнее