Шрифт:
Подробнее о стационарности временных рядов можно прочитать в моей книги «Как предсказать курс доллара. Эффективные методы прогнозирования с использованием Excel Задание и EViews» – см. главу 1 «Понятие о стационарном и нестационарном временном ряде, выявление нестационарности ряда графическим способом».
Проверка авторегрессионного процесса на стационарность проводится следующим образом. Согласно нулевой гипотезе, предполагается, что если =1, то временной ряд считается нестационарным, а в случае ее опровержения принимается альтернативная гипотеза, утверждающая, что <1, а, следовательно, ряд стационарный. В ходе решения обычного уравнения регрессии рассчитывается t– статистика для коэффициента регрессии , совпадающая с расчетными значениями статистики Дикки-Фуллера, которая потом сравнивается с критическими значениями статистики Дикки-Фуллера (обычно в книгах они даются в специальных таблицах, но в R мы их получаем в готовом виде).
Поскольку проверка гипотезы проводится по одностороннему критерию, то в этом случае, если расчетное значение t-статистики для коэффициента регрессии будет ниже критического значения статистики расширенного теста Дикки-Фуллера (с поправкой на число наблюдений), то в этом случае нулевая гипотеза о том, что =1 отклоняется и принимается альтернативная гипотеза о том, что < 1, а, следовательно, тестируемый временной ряд можно считать стационарным. Для того, чтобы провести расширенный тест Дикки-Фуллера загружаем для текущей работы пакет urca. Если его еще нет на Вашем компьютере, то воспользуйтесь командой install.packages(‘urca’), а затем введите следующий код:
> library(urca)
> Долл.США_Руб.адф <– ur.df(Долл.США_Руб, type = "drift")
# проводим расширенный тест Дикки-Фуллера
# опция теста type = "drift" означает константу
> summary(Долл.США_Руб.адф)
# вывод итогов теста
В результате получаем табл. 2 с выводом данных по итогам выполнения теста расширенного теста Дикки-Фуллера.
Табл. 2. Вывод данных по итогам выполнения теста расширенного теста Дикки-Фуллера
###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################
Test regression drift
Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)
Residuals:
Min 1Q Median 3Q Max
–8.165 -0.052 -0.014 0.035 6.641
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.019965 0.011019 1.81 0.07 .
z.lag.1 -0.000343 0.000327 -1.05 0.29
z.diff.lag -0.002071 0.013103 -0.16 0.87
–
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.405 on 5826 degrees of freedom
Multiple R-squared: 0.000194, Adjusted R-squared: -0.000149
F-statistic: 0.566 on 2 and 5826 DF, p-value: 0.568
Value of test-statistic is: -1.05 2.267
Critical values for test statistics:
1pct 5pct 10pct
tau2 -3.43 -2.86 -2.57
phi1 6.43 4.59 3.78
Источник: расчеты автора
Из табл. 2 следует, что значение тестовой статистики (Value of test-statistic) = -1.05 (рядом стоящая цифра 2.267 оценивает значимость включенной в тест константы), то есть выше критического значения tau2=-2.57 для 10% уровня значимости (или, что тоже самое для 90% уровня надежности = 100% – 10% уровень значимости). Таким образом нулевая гипотеза о наличии единичного корня не может быть отклонена, а потому временной ряд Долл.США_Руб нельзя считать стационарным. Аналогичным образом проверим на стационарность и другие временные ряды по всем факторам, включенным в уравнение регрессии 1. С этой целью введем следующие восемь строк кода:
> Евро_Долл.США.адф <– ur.df(Евро_Долл.США, type = "drift")
> summary(Евро_Долл.США.адф)
> Евро_Руб.адф <– ur.df(Евро_Руб, type = "drift")
> summary(Евро_Руб.адф)
> Нефть.адф <– ur.df(Нефть, type = "drift")
> summary(Нефть.адф)
> Золото.адф <– ur.df(Золото, type = "drift")
> summary(Золото.адф)
По итогам всех этих четырех тестов с помощью функции summary нам удалось выяснить по каждому временному ряду, включенному в уравнение регрессии 1, что все они нестационарные. Делается это аналогичным образом, как и при анализе результатов, полученных нами с помощью функции summary(Долл.США_Руб.адф). Итоги этого анализа в целях экономии места в данном случае не приводятся.
Теперь проверим на стационарность остатки, полученные после решения уравнения регрессии 1. Заметим, что под остатками в данном случае имеется в виду разница между фактическими значениями Долл.США_Руб и их расчетными значениями, найденными по уравнению регрессии 1. Остатки в нашем коде обозначим как Уравн1$residuals, а в функцию ur.df введем type = "none", то есть расширенный тест Дикки-Фуллера будет проводиться, исходя из того, что в остатках нет ни константы, ни тренда. (В последнем случае в функции ur.df нужно было бы поставить опцию type = "trend").