EssayAI
Блог
Блог
Математика и алгоритмы

Тест Филлипса-Перрона: проверка единичного корня

20 июня 2026Время чтения: 9 минут
#тест филлипса-перрона#единичный корень#стационарность#временные ряды#непараметрическая поправка
Тест Филлипса-Перрона: проверка единичного корня

Тест Филлипса-Перрона (PP, Phillips-Perron) - это статистический критерий, который проверяет, есть ли у временного ряда единичный корень, то есть является ли ряд нестационарным. Он решает ту же задачу, что и тест Дики-Фуллера, но иначе борется с главной помехой - автокорреляцией остатков. Вместо того чтобы добавлять в регрессию лаги разностей, тест Филлипса-Перрона оставляет исходную регрессию простой, а саму статистику правит непараметрической поправкой, которая учитывает и автокорреляцию, и гетероскедастичность остатков. Ниже разберём, что такое единичный корень, как устроена эта поправка, чем тест отличается от расширенного теста Дики-Фуллера и почему его статистику сравнивают не с таблицей Стьюдента, а с критическими значениями MacKinnon. Чтобы сразу почувствовать связь между коэффициентом авторегрессии и выводом теста, покрутите калькулятор: он строит ряд, считает PP-статистику и показывает, по какую сторону критического значения она оказалась.

Что такое единичный корень

Простейшая модель временного ряда - авторегрессия первого порядка AR(1):

yt=ρyt1+εt,y_t = \rho\,y_{t-1} + \varepsilon_t,

где ρ\rho - коэффициент авторегрессии, а εt\varepsilon_t - случайный шум. Поведение ряда целиком определяется значением ρ\rho. Если ρ<1|\rho| < 1, ряд стационарен: любое отклонение со временем затухает, и ряд возвращается к своему среднему уровню. Если же ρ=1\rho = 1, мы получаем случайное блуждание yt=yt1+εty_t = y_{t-1} + \varepsilon_t - у такого ряда единичный корень, отклонения не затухают, а накапливаются, и ряд медленно уплывает в сторону без всякой тенденции к возврату. Именно случай ρ=1\rho = 1 и проверяет тест: наличие единичного корня означает нестационарность, а на нестационарных рядах регрессии дают мнимые зависимости и расходящиеся прогнозы.

Как и в тесте Дики-Фуллера, удобно вычесть yt1y_{t-1} из обеих частей и обозначить γ=ρ1\gamma = \rho - 1. Тогда базовая регрессия записывается через разности:

Δyt=α+γyt1+εt,\Delta y_t = \alpha + \gamma\,y_{t-1} + \varepsilon_t,

где Δyt=ytyt1\Delta y_t = y_t - y_{t-1}, а α\alpha - константа. Нулевая гипотеза о единичном корне ρ=1\rho = 1 превращается в простое условие H0:γ=0H_0: \gamma = 0. Если γ=0\gamma = 0, разности зависят только от шума - это случайное блуждание. Если же γ<0\gamma < 0, ряд возвращается к среднему и стационарен.

Чем тест Филлипса-Перрона отличается от ADF

Главная проблема обоих тестов в том, что реальные остатки εt\varepsilon_t почти никогда не бывают чистым белым шумом: они автокоррелированы. Если это игнорировать, статистика теста смещается и вывод о стационарности становится ненадёжным. Два теста решают эту проблему принципиально по-разному.

Сравнение двух подходов к автокорреляции: расширенный тест Дики-Фуллера добавляет в регрессию лаги разностей, а тест Филлипса-Перрона оставляет регрессию простой и правит саму статистику непараметрической поправкой
Сравнение двух подходов к автокорреляции: расширенный тест Дики-Фуллера добавляет в регрессию лаги разностей, а тест Филлипса-Перрона оставляет регрессию простой и правит саму статистику непараметрической поправкой

Расширенный тест Дики-Фуллера идёт параметрическим путём: он добавляет в регрессию pp лагов разностей Δyti\Delta y_{t-i}, чтобы те поглотили автокорреляцию, и только потом считает статистику по очищенным остаткам. Тест Филлипса-Перрона выбирает непараметрический путь: регрессия остаётся короткой, без лагов, а вся коррекция переносится на саму статистику - её домножают на поправочный множитель, который оценивает долгосрочную дисперсию остатков напрямую из данных. Грубо говоря, ADF чистит модель, а PP чистит результат.

У такого разделения труда есть практическое следствие. Тест Филлипса-Перрона не требует выбирать число лагов разностей и устойчив не только к автокорреляции, но и к гетероскедастичности остатков. За это приходится платить: на малых выборках и при сильной отрицательной автокорреляции PP-тест чаще ошибается, чем аккуратно настроенный ADF. Поэтому на практике их нередко применяют вместе и смотрят, согласуются ли выводы.

Как считается PP-статистика

Сначала оценивают ту же регрессию Δyt=α+γyt1+εt\Delta y_t = \alpha + \gamma\,y_{t-1} + \varepsilon_t обычным методом наименьших квадратов и берут привычное t-отношение для коэффициента γ\gamma:

tγ=γ^SE(γ^).t_\gamma = \frac{\hat\gamma}{\text{SE}(\hat\gamma)}.

Если бы остатки были белым шумом, на этом можно было бы остановиться. Но они автокоррелированы, поэтому тест Филлипса-Перрона вводит две оценки дисперсии. Первая - обычная (краткосрочная) дисперсия остатков s2s^2, которую даёт МНК. Вторая - долгосрочная дисперсия λ2\lambda^2, она учитывает не только мгновенный разброс, но и то, как остатки коррелируют с собственным прошлым:

λ2=γ0+2j=1qwjγj,\lambda^2 = \gamma_0 + 2\sum_{j=1}^{q} w_j\,\gamma_j,

где γj\gamma_j - автоковариации остатков, а wjw_j - убывающие веса (чаще всего ядро Бартлетта, тот же приём, что в оценке Ньюи-Уэста). Параметр qq задаёт ширину окна - сколько лагов автоковариации учитывать. Скорректированная PP-статистика получается из обычного t-отношения масштабированием на отношение этих двух дисперсий плюс поправка смещения:

Zt=s2λ2  tγ(λ2s2)TSE(γ^)2λ2s.Z_t = \sqrt{\frac{s^2}{\lambda^2}}\; t_\gamma - \frac{(\lambda^2 - s^2)\,T\,\text{SE}(\hat\gamma)}{2\,\lambda^2\,s}.

Формула выглядит громоздко, но идея простая: если остатки автокоррелированы, λ2\lambda^2 отличается от s2s^2, и поправка возвращает статистике правильный масштаб. Когда остатки уже близки к белому шуму, λ2s2\lambda^2 \approx s^2, и поправка почти ничего не меняет - PP-статистика совпадает с обычным тестом Дики-Фуллера.

Критические значения MacKinnon

Здесь кроется та же тонкость, что и в тесте Дики-Фуллера. При H0H_0 ряд нестационарен, поэтому стандартная теория t-статистики не работает: распределение статистики при единичном корне несимметрично и смещено влево. Поэтому PP-статистику нельзя сравнивать с обычной таблицей Стьюдента - нужны специальные критические значения, которые табулировал Дики-Фуллер и уточнил MacKinnon. Замечательно, что у теста Филлипса-Перрона критические значения те же самые, что у теста Дики-Фуллера: вся работа непараметрической поправки как раз в том и состоит, чтобы вернуть статистику к этому распределению. Для спецификации с константой и большого числа наблюдений они примерно равны:

3,43 (1%),2,86 (5%),2,57 (10%).-3{,}43\ (1\%), \qquad -2{,}86\ (5\%), \qquad -2{,}57\ (10\%).

Конкретные числа зависят от спецификации (без константы, с константой, с константой и трендом) и от длины ряда, поэтому в отчётах PP-теста критические значения всегда приводятся рядом со статистикой.

Числовая ось PP-статистики: слева от критического значения лежит область отвержения нулевой гипотезы о единичном корне, наблюдаемая статистика стационарного ряда попадает внутрь этой области
Числовая ось PP-статистики: слева от критического значения лежит область отвержения нулевой гипотезы о единичном корне, наблюдаемая статистика стационарного ряда попадает внутрь этой области

Правило решения наглядно ложится на числовую ось. Слева от критического значения находится область отвержения: если наблюдаемая PP-статистика попала в неё, единичный корень отвергаем и считаем ряд стационарным. Если же статистика правее критического значения (ближе к нулю), отвергнуть гипотезу не удаётся - данных не хватает, чтобы отличить ряд от случайного блуждания. В калькуляторе выше переключение уровня значимости сдвигает именно эту границу: чем строже уровень (1 % против 10 %), тем дальше влево должна уйти статистика, чтобы отвергнуть единичный корень.

Как читать вывод теста на практике

Сравнение статистики с критическим значением статистические пакеты обычно сворачивают в p-value (PhillipsPerron в Python-пакете arch, pp.test и ur.pp в R). Если p-value меньше выбранного уровня значимости, единичный корень отвергается и ряд стационарен. Если ряд оказался нестационарным, его приводят к стационарности взятием разностей: Δyt=ytyt1\Delta y_t = y_t - y_{t-1}. Часто одной разности достаточно - такой ряд называют интегрированным первого порядка, I(1)I(1). После дифференцирования тест прогоняют заново и убеждаются, что единичный корень больше не обнаруживается.

Полезно помнить, что тест проверяет именно нестационарность по причине единичного корня, а не нестационарность вообще: ряд с детерминированным трендом - отдельный случай, для которого в регрессию добавляют член βt\beta t. И ещё: и PP, и ADF имеют низкую мощность, когда ρ\rho близок к единице, поэтому вывод полезно подкреплять тестом KPSS, у которого нулевая гипотеза обратная - там H0H_0 утверждает стационарность.

Частые ошибки

  • Перепутана нулевая гипотеза. В тесте Филлипса-Перрона H0H_0 - это наличие единичного корня (ряд нестационарен), а не наоборот. Маленькое p-value означает стационарность, а не её отсутствие.
  • Сравнение со Стьюдентом. PP-статистику нельзя сверять с обычными критическими значениями t-распределения: при единичном корне распределение другое, нужны значения MacKinnon (те же, что у теста Дики-Фуллера).
  • Думают, что лаги нужно подбирать как в ADF. В PP-тесте нет лагов разностей в регрессии - там настраивается ширина окна qq для долгосрочной дисперсии. Это разные параметры, и путать их не стоит.
  • Не та спецификация. Для ряда с явным трендом нужна спецификация с трендом, иначе тест систематически не отвергает единичный корень. Лишняя константа или тренд, наоборот, снижают мощность.
  • Вывод по одному тесту. При сильной отрицательной автокорреляции PP-тест склонен ошибочно отвергать H0H_0, поэтому его результат полезно подкреплять ADF и KPSS.

FAQ

Чем тест Филлипса-Перрона отличается от расширенного теста Дики-Фуллера? Оба проверяют одну и ту же нулевую гипотезу о единичном корне и используют одни критические значения. Разница в том, как они борются с автокорреляцией остатков: ADF добавляет в регрессию лаги разностей (параметрический путь), а PP оставляет регрессию короткой и правит саму статистику непараметрической поправкой на долгосрочную дисперсию. PP не требует выбирать число лагов и устойчив к гетероскедастичности, но на малых выборках бывает менее надёжен.

Что означает, если тест Филлипса-Перрона не отверг единичный корень? Это значит, что данных не хватило, чтобы отличить ряд от случайного блуждания: ряд считают нестационарным. Обычно берут первую разность и прогоняют тест снова. Неотвержение H0H_0 не доказывает наличие единичного корня, а лишь не опровергает его.

Нужно ли выбирать число лагов в тесте Филлипса-Перрона? В самой регрессии лаги разностей не используются, поэтому привычного выбора pp, как в ADF, тут нет. Но есть параметр qq - ширина окна для оценки долгосрочной дисперсии λ2\lambda^2. Его задают по эмпирическому правилу от длины ряда (например, q4(T/100)1/4q \approx 4(T/100)^{1/4}) или подбирают, проверяя устойчивость вывода.

Коротко

Тест Филлипса-Перрона проверяет нулевую гипотезу о единичном корне H0:γ=0H_0: \gamma = 0 в регрессии Δyt=α+γyt1+εt\Delta y_t = \alpha + \gamma\,y_{t-1} + \varepsilon_t. В отличие от расширенного теста Дики-Фуллера он не добавляет лаги разностей, а правит обычную t-статистику непараметрической поправкой: масштабирует её на отношение краткосрочной дисперсии s2s^2 к долгосрочной λ2\lambda^2 и убирает смещение. Скорректированную статистику сравнивают с теми же критическими значениями MacKinnon: если она ниже критической, единичный корень отвергаем и ряд считаем стационарным, иначе ряд приводят к стационарности взятием разностей. PP не требует выбирать число лагов и устойчив к гетероскедастичности, но на малых выборках его выводы полезно подкреплять тестами ADF и KPSS.

Доверьте текст нейросети EssayAI

Открыть EssayAI

Бесплатно, на русском языке и без VPN

Читайте также