8

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):
    [1] 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!

user2084063
  • 83
  • 1
  • 5

1 Answers1

2

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.

user21240
  • 174
  • 5