Solved – Why does ca.jo has a minimum lag order of 2

I am trying to use urca library to do cointegration test, and its function ca.jo, which conducts the Johansen procedure on a given data set.

I think a lag order of 1 is possible for a cointegrated VECM, which means it does not have short term error correction. For example, we have VAR(1)

$$
X_t=Pi_1X_{t-1} + epsilon_t
$$
and its VECM is
$$
Delta X_t = Pi X_{t-1} + epsilon_t
$$
where $Pi=Pi_1-I_2$

Why does ca.jo specify the minimum lag order to be 2? Is there a reason behind it?

I updated the package tsDyn (version 0.9-40 submitted to CRAN), so that its VECM() function can handle your case of lag=1. Note that:

  • With function VECM(), use lag=0 for the case you described as lag=1
  • A warning will be printed, as fevd(), irf(), predict() et al are not guaranteed to work
  • If you want no intercept, use: include="none"

Example:

library(tsDyn) data(barry) summary(VECM(barry, lag=0, estim="ML"))  ############# ###Model VECM  ############# Full sample size: 324   End sample size: 323 Number of variables: 3  Number of estimated slope parameters 6 AIC -4871.5     BIC -4848.83    SSR 29.3275 Cointegrating vector (estimated by ML):    dolcan    cpiUSA    cpiCAN r1      1 -0.021234 0.0402079               ECT                 Intercept          Equation dolcan -0.0004(0.0011)     0.0024(0.0030)     Equation cpiUSA -0.0436(0.0155)**   0.3685(0.0413)***  Equation cpiCAN -0.0824(0.0214)***  0.4649(0.0572)*** 

Similar Posts:

Rate this post

Leave a Comment