I am running a cointegration test on 4 input variables over 1 year and when I run the VARselect it outputs:

AIC(n)  HQ(n)  SC(n) FPE(n) 
     1      1      1      1

Input - VARselect(Data, lag.max = 10, type = "const")

This is an issue as the minimum K for the ca.jo in RStudio is 2.

I have looked for answers on this site and other papers but cant get a clear answer (or perhaps understand them!).

Question - Can anyone advise how I interpret this or is there a means to choosing a correct lag (say 2)? When I run the ca.jo with 2 or say 4 lags it gives me different hypothesis outcomes.

Thanks in advance.

  • $\begingroup$ Do you understand why ca.jo requires a minimum K of 2? $\endgroup$ Nov 25 at 12:00
  • $\begingroup$ Hi, thanks for the response. I am not sure to be honest but my guess is to minimise the estimations errors and not underfit the model. I guess my main query is why would Varselect() output a 1 lag which when applied to ca.jo() would be 1 - 1 = 0? $\endgroup$ Nov 25 at 21:37
  • $\begingroup$ It is because VARselect does not try to output a result that would necessarily fit into ca.jo. It finds a "best" model, and if that happens to contain 1 lag, then that is it. Might it be that ca.jo only considers a special case of $K\geq2$ while in the general case $K=1$ is also permissible (i.e. it is not incorrect mathematically)? I used to know these things but have forgotten... $\endgroup$ Nov 26 at 8:15
  • $\begingroup$ That makes sense - the 2 functions are not the same so don't have to adhere to the same rules. I will need to deep dive more into the implications of 1 lag in my scenario and what it is telling me. Thanks Richard. $\endgroup$ Nov 26 at 13:08


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy