Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Simra Temmy
    replied
    Hi Professor,
    Your comments really help us a lot. With the ARDL, something still not clear. If you can answer my questions, you will once again be a great help to both me and those who search for answers to these questions on google.
    1- If ARDL is the best option for mix integration series, why we still apply cointegration tests? As you already mentioned, cointegration can only be exists among I(I) series.
    2- Based on question 1, some panel cointegration tests allow using mix order series such as Westerlund (2008), right? How is it possible to find cointegration using those tests even if the series are mix of II) and I(0)?
    3- More precisely, for panel series, if we have mix order integration series, and if we applied Westerlung and found no cointegration, Can we still go on for PMG for both short-and long run? If yes, what is the rationale for this process?
    4- For time series, if we apply ARDL-bound for mix order series, how is it possible to conclude cointegration as in some studies? Or, whay they found is in fact, a relationship, not cointegration, right?
    5- For time series, if no cointegration is found for mix order series, should we keep going on ARDL for only short-run coefficients, or is it still OK to continue with ARDL even without cointegration?


    I have no doubt that your answers will help everyone. Thank you very much in advance

    Leave a comment:


  • Monir Ahmed
    replied
    Thank you Professor for your prompt answer.

    Leave a comment:


  • Sebastian Kripfganz
    replied
    Yes, you would always specify the trend variable with the trend() option. If you want to include the trend in your long-run (cointegrating) relationship, you would additionally specify the option restricted. If you do not want to include the trend in the long-run relationship, simply do not specify the option restricted.

    Leave a comment:


  • Monir Ahmed
    replied
    Dear Professor,
    Thank you for your reply through email. You are so much helpful in the STATA blog and I have learned a lot about ARDL estimation. I used ARDL estimation using Microfit. Your's package seems better than the Microfit because of controlling the lag and exogenous variables.

    I have a simple question.

    1. I have a specification in which year is a regressor ( following the literature, I found that year could be a good proxy for technological change and its related concepts). Now if I add the year in the main function of ARDL, I cannot estimate the ARDL This is logical. But if I add trend(year) then it gives the result ( no year effect of SR after ec1 or ec command, although it is logical. I did it after both (2,1) and (2,0) lag order). My question is: To check the year effect, is it correct to add trend(year) if I assume that my cointegration has no trend part?

    Thanks in advance.

    Leave a comment:


  • Sebastian Kripfganz
    replied
    In Stata 15 or newer, you can use the official postestimation command estat sbcusum. You can find an example in my 2018 London Stata Conference presentation from slide 27 onwards:
    In Stata 14 or earlier, you need to use the community-contributed cusum6 command instead.

    Leave a comment:


  • Alvaro Gornes Jimenez
    replied
    Hi @Babacar Mbengue, have you found out how to apply the Cusum after the ARDL estimation? I'm in need of such a thing now.

    Thanks,

    Leave a comment:


  • Sebastian Kripfganz
    replied
    You might be able to apply the bootstrap procedure proposed in the following paper:
    https://doi.org/10.1080/00036846.2017.1366643

    I am unfortunately unable to provide help with the implementation of this procedure.

    Leave a comment:


  • Euan Lowe
    replied
    Dear @Sebastian Kripfganz, thank you for your work on the ARDL package and the support you provide in this forum. I drafted a paper based on ARDL, and the results were almost perfect. Then I added fresh data, and unfortunately the new data found heteroskedasticity. Clearly this is a problem specifically with the bounds test. I have ran your `e(cmdline)' vce(robust) workaround, and see that I can have the ARDL results with robust standard errors, but these do not allow me to run the bounds test on them. Do you have any thoughts about how I should go about addressing this? Are there any other work arounds I should try?

    Leave a comment:


  • Sebastian Kripfganz
    replied
    That is correct.

    Leave a comment:


  • Zues
    replied
    Ok I got it now so you estimate:

    D.Y_t-1 = aY_t-1 + bX_t

    then adding and subtracting bX_t-1 you get:

    D.Y_t-1 = a(Y_t-1 + b/aX_t-1)+ b(X_t -Xt-1)

    Thank you

    Leave a comment:


  • Sebastian Kripfganz
    replied
    That's actually not a bug but an intended feature. Forcing the command to include lags for all independent variables may not always be desirable. There is the somewhat hidden option minlag1 that ensures that at least one lag is always included, if that is desired.

    Leave a comment:


  • Zues
    replied
    Originally posted by Sebastian Kripfganz View Post
    ardl with option ec1 reports the coefficients as in equation (2). Yet, it does not directly estimate the model in this form. Instead, the model is estimated in ARDL form
    Y_t = a1 + a2*Y_t-1 + a3*X_t + a4*X_t-1 + u_t
    and then the coefficients for the EC representation are inferred from those ARDL coefficients. Standard errors are obtained using the Delta method. This is internally done with the nlcom command.

    For linear models, OLS is equivalent to maximum likelihood estimation. This is why commands such as regress and ardl also report log-likelihood statistics. These statistics are easy to compute without actually running a maximum likelihood estimation.

    You should not get different estimates when manually estimating equation (1). I can only suspect that the estimation sample may be different. The ardl command generally restricts the estimation to those observations for which the maximum lag (specified with option maxlag()) is non-missing, even if not all lags are used in the optimal model specification.


    Hello Sebastian thank you for this reply and really all the time you are taking. Anyways I think I found an error in your code. It has to do with the estimation of the underlying model. Your program may sometimes eliminate the lag of the independent variable if its not significant/BIC criteria. You can fix it by requiring at least 1 lag.



    Consider the example below. Once I do the first estimation I see the results of the underlying estimates do not even include a lag and the program it seems mistakenly computes the effects.
    The fix is to make sure at least one lag is included - this can be specified with lags.


    var1 var2 var3
    1 5 1
    2 7 2
    4 1 3
    8 5 4
    10 4 5
    17 7 6




    tsset var3
    ardl var1 var2, ec1 maxlag(1) regstore(one)
    estimates replay one
    reg d.var1 l.var1 l.var2 d.var2 (the true estimates)
    ardl var1 var2, ec1 maxlag(1) lags(. 1) regstore(one) (a fix)




    Leave a comment:


  • Sebastian Kripfganz
    replied
    ardl with option ec1 reports the coefficients as in equation (2). Yet, it does not directly estimate the model in this form. Instead, the model is estimated in ARDL form
    Y_t = a1 + a2*Y_t-1 + a3*X_t + a4*X_t-1 + u_t
    and then the coefficients for the EC representation are inferred from those ARDL coefficients. Standard errors are obtained using the Delta method. This is internally done with the nlcom command.

    For linear models, OLS is equivalent to maximum likelihood estimation. This is why commands such as regress and ardl also report log-likelihood statistics. These statistics are easy to compute without actually running a maximum likelihood estimation.

    You should not get different estimates when manually estimating equation (1). I can only suspect that the estimation sample may be different. The ardl command generally restricts the estimation to those observations for which the maximum lag (specified with option maxlag()) is non-missing, even if not all lags are used in the optimal model specification.

    Leave a comment:


  • Zues
    replied
    Hello Sebastian thank you for all these responses. I am having a rough time finding out how you actually estimate the ARDL with ec1.I did not see this in the Stata help file or the presentations.

    Suppose there are 2 models:

    (1) D.Y_t = a + b*Y_t-1 + c*X_t-1 + d*D.X_t (unrestricted)
    (2) D.Y_t = a + b*(Y_t-1 - e*X_t-1) + d*D.X_t (ec restricted)

    In theory e = -c/b

    It appears that your results reported are from (2).
    Did you estimate (2) using non-linear methods (perhaps NLLS or MLE)? Do you know if this is even possible?
    or did you estimate (1) and infer the coefficients for (2)? If so how did you estimate (1)? When I estimate (1) manually using OLS in Stata I get different answers from your estimates. I also see log-likelyhood statistic showing up in your estimation - are you using MLE? If so shouldn't the answers be the same since the model is linear - at least in theory? Also how did you obtain the standard errors for the coefficient e once it was solved for?

    Thank you,

    Zues

    Leave a comment:


  • Arturo Galindo
    replied
    Thanks a lot Sebastian Kripfganz . Extremely useful!

    Leave a comment:

Working...
X