3
$\begingroup$

I want to figure out how to read the cointegration relation between 5 cointegrated variables. I present the results down here with r=number of cointegrated equations is 3. Variables are normalized respect to A.

    A   B   C    D
A   1   1   1    1
B   5   -3  -5  -16
C   4   20  8   -14
D   -2  6   9   -15

Please can you help by confirming me that this is the right way to write the 3 cointegrated equations: $A=-5B-4C+2D$; $B=A+3*B-20*C-6*D$; $C=A+5*B-8*C-9*D$ with lag length=1 But in this case we have $B$ in both sides and it doesn't help. Please me help me to find how to write the equations.

$\endgroup$
5
  • $\begingroup$ can you please post the original output rather than the table? $\endgroup$
    – Metrics
    Commented Jul 8, 2013 at 16:40
  • $\begingroup$ I have splitted the results because of little space provided. So this are my results. I have just put the resuls only for the first 3 cointegrated equations. Thanks for your help. I should the integrally the tables by email? $\endgroup$ Commented Jul 8, 2013 at 16:59
  • $\begingroup$ why don't you just add that output in the question?; I can't barely read those $\endgroup$
    – Metrics
    Commented Jul 8, 2013 at 21:54
  • $\begingroup$ I can't add because the output is too long to be fitted inside the box provided by stactexchange.The results from the output are very long. Whenever i add the all the data in the stackexchange warns me about the number of characters left. $\endgroup$ Commented Jul 9, 2013 at 15:18
  • $\begingroup$ I mean add in the question not in the comment; there should be no restriction in the question $\endgroup$
    – Metrics
    Commented Jul 9, 2013 at 15:53

1 Answer 1

2
$\begingroup$

I will use the data(Canada) from vars package in R for illustration.

library(urca)
library(vars)
data(Canada)

vecm<-ca.jo(Canada[,c("rw","prod","e","U")],type="trace",ecdet="trend",K=3,spec="transitory")
vecm.r1<-cajorls(vecm, r = 3)
> vecm.r1
$rlm

Call:
lm(formula = substitute(form1), data = data.mat)

Coefficients:
          rw.d        prod.d      e.d         U.d       
ect1      -5.994e-02  -1.020e-01  -6.503e-02   4.080e-02
ect2      -2.090e-01  -1.051e-01   9.748e-02  -4.554e-02
ect3      -1.388e-01   1.690e-01   1.715e-01  -1.393e-01
constant   2.445e+02  -7.725e+01  -1.761e+02   1.354e+02
rw.dl1    -7.313e-02   7.385e-02  -5.179e-03  -4.171e-02
prod.dl1   5.465e-02   2.048e-01   8.275e-02  -6.216e-02
e.dl1     -3.970e-01  -3.514e-01   5.886e-01  -4.852e-01
U.dl1      3.790e-01  -1.130e+00  -3.101e-01   2.840e-02
rw.dl2    -2.140e-01  -1.304e-01  -2.924e-02   2.745e-02
prod.dl2  -1.437e-01   2.308e-02  -2.634e-02   2.960e-02
e.dl2      2.877e-01  -4.913e-01  -6.056e-01   4.686e-02
U.dl2     -2.829e-02  -3.648e-01  -3.482e-01  -6.446e-02


$beta
                  ect1          ect2          ect3
rw.l1     1.000000e+00  0.000000e+00  0.000000e+00
prod.l1  -8.586881e-17  1.000000e+00  5.757114e-17
e.l1      3.848918e-18 -1.298874e-16  1.000000e+00
U.l1      1.962269e+00 -3.513510e-01  3.405232e+00
trend.l1 -6.061442e-01 -1.935128e-01 -1.843491e-01

alpha<-coef(vecm.r1$rlm)[1,]
> alpha
       rw.d      prod.d         e.d         U.d 
-0.05993772 -0.10200406 -0.06502751  0.04080300 

beta<-vecm.r1$beta
beta
                  ect1          ect2          ect3
rw.l1     1.000000e+00  0.000000e+00  0.000000e+00
prod.l1  -8.586881e-17  1.000000e+00  5.757114e-17
e.l1      3.848918e-18 -1.298874e-16  1.000000e+00
U.l1      1.962269e+00 -3.513510e-01  3.405232e+00
trend.l1 -6.061442e-01 -1.935128e-01 -1.843491e-01

The output under coefficients give you vecm; there are 4 variables and so 4 equations. Since you find three cointegrating equations, there are three one period lagged error correction terms indicated by ect1,ect2,ect3.

The long run equilibrium equation is given by output under beta. They are lagged here, but for interpretation as long run equation you have to forward those equations by one period. Cointegrating eqn 1 is obtained by normalising on rw and hence 1.000, equation 2 on prod, and eqn 3 on e. You need to go back and read some literature on your area to decide on which variables to normalise and whether there is long run relationship between these variables.

Please go through the text book of Walter Enders for more clarifications.

$\endgroup$
5
  • $\begingroup$ Don't you mean the package {vars}? And why did you skip the cajorls/cajools-part leading to the $rlm? $\endgroup$
    – fredrikhs
    Commented Jul 11, 2013 at 16:36
  • $\begingroup$ Thank you very much Metrics for these useful informations. $\endgroup$ Commented Jul 12, 2013 at 16:39
  • $\begingroup$ I end up to find what i was aimed to. My goal is to express 1 variable in function of other variables.By just applying the function cajools after the function ca.jo. I can get the diff of 1 variable on function of other variables. $\endgroup$ Commented Jul 19, 2013 at 0:23
  • $\begingroup$ @Metrics, summary(ca.jo(Canada[,c("rw","prod","e","U")],type="trace",ecdet="trend",K=3,spec="transitory")) returns eigenvectors normalized to 1st column (with cointegrating rank=1). I think, the difference between the summary I gave and your vecm.r1$beta is that the former uses eigenvectors from unrestricted VECM whereas your one uses eigenvectors from retricted VECM to construct cointegrating relations. I really wonder what you think on this. $\endgroup$ Commented Jun 5, 2016 at 14:59
  • $\begingroup$ @Metrics, ca.jo(Canada[,c("rw","prod","e","U")],type="trace",ecdet="trend",K=3,sp‌​ec="transitory")@V returns eigenvectors normalized to 1st column as well. $\endgroup$ Commented Jun 23, 2016 at 13:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.