Как узнать, является ли временной ряд стационарным или нестационарным?

30

Я использую R, я искал на Google и выяснил , что kpss.test(), PP.test()и adf.test()используются , чтобы знать о стационарности временных рядов.

Но я не статистика, которая может интерпретировать свои результаты

> PP.test(x)

     Phillips-Perron Unit Root Test
data:  x 
Dickey-Fuller = -30.649, Truncation lag parameter = 7, p-value = 0.01

> kpss.test(b$V1)

  KPSS Test for Level Stationarity
  data:  b$V1 
  KPSS Level = 0.0333, Truncation lag parameter = 3, p-value = 0.1

Warning message:
In kpss.test(b$V1) : p-value greater than printed p-value
> adf.test(x)

    Augmented Dickey-Fuller Test

data:  x 
Dickey-Fuller = -9.6825, Lag order = 9, p-value = 0.01
alternative hypothesis: stationary

Warning message:
In adf.test(x) : p-value smaller than printed p-value

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

Сагар Никам
источник

Ответы:

22

Проверка, является ли серия стационарной по сравнению с нестационарной, требует рассмотрения последовательности альтернативных гипотез. По одному на каждое листинговое предположение Гаусса. Нужно понимать, что гауссовские предположения связаны с ошибочным процессом и не имеют ничего общего с наблюдаемой серией, подвергаемой оценке. Как правильно изложено в StasK, это может включать нарушения стационарности, такие как изменение среднего значения, изменение дисперсии, изменения параметров модели во времени. Например, набор значений с восходящим трендом мог бы быть prima facie примером ряда, который в Y не был постоянным, в то время как остатки из подходящей модели могут быть описаны как имеющие постоянное среднее значение. Таким образом, исходный ряд является нестационарным в среднем, а остаточный ряд стационарен в среднем. Если в остаточном ряду имеются неуязвимые средние нарушения, такие как импульсы, сдвиги уровней, сезонные импульсы и / или тренды местного времени, то остаточный ряд (необработанный) можно охарактеризовать как нестационарный в среднем, тогда как ряд переменных индикатора может быть легко обнаруживается и включается в модель, чтобы сделать остатки модели в среднем. Теперь, если дисперсия исходного ряда демонстрирует нестационарную дисперсию, вполне разумно ограничить фильтр / модель, чтобы отобразить процесс ошибки, который имеет постоянную дисперсию. Точно так же остатки от модели могут иметь непостоянную дисперсию, требующую одного из трех возможных исправлений - Сезонные импульсы и / или тренды локального времени, а затем остаточный ряд (необработанный) можно охарактеризовать как нестационарное в среднем, тогда как ряд индикаторных переменных можно легко обнаружить и включить в модель, чтобы сделать остатки модели стационарными в среднем , Теперь, если дисперсия исходного ряда демонстрирует нестационарную дисперсию, вполне разумно ограничить фильтр / модель, чтобы отобразить процесс ошибки, который имеет постоянную дисперсию. Точно так же остатки от модели могут иметь непостоянную дисперсию, требующую одного из трех возможных исправлений - Сезонные импульсы и / или тренды локального времени, а затем остаточный ряд (необработанный) можно охарактеризовать как нестационарное в среднем, тогда как ряд индикаторных переменных можно легко обнаружить и включить в модель, чтобы сделать остатки модели стационарными в среднем , Теперь, если дисперсия исходного ряда демонстрирует нестационарную дисперсию, вполне разумно ограничить фильтр / модель, чтобы отобразить процесс ошибки, который имеет постоянную дисперсию. Точно так же остатки от модели могут иметь непостоянную дисперсию, требующую одного из трех возможных исправлений - Теперь, если дисперсия исходного ряда демонстрирует нестационарную дисперсию, вполне разумно ограничить фильтр / модель, чтобы отобразить процесс ошибки, который имеет постоянную дисперсию. Точно так же остатки от модели могут иметь непостоянную дисперсию, требующую одного из трех возможных исправлений - Теперь, если дисперсия исходного ряда демонстрирует нестационарную дисперсию, вполне разумно ограничить фильтр / модель, чтобы отобразить процесс ошибки, который имеет постоянную дисперсию. Точно так же остатки от модели могут иметь непостоянную дисперсию, требующую одного из трех возможных исправлений -

  1. Взвешенные наименьшие квадраты (широко игнорируются некоторыми аналитиками)
  2. Преобразование мощности для отделения ожидаемого значения от дисперсии ошибок, определяемых с помощью теста Бокса-Кокса и / или
  3. Необходимость модели GARCH для учета структуры ARIMA, очевидной из квадратов невязок. Продолжая, если параметры меняются со временем ИЛИ форма модели меняется со временем, возникает необходимость обнаружить эту характеристику и исправить ее с помощью сегментации данных или использования подхода TAR в стиле Тонга.
IrishStat
источник
34

YTзнак равногрехT

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

YTзнак равноYT-1+εT
YT-2YT-3с небольшими коэффициентами). Это простая модель эффективного финансового рынка, где никакая информация не может быть использована для прогнозирования будущих изменений цен. Большинство экономистов считают свои временные ряды моделями ARIMA; эти временные ряды имеют четко определенные периоды, когда происходят события (месяц, квартал или год), поэтому они редко становятся хуже, чем интегрированные временные ряды для них. Таким образом, эти тесты не предназначены для более сложных нарушений стационарности, таких как изменение среднего значения, изменение дисперсии, изменение коэффициентов авторегрессии и т. Д., Хотя тесты для этих эффектов, очевидно, тоже были разработаны.

В инженерных или естественных науках вы чаще сталкиваетесь с временными рядами с более сложными проблемами, такими как зависимость на больших расстояниях, дробная интеграция, розовый шум и т. Д. Из-за отсутствия четких указаний в описании процесса относительно типичных временных шкал ( как часто меняется климат?), обычно имеет смысл анализировать данные в частотной области (в то время как для экономистов частотная область достаточно ясна: существуют годовые сезонные циклы, плюс более длительные 3-4-5 летние бизнес-циклы ; несколько неожиданностей может произойти в противном случае).

п0,05/(3M)M30,05пpp.test(x)$p.value

Stask
источник
4

Временной ряд является стационарным, если его средний уровень и дисперсия остаются постоянными во времени. Вы можете прочитать больше по этой теме (с указанием соответствующих тестов в R), в нашем посте. Http://www.statosphere.com.au/check-time-series-stationary-r/

центросома
источник
1
Поздний комментарий, но что вы имеете в виду, что среднее значение и дисперсия остаются неизменными с течением времени? Для данного набора данных среднее значение и дисперсия - это то, что они есть, верно? Или вы имеете в виду, что среднее / var всех подмножеств данных должно быть одинаковым?
Эрик Вестерлунд
2
Я посмотрел на связанной странице. Утверждается, что «тест Льюнга-Бокса проверяет, имеются ли существенные доказательства ненулевых корреляций при лагах 1–20. Небольшие значения р (т. Е. Менее 0,05) предполагают, что ряд является стационарным». Вывод совершенно неверный. Ноль в том, что наблюдения там же. Отклонение значения NULL на основе небольшого значения p указывает только на то, что существует хотя бы одно существенное отставание. Вывод на веб-сайте будет означать, что стационарность требует значительной автокорреляции как минимум для одного лага. И это не правда.
random_guy