Процесс unit root является генерирующим данные процессом, первое различие которого является стационарным. Другими словами, модульный корневой процесс yt имеет форму
yt = y t –1 + стационарный процесс.
Модульный корневой тест пытается определить, сопоставимы ли данные временные ряды с модульным корневым процессом.
Следующий раздел предоставляет больше подробную информацию модульных корневых процессов и предлагает, почему важно обнаружить их.
Существует две базовых модели для экономических данных с линейными характеристиками роста:
Стационарный трендом процесс (TSP): yt = c + δt + стационарный процесс
Модульный корневой процесс, также названный стационарным различием процессом (DSP): Δyt = δ + стационарный процесс
Здесь Δ является оператором дифференцирования, Δyt = yt – y t –1 = (1 – L) yt, где L является оператором задержки, заданным Liyt = yt – i.
Процессы неразличимы для конечных данных. Другими словами, существуют и TSP и DSP, которые соответствуют набору конечных данных произвольно хорошо. Однако процессы различимы, когда ограничено конкретным подклассом генерирующих данные процессов, таковы как AR (p) процессы. После подбирания модели к данным модуль базируется тестовые проверки, если AR (1) коэффициент равняется 1.
Существует две главных причины различать эти типы процессов:
TSP и DSP производят различные прогнозы. В основном шоки для TSP возвращаются к линии тренда когда время увеличивается. В отличие от этого шоки для DSP могут быть персистентными в зависимости от времени.
Например, рассмотрите простую стационарную трендом модель
и стационарная различием модель
В этих моделях, и независимые инновационные процессы. В данном примере инновациями является независимый и распределенный N (0,1).
Оба процесса растут со скоростью 0.2. Вычислить темп роста для TSP, который имеет линейный член Набор . Затем решите модель для и .
Решение , .
График для t = 1:1000 показывает, что TSP остается очень близко к линии тренда, в то время как DSP имеет персистентные отклонения далеко от линии тренда.
T = 1000; % Sample size t = (1:T)'; % Period vector rng(5); % For reproducibility randm = randn(T,2); % Innovations y = zeros(T,2); % Columns of y are data series % Build trend stationary series y(:,1) = .02*t + randm(:,1); for ii = 2:T y(ii,1) = y(ii,1) + y(ii-1,1)*.9; end % Build difference stationary series y(:,2) = .2 + randm(:,2); y(:,2) = cumsum(y(:,2)); figure plot(y(:,1),'b') hold on plot(y(:,2),'g') plot((1:T)*0.2,'k--') legend('Trend Stationary','Difference Stationary',... 'Trend Line','Location','NorthWest') hold off
Прогнозы на основе двух рядов отличаются. Чтобы видеть это различие, постройте предсказанное поведение двух рядов с помощью varm
, estimate
, и forecast
. Следующий график показывает последние 100 точек данных в двух рядах и предсказаниях следующих 100 точек, включая доверительные границы.
AR = {[NaN 0; 0 NaN]}; % Independent response series trend = [NaN; 0]; % Linear trend in first series only Mdl = varm('AR',AR,'Trend',trend); EstMdl = estimate(Mdl,y); EstMdl.SeriesNames = ["Trend stationary" "Difference stationary"]; [ynew,ycov] = forecast(EstMdl,100,y); % This generates predictions for 100 time steps seY = sqrt(diag(EstMdl.Covariance))'; % Extract standard deviations of y CIY = zeros([size(y) 2]); % In-sample intervals CIY(:,:,1) = y - seY; CIY(:,:,2) = y + seY; extractFSE = cellfun(@(x)sqrt(diag(x))',ycov,'UniformOutput',false); seYNew = cell2mat(extractFSE); CIYNew = zeros([size(ynew) 2]); % Forecast intervals CIYNew(:,:,1) = ynew - seYNew; CIYNew(:,:,2) = ynew + seYNew; tx = (T-100:T+100); hs = 1:2; figure; for j = 1:Mdl.NumSeries hs(j) = subplot(2,1,j); hold on; h1 = plot(tx,tx*0.2,'k--'); axis tight; ha = gca; h2 = plot(tx,[y(end-100:end,j); ynew(:,j)]); h3 = plot(tx(1:101),squeeze(CIY(end-100:end,j,:)),'r:'); plot(tx(102:end),squeeze(CIYNew(:,j,:)),'r:'); h4 = fill([tx(102) ha.XLim([2 2]) tx(102)],ha.YLim([1 1 2 2]),[0.7 0.7 0.7],... 'FaceAlpha',0.1,'EdgeColor','none'); title(EstMdl.SeriesNames{j}); hold off; end legend(hs(1),[h1 h2 h3(1) h4],... {'Trend','Process','Interval estimate','Forecast horizon'},'Location','Best');
Исследуйте подходящие параметры путем передачи предполагаемой модели summarize
, и вы находите estimate
сделал превосходное задание.
TSP уверен интервалы, которые не растут со временем, тогда как DSP уверен интервалы, которые растут. Кроме того, TSP переходит к линии тренда быстро, в то время как DSP не стремится к линии тренда асимптотически.
Присутствие модульных корней может привести к ложным выводам в регрессиях между временными рядами.
Предположим, что xt и yt являются модульными корневыми процессами с независимым шагом, таким как случайные обходы с дрейфом
xt = c 1 + x t –1 + ε 1 (t)
yt = c 2 + y t –1 + ε 2 (t),
где εi (t) является независимыми инновационными процессами. Регрессирующий y на результатах x, в целом, в ненулевом коэффициенте регрессии и значительном коэффициенте детерминации R 2. Этот результат содержит несмотря на xt и yt, являющийся независимыми случайными обходами.
Если оба процесса имеют тренды (ci ≠ 0), существует корреляция между x и y из-за их линейных трендов. Однако, даже если ci = 0, присутствие модуля базируется в xt и корреляции выражений процессов yt. Для получения дополнительной информации о побочной регрессии смотрите Грейнджера и Ньюболд [1] и IV Регрессии Временных рядов: Побочная Регрессия.
Существует четыре теста Econometrics Toolbox™ для модульных корней. Эти функции тестируют на существование корня единого блока. Когда существует два или больше модульных корня, результаты этих тестов не могут быть допустимыми.
adftest
выполняет увеличенный Более полный Дики тест. pptest
выполняет тест Phillips-крыльца. Эти два класса тестов имеют нулевую гипотезу модульного корневого процесса формы
yt = y t –1 + c + δ t + εt,
который функции тестируют против альтернативной модели
yt = γ y t –1 + c + δ t + εt,
где γ <1. Пустые и альтернативные модели для Более полного Дики теста похожи на тех для теста Phillips-крыльца. Различие adftest
расширяет модель дополнительными параметрами, составляющими последовательную корреляцию среди инноваций:
yt = c + δt + γ y t – 1 + ϕ 1Δyt – 1 + ϕ 2Δyt – 2 +... + ϕ p Δyt – p + ε t,
где
L является оператором задержки: Lyt = y t –1.
Δ = 1 – L, таким образом, Δyt = yt – y t –1.
ε t является инновационным процессом.
Phillips-крыльцо настраивает тестовую статистику с учетом последовательной корреляции.
Существует три варианта обоих adftest
и pptest
, соответствие следующим значениям 'model'
параметр:
'AR'
принимает c и δ, которые появляются в предыдущих уравнениях, оба 0
; 'AR'
альтернатива имеет среднее значение 0.
'ARD'
принимает, что δ является 0
. 'ARD'
альтернатива имеет средний c / (1–γ).
'TS'
не делает предположения о c и δ.
Для получения информации о том, как выбрать соответствующее значение 'model'
, смотрите Выбирают Models to Test.
Тест KPSS, kpsstest
, инверсия теста Phillips-крыльца: это инвертирует пустые и альтернативные гипотезы. Тест KPSS использует модель:
yt = ct + δt + ut, с
ct = c t –1 + vt.
Здесь ut является стационарным процессом, и vt является i.i.d. процессом со средним значением 0 и отклонением σ 2. Нулевая гипотеза - то, что σ 2 = 0, так, чтобы случайный термин обхода ct стал постоянной точкой пересечения. Альтернативой является σ 2> 0, который вводит модульный корень в случайном обходе.
Тест отношения отклонения, vratiotest
, основан на том, что отклонение случайного обхода увеличивается линейно со временем. vratiotest
может также учесть heteroscedasticity, где отклонение увеличивается по плавающему курсу со временем. Тест имеет нулевые гипотезы случайного обхода:
Δyt = ε t.
Преобразуйте свои временные ряды, чтобы быть приблизительно линейными прежде, чем протестировать на модульный корень. Если ряд имеет экспоненциальный рост, возьмите его логарифм. Например, GDP и потребительские цены обычно имеют экспоненциальный рост, так протестируйте их логарифмы на модульные корни.
Если вы хотите преобразовать свои данные, чтобы быть стационарными вместо приблизительно линейного, модульные корневые тесты могут помочь вам определить ли к различию ваши данные или вычесть линейный тренд. Для обсуждения этой темы смотрите то, Что Модульный Корневой Тест?
Для adftest
или pptest
, выберите model
в можно следующим образом:
Если ваши данные показывают линейный тренд, установите model
к 'TS'
.
Если ваши данные не показывают тренда, но, кажется, имеют ненулевое среднее значение, устанавливают model
к 'ARD'
.
Если ваши данные не показывают тренда, и, кажется, имеют нулевое среднее значение, устанавливают model
к 'AR'
(значение по умолчанию).
Для kpsstest
, установите trend
к true
(значение по умолчанию), если данные показывают линейный тренд. В противном случае установите trend
к false
.
Для vratiotest
, установите IID
к true
если вы хотите протестировать на независимые, тождественно распределенные инновации (никакой heteroscedasticity). В противном случае оставьте IID
в значении по умолчанию, false
. Линейные тренды не влияют vratiotest
.
Установка соответствующих задержек зависит от теста, который вы используете:
adftest
— Один метод должен начать задержку имеющую, такую как та, рекомендуемая Schwert [2]. Затем тест вниз путем оценки значения коэффициента термина в задержке p максимум. Schwert рекомендует максимальную задержку
где целая часть x. Обычная статистическая величина t подходит для тестирования значения коэффициентов, как сообщается в reg
вывод структуры.
Другой метод должен объединить меру подгонки, такой как SSR, с информационными критериями, такими как AIC, BIC и HQC. Эти статистические данные также появляются в reg
вывод структуры. Ын и Крыльцо [3] предоставляют дальнейшие инструкции.
kpsstest
— Один метод должен начаться с немногих задержек, и затем оценить чувствительность результатов путем добавления большего количества задержек. Для непротиворечивости Newey-западного средства оценки количество задержек должно перейти к бесконечности, когда объем выборки увеличивается. Квиатковский и др. [4] предлагает использовать много задержек порядка T 1/2, где T является объемом выборки.
Для примера выбора задержек для kpsstest
, смотрите Тестовые Данные временных рядов для Модульного Корня.
pptest
— Один метод должен начаться с немногих задержек, и затем оценить чувствительность результатов путем добавления большего количества задержек. Другой метод должен посмотреть на демонстрационные автокорреляции yt – y t –1; низкие скорости затухания требуют большего количества задержек. Newey-западное средство оценки сопоставимо, если количество задержек является O (T 1/4), где T является эффективным объемом выборки, настроенным для задержки и отсутствующих значений. Белый и Domowitz [5] и Крыльцо [6] предоставляют дальнейшие инструкции.
Для примера выбора задержек для pptest
, смотрите Тестовые Данные временных рядов для Модульного Корня.
vratiotest
не использует задержки.
Запустите несколько тестов одновременно путем ввода вектора из параметров для lags
\alpha
, model
, или test
. Все векторные параметры должны иметь ту же длину. Тест расширяет любой скалярный параметр до длины векторного параметра. Для примера с помощью этого метода смотрите Тестовые Данные временных рядов для Модульного Корня.
[1] Грейнджер, C. W. J. и P. Ньюболд. “Побочные Регрессии в Эконометрике”. Журнал Эконометрики. Vol 2, 1974, стр 111–120.
[2] Schwert, W. “Тесты для Модульных Корней: Расследование Монте-Карло”. Журнал Бизнес-и Экономической статистики. Издание 7, 1989, стр 147–159.
[3] Ын, S. и P. Крыльцо. “Модульные Корневые Тесты в Моделях ARMA с Информационно-зависимыми Методами для Выбора Задержки Усечения”. Журнал американской Статистической Ассоциации. Издание 90, 1995, стр 268–281.
[4] Квиатковский, D., П. К. Б. Филлипс, П. Шмидт и И. Шин. “Тестируя Нулевую гипотезу Стационарности против Альтернативы для Модульного Корня”. Журнал Эконометрики. Издание 54, 1992, стр 159–178.
[5] Белый, H. и я. Domowitz. “Нелинейная Регрессия с Зависимыми Наблюдениями”. Econometrica. Издание 52, 1984, стр 143–162.
[6] Крыльцо, P. “Тренды и Случайные Обходы в Макроэкономических Временных рядах: Новые доказательства от Нового Подхода”. Журнал Экономической Динамики и Управления. Издание 12, 1988, стр 297–332.
adftest
| kpsstest
| pptest
| vratiotest