Solved – Help with Johansen procedure to check the cointegration

cointegrationrtime series

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.

Related Question