I'm using ca.jo function in URCA package to use Johansen procedure to check cointegration. I need help to understand the result of that test, this is my example:
> jo <- ca.jo(z, type='eigen', ecdet='none', spec='longrun')
> summary(jo)
######################
# Johansen-Procedure #
######################
Test type: maximal eigenvalue statistic (lambda max) , with linear trend
Eigenvalues (lambda):
[1] 0.335639191 0.001256000
Values of teststatistic and critical values of test:
test 10pct 5pct 1pct
r <= 1 | 1.26 6.50 8.18 11.65
r = 0 | 408.52 12.91 14.90 19.19
Eigenvectors, normalised to first column:
(These are the cointegration relations)
x.l2 y.l2
x.l2 1.0000000 1.00000000
y.l2 0.3328167 0.01557135
Weights W:
(This is the loading matrix)
x.l2 y.l2
x.d -0.01751432 -0.002265876
y.d -2.90081864 0.007172311
where z is:
x <- diffinv(rnorm(1000))
y <- 2.0-3.0*x+rnorm(x,sd=5)
z <- ts(cbind(x,y))
Ok, now I have to check the critical values of the test. I see that we can reject r = 0 (ttest is above them), then for the second(r = 1) we CAN'T reject so the result should be that THERE IS one cointegrated vector but I don't understand Why R=1 what it does mean? I have a matrix with 2 column why I need to check r = 1 if we can reject r = 0 that mean there is one contegrated vector?
Best Answer
You need to confirm if the test statistic used is "lambda trace" or "lambda max". This is because the null and alternative hypotheses are different for these two statistics.
While I do not know the particulars of ca.jo, it appears you have specified lambda max. Ordinarily this would be used with hypothesis testing:
H0: r=0; H1: r=1
H0: r=1; H1: r=2
etc.
But the nulls of the test results imply the use of lambda trace, which would ordinarily be:
H0: r=0; H1: r>0
H0: r<=1; H1: r>1
etc.