I'd like to expand a question about Granger's causality test by focusing on some particular cases one may happen to encounter.
I have two time series x
and y
where the Granger causality test gives:
> grangertest(x,y,1)
Granger causality test
Model 1: y ~ Lags(y, 1:1) + Lags(x, 1:1)
Model 2: y ~ Lags(y, 1:1)
Res.Df Df F Pr(>F)
1 23
2 24 -1 1.4754 0.2368
and
> grangertest(y,x,1)
Granger causality test
Model 1: x ~ Lags(x, 1:1) + Lags(y, 1:1)
Model 2: x ~ Lags(x, 1:1)
Res.Df Df F Pr(>F)
1 23
2 24 -1 1.0869 0.308
The fact that both p-values are quite high (say I choose a confidence level 0.05) makes me think that I cannot reject the null hypothesis that x
does not cause y
for Y = f(X)
. In other words I can't say neither if x
causes y
, nor if y
causes x
.
Is this interpretation correct?
Just out of curiosity, then, I have tried to see what happens when I use two synthetic random series.
x <- rnorm(1000,0,1)
y <- rnorm(1000,0,1)
and I get
> grangertest(x,y,1)
Granger causality test
Model 1: y ~ Lags(y, 1:1) + Lags(x, 1:1)
Model 2: y ~ Lags(y, 1:1)
Res.Df Df F Pr(>F)
1 996
2 997 -1 1.5105 0.2193
and
Granger causality test
Model 1: x ~ Lags(x, 1:1) + Lags(y, 1:1)
Model 2: x ~ Lags(x, 1:1)
Res.Df Df F Pr(>F)
1 996
2 997 -1 0.1859 0.6664
This is an outcome quite similar to my data and, it seems to me, consistent with the interpretation of the function output I gave above, but please let me know if I'm missing something.