Probablemente hay muchas maneras de hacer esto, pero la primera que viene a la mente se basa en la regresión lineal. Puede retroceder los residuos consecutivos uno contra el otro y probar una pendiente significativa. Si hay autocorrelación, entonces debería haber una relación lineal entre los residuos consecutivos. Para finalizar el código que ha escrito, puede hacer lo siguiente:
mod = lm(prices[,1] ~ prices[,2])
res = mod$res
n = length(res)
mod2 = lm(res[-n] ~ res[-1])
summary(mod2)
mod2 es una regresión lineal del error de tiempo , ε t , contra el error de tiempo t - 1 , ε t - 1 . si el coeficiente para res [-1] es significativo, tiene evidencia de autocorrelación en los residuos.tεtt - 1εt - 1
Nota: Esto supone implícitamente que los residuos son autorregresivos en el sentido de que solo es importante al predecir ε t . En realidad, podría haber dependencias de mayor alcance. En ese caso, este método que he descrito debe interpretarse como la aproximación autorregresiva de un retraso a la verdadera estructura de autocorrelación en ε .εt - 1εtε
acf()
), pero esto simplemente confirmará lo que puede verse a simple vista: las correlaciones entre los residuos rezagados son muy altas.