Оценить:
 Рейтинг: 2.67

Как предсказать курс доллара. Поиск доходной стратегии с языком R

Год написания книги
2018
<< 1 ... 7 8 9 10 11 12 13 14 15 ... 17 >>
На страницу:
11 из 17
Настройки чтения
Размер шрифта
Высота строк
Поля

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1 on 5826 degrees of freedom

Multiple R-squared: 0.996,      Adjusted R-squared: 0.996

F-statistic: 3.83e+05 on 4 and 5826 DF, p-value: <0.0000000000000002

Источник: расчеты автора

Проверим решение уравнения 1 на статистическую значимость. Судя по табл. 1, F-statistic у данного уравнения регрессии имеет p -value: <0.0000000000000002, то есть уровень его надежности более 99% = ((1-0.0000000000000002)*100). Таким образом можно сделать вывод, что в целом мы получили статистически значимое уравнение регрессии. Также близки к нулю p -value и у константы этого уравнения регрессии (Intercept) и у коэффициентов переменных Евро_Долл.США, Евро_Руб, Нефть и Золото, следовательно, из этого можно сделать вывод, что они также статистически значимы с 99% уровнем надежности.

Случайный (стохастический) процесс Х называют стационарным в сильном смысле, если совместное распределение вероятностей всех его лаговых переменных Х1, Х2, …, Хn, точно такое же, как и для переменных Х1+t, Х2+t, …, Хn+t. Заметим, что стационарных процессов в сильном смысле на финансовых рынках практически нет, а вот стационарные процессы в более широком слабом смысле активно используются для прогнозирования динамики финансовых активов. Под стационарным процессом в слабом смысле понимается случайный процесс, в котором его среднее значение и дисперсия (разброс, отклонения от средней) не зависят от рассматриваемого времени, а автоковариация (корреляционная связь) зависит только от длины лага между лаговыми переменными.

Далее проверим все переменные (временные ряды), включенные в уравнение 1 на стационарность. С этой целью будем использовать расширенный тест Дикки-Фуллера. Как известно, временной ряд считается стационарным в слабом смысле, если построенное на основе его уравнение первого порядка имеет коэффициент регрессии ? <1. Например, уравнение Хt= 0.975*Хt-1 +С, – свидетельствует о том, что временной ряд Хt с константой С и коэффициентом ? = 0.975 < 1 является стационарным в слабом смысле. Поэтому в этом временном ряде иногда может возникать сильная волатильность, но в случае стационарности в широком смысле она постепенно затухает. Соответственно, если бы коэффициент ? был бы больше 1, то тогда этот временной ряд считался бы нестационарным, а, следовательно, волатильность в этом ряде не имела бы тенденции с течением времени не затухать.

Подробнее о стационарности временных рядов можно прочитать в моей книги «Как предсказать курс доллара. Эффективные методы прогнозирования с использованием 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")
<< 1 ... 7 8 9 10 11 12 13 14 15 ... 17 >>
На страницу:
11 из 17