Вероятно, есть много способов сделать это, но первый, который приходит на ум, основан на линейной регрессии. Вы можете регрессировать последовательные остатки друг против друга и проверить на значительный уклон. Если есть автокорреляция, то между последовательными остатками должна быть линейная зависимость. Чтобы закончить код, который вы написали, вы можете сделать:
mod = lm(prices[,1] ~ prices[,2])
res = mod$res
n = length(res)
mod2 = lm(res[-n] ~ res[-1])
summary(mod2)
mod2 - это линейная регрессия ошибки времени против ошибки времени . Если коэффициент для Res [-1] является значительным, у вас есть доказательства автокорреляции в остатках.ε t t - 1 ε t - 1TεTт - 1εт - 1
Примечание. Это подразумевает, что невязки являются авторегрессионными в том смысле, что при прогнозировании важен только . В действительности могут существовать более дальние зависимости. В этом случае описанный мною метод следует интерпретировать как авторегрессионное приближение с одной задержкой к истинной автокорреляционной структуре в . ε t εεт - 1εTε
acf()
), но это просто подтвердит то, что можно увидеть простым глазом: корреляции между отставшими остатками очень высоки.