# Help with Johansen procedure to check the cointegration

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:

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?

• You could also have r=2 wich would mean that your variables are stationary – Zarbouzou Mar 22 '12 at 22:47

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.