exponenta event banner

lbqtest

Q-тест Ljung-Box для остаточной автокорреляции

Описание

пример

h = lbqtest(res) возвращает логическое значение (h) с решением об отказе от проведения Q-теста Ljung-Box для автокорреляции в остаточной серии res.

пример

h = lbqtest(res,Name,Value) использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение.

  • Если любой аргумент пары имя-значение является вектором, то все указанные аргументы пары имя-значение должны быть векторами одинаковой длины или длины 1. lbqtest(res,Name,Value) обрабатывает каждый элемент векторного ввода как отдельный тест и возвращает вектор решений об отклонении.

  • Если любой аргумент пары имя-значение является вектором строки, то lbqtest(res,Name,Value) возвращает вектор строки.

пример

[h,pValue] = lbqtest(___) возвращает решение об отклонении и значение p для теста гипотезы, используя любой из входных аргументов в предыдущих синтаксисах.

пример

[h,pValue,stat,cValue] = lbqtest(___) дополнительно возвращает статистику теста (stat) и критическое значение (cValue) для теста гипотезы.

Примеры

свернуть все

Загрузите набор данных о валютном курсе Deutschmark/British pound.

load Data_MarkPound

Преобразуйте цены в возвраты.

returns = price2ret(Data);

Вычислите отклонения возвращаемого ряда.

res = returns - mean(returns);

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

h1 = lbqtest(res)
h1 = logical
   0

h1 = 0 указывает, что недостаточно доказательств для отклонения нулевой гипотезы о том, что остатки возвратов не автокоррелированы.

Проверьте гипотезу о наличии значительных эффектов ARCH, используя количество лагов по умолчанию [3].

h2 = lbqtest(res.^2)
h2 = logical
   1

h2 = 1 указывает на наличие значительных эффектов ARCH в остатках результатов.

Тест на остаточную гетероскедастичность с использованием archtest и количество лагов по умолчанию.

h3 = archtest(res)
h3 = logical
   1

h3 = 1 указывает, что нулевая гипотеза об отсутствии остаточной гетероскедастичности должна быть отвергнута в пользу модели ARCH (1). Этот результат соответствует h2.

Выполните несколько Q-тестов Ljung-Box для автокорреляции, включив различные задержки в статистику теста. Набор данных представляет собой временные ряды из 57 последовательных дней перегрузок из подземного бензинового резервуара в Колорадо [2]. То есть текущее превышение (yt) представляет точность измерения количества топлива:

  • В баке в конце суток т

  • В баке в конце дня т-1

  • Доставлено в резервуар в день t

  • Продано в день т.

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

load('Data_Overshort')
y = Data;
T = length(y); % Sample size

figure
plot(y)
title('Overshorts for 57 Consecutive Days')

Figure contains an axes. The axes with title Overshorts for 57 Consecutive Days contains an object of type line.

lbqtest подходит для ряда с постоянным средним значением. Так как ряд, по-видимому, колеблется вокруг постоянного среднего, нет необходимости преобразовывать данные.

Вычислите остатки.

res = y - mean(y);

Оцените, являются ли остатки автокоррелированными. Включите в расчет статистики теста 5, 10 и 15 лагов.

[h,pValue] = lbqtest(res,'lags',[5,10,15])
h = 1x3 logical array

   1   1   1

pValue = 1×3

    0.0016    0.0007    0.0013

h и pValue - векторы, содержащие три элемента, соответствующих тестам на каждом из трех лагов. Первый элемент каждого выходного сигнала соответствует испытанию на запаздывании 5, второй элемент соответствует испытанию на запаздывании 10, а третий элемент соответствует испытанию на запаздывании 15.

h = 1 указывает на отклонение нулевой гипотезы о том, что остатки не являются автокоррелированными. pValue указывает силу, при которой тест отклоняет нулевую гипотезу. Поскольку все три p-значения меньше 0,01, существуют убедительные доказательства того, что отрицается нулевая гипотеза о том, что остатки не являются автокоррелированными.

Выведите остатки из оценочной модели ARIMA и оцените, проявляют ли остатки автокорреляцию, используя lbqtest.

Загрузка набора данных австралийского индекса потребительских цен (ИПЦ). Временной ряд (cpi) представляет собой журнал квартальных ИПЦ с 1972 по 1991 год. Удалите тренд в серии, взяв первую разницу.

load Data_JAustralian
cpi = DataTable.PAU;
T = length(cpi);
dCPI = diff(cpi);

figure
plot(dates(2:T),dCPI)
title('Differenced Australian CPI')
xlabel('Year')
ylabel('CPI growth rate')
datetick
axis tight

Figure contains an axes. The axes with title Differenced Australian CPI contains an object of type line.

Разностный ряд выглядит неподвижным.

Поместите модель AR (1) в ряд, а затем выведите остатки из расчетной модели.

Mdl = arima(1,0,0);
EstMdl = estimate(Mdl,dCPI);
 
    ARIMA(1,0,0) Model (Gaussian Distribution):
 
                  Value      StandardError    TStatistic      PValue  
                _________    _____________    __________    __________

    Constant     0.015564      0.0028766        5.4106      6.2808e-08
    AR{1}         0.29646        0.11048        2.6834       0.0072876
    Variance    0.0001038     1.1932e-05        8.6994      3.3362e-18
res = infer(EstMdl,dCPI);
stdRes = res/sqrt(EstMdl.Variance); % Standardized residuals

Оцените, являются ли остатки автокоррелированными, проводя Q-тест Ljung-Box. Стандартизированные остатки происходят из оценочной модели (EstMdl), содержащий параметры. При использовании таких остатков рекомендуется делать следующее:

  • Отрегулируйте степени свободы (dof) распределения тестовой статистики для учета оценочных параметров.

  • Задайте количество лагов для включения в статистику теста.

  • При подсчете расчетных параметров пропускайте параметры константы и дисперсии.

lags = 10;         
dof  = lags - 1; % One autoregressive parameter

[h,pValue] = lbqtest(stdRes,'Lags',lags,'DOF',dof)
h = logical
   1

pValue = 0.0119

pValue = 0.0130 предполагает, что существует значительная автокорреляция в остатках на уровне 5%.

Входные аргументы

свернуть все

Остаточный ряд, для которого программное обеспечение вычисляет статистику теста, заданную как числовой вектор. Последний элемент соответствует последнему наблюдению.

Обычно модель подгоняется под наблюдаемый временной ряд, и res содержит стандартизированные остатки из подогнанной модели.

Указать отсутствующие наблюдения с помощью NaN. lbqtest функция рассматривает отсутствующие значения как отсутствующие полностью случайным образом.

Типы данных: double

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Lags',1:4,'Alpha',0.1 указывает четыре теста с 1, 2, 3 и 4 запаздывающими членами, проводимыми на уровне значимости 0,1.

Количество запаздывающих членов, включаемых в статистический расчет теста, указанное как пара, разделенная запятыми, состоящая из 'Lags' и положительное целое число или вектор положительных целых чисел.

Используйте вектор для проведения нескольких тестов.

Каждый элемент Lags должно быть меньше, чем T, который является эффективным размером выборки res (то есть количество не пропускаемых значений в res).

Пример: 'Lags',1:4

Типы данных: double

Уровни значимости для тестов гипотезы, определенные как пара, разделенная запятыми, состоящая из 'Alpha' и скаляр или вектор.

Используйте вектор для проведения нескольких тестов.

Каждый элемент Alpha должно быть больше 0 и меньше 1.

Пример: 'Alpha',0.01

Типы данных: double

Степени свободы для асимптотического, хи-квадратного распределения статистики теста, указанного как пара, разделенная запятыми, состоящая из 'DoF' и положительное целое число или вектор положительных целых чисел.

Используйте вектор для проведения нескольких тестов.

Если DoF является целым числом, то оно должно быть меньше или равно Lags. В противном случае каждый элемент DoF должно быть меньше или равно соответствующему элементу Lags.

Пример: 'DoF',15

Типы данных: double

Выходные аргументы

свернуть все

Решения об отклонении теста, возвращаемые как логическое значение или вектор логических значений с длиной, равной количеству тестов, которые проводит программное обеспечение.

  • h = 1 указывает на отклонение нулевой гипотезы отсутствия остаточной автокорреляции в пользу альтернативы.

  • h = 0 указывает на отказ отклонить нулевую гипотезу отсутствия остаточной автокорреляции.

Проверка статистических значений p, возвращаемых в виде скаляра или вектора с длиной, равной количеству тестов, которые проводит программное обеспечение.

Статистика тестов, возвращаемая в виде скаляра или вектора с длиной, равной количеству тестов, которые проводит программное обеспечение.

Критические значения, определенные Alpha, возвращаемый как скаляр или вектор с длиной, равной количеству тестов, которые проводит программное обеспечение.

Подробнее

свернуть все

Q-тест Ljung-Box

Q-тест Люнга-Бокса является тестом «portmanteau», который оценивает нулевую гипотезу, что ряд остатков не проявляет автокорреляции для фиксированного числа лагов L, против альтернативы, что некоторый коэффициент автокорреляции (k),  k = 1,..., L, является ненулевым.

Статистика теста:

Q = T (T + 2) ∑k=1L (start( k) 2 (T − k)),

где T - размер выборки, L - количество запаздываний автокорреляции, и (k) - автокорреляция выборки при запаздывании k. При нулевой гипотезе асимптотическое распределение Q является хи-квадратом с L степенями свободы.

Полное случайное отсутствие

Наблюдения случайной величины полностью пропускаются случайным образом, если тенденция к отсутствию наблюдения не зависит как от случайной величины, так и от тенденции к отсутствию всех других наблюдений.

Совет

При получении res подгонкой модели к данным следует уменьшить степени свободы (аргумент DoF) по количеству оцененных коэффициентов, исключая константы. Например, при получении res путем подгонки ARMA(p, q) модель, наборDoF в L p − q, где LLags.

Алгоритмы

  • Lags аргумент влияет на мощность теста.

    • Если L слишком мал, то тест не обнаруживает автокорреляции высокого порядка.

    • Если L слишком велик, то тест теряет мощность, когда значительная корреляция при одном запаздывании вымывается незначительными корреляциями при других запаздываниях.

    • Бокс, Дженкинс и Рейнсел предлагают установить min[20,T-1] в качестве значения по умолчанию для lags [1].

    • Цай приводит имитационное доказательство того, что установка lags к значению, аппроксимирующему log (T), обеспечивает лучшую производительность питания [5].

  • lbqtest не проверяет напрямую на наличие последовательных зависимостей, отличных от автокорреляции. Однако ее можно использовать для определения условной гетероскедастичности (эффектов ARCH), проверяя квадратные остатки [4].

    Тест Энгла оценивает значимость эффектов ARCH напрямую. Для получения более подробной информации см. archtest.

Ссылки

[1] Бокс, Г. Э. П., Г. М. Дженкинс и Г. К. Рейнсель. Анализ временных рядов: прогнозирование и контроль. 3-й ред. Энглвуд Клиффс, Нью-Джерси: Прентис Холл, 1994.

[2] Броквелл, P. J. и Р. А. Дэвис. Введение во временные ряды и прогнозирование. 2-й ред. Нью-Йорк, Нью-Йорк: Спрингер, 2002.

[3] Gourieroux, C. Модели ARCH и финансовые приложения. Нью-Йорк: Спрингер-Верлаг, 1997.

[4] Маклауд, А. И. и В. К. Ли. «Диагностическая проверка моделей временных рядов ARMA с использованием автокорреляций в квадрате». Журнал анализа временных рядов. т. 4, 1983, стр. 269-273.

[5] Цай, Р. С. Анализ финансовых временных рядов. 2-й ред. Хобокен, Нью-Джерси: John Wiley & Sons, Inc., 2005.

Представлен до R2006a