# Cointegrating relationships - Johansen in R

I read the posts, How to interpret results of Johansen Test? and How to interpret the eigenmatrix from a Johansen cointegration test? But still I am quite confused by the output. I have a project with two series: I don't reject both H0, therefore I'd say there is no cointegration.

Johansen Procedure:

• Test type: trace statistic, with linear trend.
• Eigenvalues (lambda):
 0.0189039550 0.0008903665

• Values of test statistic and critical values of test:
         test 10pct  5pct  1pct
r <= 1 | 0.39  6.50  8.18 11.65
r = 0  | 8.65 15.66 17.95 23.52
• Eigenvectors, normalised to first column (these are the cointegration relations):
           Oil.l1  Fuel.l1
Oil.l1   1.000000   1.0000
Fuel.l1 -1.484484 -11.1973
• Weights W (this is the loading matrix):
             Oil.l1      Fuel.l1
Oil.d  -0.049059881 0.0002693549
Fuel.d  0.002111537 0.0002467205

However, I'd like to impose one. Thus, I want to read alpha and beta. From what I understand these are the vectors below the largest eigenvalue? i.e. here, beta is (1, -1.48) and alpha is (-0.049, 0.002). But, if I want to build a cointegrating relationship, then are there two of them (below), or only one (the upper one)? I believe that lower one is very unrealistic due to low eigenvalue (first one too but we impose its not):

Oil.l1 - 1.48*Fuel.l1
Oil.l1 - 11.19*Fuel.l1

Also, to get the Gamma(j) matrices for differenced data for Vector Error Correction Form, I do the following:

ECF = ca.jo(ldata, type="trace", spec="transitory", K=14)
vec2var(ECF,r=1) #r = 1 for cointegration rank

According to theory there should be (p-1) matrices, i.e. 13 but I get 14. Should I simply ignore the last one?

I'd be extremely thankful for help!

## 1 Answer

The two eigenvectors are are ordered by maximum likelihood. The eigenvector is the cointegrating relationship and the weight is their coefficient, if they are used, in for example a VECM.

To get the VECM-form, you need to to use the command cajorls()(restricted) or cajoorls()(unrestricted). The vec2var() gives you a level (undifferenced) representation of the VECM. In a VECM you'll have 13 $(p-1)$ lags per variable. I think you will find the help on the commands, ca.jo, vec2var, cajorls and cajools very helpful.