2
$\begingroup$

I am trying to minimize the values of the Akaike and Bayesian Information Criteria to figure out the optimal lag structure for my ARDL error correction model. I am using Stata to run my analysis and am running into the following problem when trying to minimize the Information Criteria:

I am running a loop that estimates the same ARDL model with different lags and then generates the AIC/BIC values for each of these models. The problem is that the AIC/BIC values keep falling as I add more lags. I am not sure how to interpret these results since the AIC will keep falling even if I were to put a 100 or 200 lags in there. How do you minimize the information criteria if just keeps falling and falling until I run out of degrees of freedom? Do you have any suggestions for what I should be doing here to select my lag structure?

Here is the stata code I am using. In this case, I have set the maximum lag at 50. The model with 50 lags gives the lowest AIC and BIC estimates. As I increase this maximum lag to 100, the AIC and BIC is lowest for the model with the largest lags.

*forval i=1/50{
    forval j=1/50{
         regress D.Y  L(1/`i').D.Y  L(1/`j').D.X  L(1).X  L(1).X
         estimates store est_`i'_`j'
    }
  } 

 estimates stats est_*,n(251)
$\endgroup$
1
  • $\begingroup$ Could that be a coding problem or a definition problem? You could try your code on artificially generated data where you know what the true model is and see if AIC/BIC keeps diverging or actually detects the true model. If it does not work on this artificial example, it will indicate problems with the code. $\endgroup$ Commented Feb 18, 2015 at 7:26

1 Answer 1

2
$\begingroup$

Firstly 50 lags is too much. What kind of data are you modeling? Secondly, there is a problem with your code: the D.X must start at 0 not 1. And You wrote L(1).X twice.
You can use this
forval i=1/50{
forval j=1/50{
regress D.Y L(1/i').D.Y L(0/j').D.X L(1).Y L(1).X
estimates store est_i'_j'
}
}
estimates stats est_*,n(251)

$\endgroup$

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.