Announcement

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

  • System GMM with the commande Xtabond2

    Dear all,

    For the goal of publishing a paper in energy economics, I would like to run a Blundell-Bond (1998) System GMM to model Natural Gas demand using the Stata command Xtabond2.
    Here is my model:
    Num of groups: 29 country (OECD countries)
    Time: 2005 - 2016 (12 years)

    Dependant variable:
    -GT ( per capita natural gas demand)

    Regressors:
    - eld ( elderly population)
    - URB (urbanization)
    - den(density)
    - POP(population)
    - P (Natural gas price)
    - INC(the income)
    - HDD (the heating degree days)
    - RES (reserves)

    Assuming only GT to be endogenous, my instruments for the differenced equation are: RES, POP, INC, URB, DEN and P while my instruments for the level equation are; eld, RES, POP and INC.

    So I have two important questions :
    1- Did I use appropriately the command to model the dynamic feature of my demand function?
    2- Can you put trust in my result (for a publication)


    You help will be appreciated. Many thanks

    N.B: The results I got are in line with earlier literature.


    The code I use:
    Code:
    xtabond2 log_GT l.log_GT log_eld log_URB log_den log_POP log_P log_INC log_HDD RES , gmm( log_GT  , lag(1 3) collapse eq(diff)) iv( RES log_POP log_INC log_URB log_den log_P, eq(diff)) iv( log_eld RES log_POP log_INC , eq(level)) artests(3)
    Results:

    Click image for larger version

Name:	Result Stata 1.JPG
Views:	1
Size:	88.4 KB
ID:	1465609

    Click image for larger version

Name:	Result Stata 2.JPG
Views:	1
Size:	51.0 KB
ID:	1465610


  • #2
    Some brief remarks:
    1. When you specify iv(log_eld RES log_POP log_INC, eq(level)), you are assuming that these four variables are uncorrelated with the unobserved country-specific effects. That is usually a too strong assumption in such a macroeconomic application (at least for some of these variables). You should either use lags of the first differences of these instruments for the level model, i.e. iv(D.log_eld D.RES D.log_POP D.log_INC, eq(level)), which still requires some sort of a stationarity assumption that again might be difficult to justify in your context; or you should just stick to a difference GMM estimator without instruments for the model in levels.
    2. You have not specified any instruments for your variable log_HDD.
    3. The Sargan test result is not too convincing, neither is the result from the AR(2) test. Note that the Sargan test for a system GMM estimator is not asymptotically valid because the one-step weighting matrix is not optimal. I highly recommend to use a two-step estimator, option twostep, and to look at the Hansen test instead of the Sargan test in that case.
    4. If you are using a system GMM estimator or a two-step estimator, you must use robust standard errors.
    5. In macroeconomic applications, it is often advised to use time dummies to capture global time-specific effects. However, note that there is a bug in xtabond2 that produces incorrect degrees of freedom and p-values for the overidentification tests if you specify the time dummies with the factor variable notation (or otherwise specify too many time dummies that become omitted). To avoid this latter and other problems, you might want to have a look at my xtdpdgmm command:
    XTDPDGMM: new Stata command for efficient GMM estimation of linear (dynamic) panel models with nonlinear moment conditions
    https://twitter.com/Kripfganz

    Comment


    • #3
      Dear Sebastian, thank you for your helpfull comments.
      Appart from time dummies, i've tried to improve my results taking into account your advice. Please tell me what do you think of these results?

      The Code:

      Code:
      xtabond2 log_GT l.log_GT log_eld log_URB log_den log_POP log_P log_INC log_Elc log_HDD RES  , gmm( log_GT  , lag(1 3) collapse eq(diff)) iv( log_Elc log_eld RES log_POP log_INC log_URB log_den log_P, eq(diff)) iv( log_HDD  RES log_POP  , eq(level)) twostep robust artests(2)
      I have two more questions:
      - statistically speaking, is my xtabond2 code apply correctely the blundell-bond 1998 sys gmm?
      - Is it normal if the lag of the dep var is not statistically significant?

      Results :

      Nb of instruments=15
      Click image for larger version

Name:	Results 2.JPG
Views:	1
Size:	91.7 KB
ID:	1466014

      Comment


      • #4
        This is not a Blundell/Bond system GMM estimator because you are not specifying the lagged difference of the dependent variable as an instrument for the model in levels. I am not saying that you should do it. If you stick to your current specification, you could call it a system GMM estimator but it is not the one originally proposed by Blundell and Bond.

        The coefficient of the lagged dependent variable should fall into the [0, 1] interval. There is nothing wrong with an insignificant lagged dependent variable. It just says that a static model might be sufficient.
        https://twitter.com/Kripfganz

        Comment


        • #5
          Thank you dear Sebastian for you helpful comments.
          Please can you tell me who is the author of my model? I really got consufed. (noting that RES is an external instrument). Thank you

          Comment


          • #6
            Your model is probably coming closest to the one discussed by the following authors (with some variations, e.g. collapsing):
            Arellano and Bover (1995). Another look at the instrumental variable estimation of error-components models. Journal of Econometrics 68, 29-51.
            https://twitter.com/Kripfganz

            Comment


            • #7
              Bonjour Sebastian Kripfganz et Jaouad Malzi.
              Je voudrai votre aide si possible
              sur la méthode GMM. Je connais pas trop comment ça se passe concrètement sur stata. Et c'est la dernière partie de mon travail que je fais en robustesse.

              Comment

              Working...
              X