Я борюсь с тестированием коинтеграции 2-х временных рядов (или, вернее, с правильной интерпретацией результатов теста).
Итак, я получил 2-х временных рядов x
и y
, каждый из которых содержит 36 месячных точек данных .
Глядя на эти временные ряды, Я бы сказал, что они коинтегрированы .
Однако при применении различных коинтеграционных тестов они не выглядят так:
1) Увеличенный Дики-Фуллер
from statsmodels.tsa.stattools import adfuller
from statsmodels.api import OLS
ols_result = OLS(y, x).fit()
result = adfuller(ols_result.resid)
возвращает
(0.6614451366946532,
0.9890361840444819,
10,
25,
{'1%': -3.7238633119999998, '5%': -2.98648896, '10%': -2.6328004},
84.12263429255607)
то есть р-значение 0,98 ; Нулевая гипотеза не может быть отклонена, временные ряды не объединены.
2) Энгл-Грейнджер
coint_t, p_value, _ = coint(y, x)
p_value
0.06910078732250052
возвращает значение p 0,069 т. е. не коинтегрированы.
Что я здесь не так делаю?
Заранее спасибо!
PS: между двумя временами возникает причинно-следственная связь Грейнджера серия (проверено с использованием statsmodels.tsa.stattools.grangercausalitytests
)