Announcement

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

  • High order autocorrelation Arellano-Bond

    Hello everyone

    I am trying to estimate a dynamic model based on a growth regression. For that reason I applied several techniques such as FE or POLS being Arellano Bond and Arellano Bover my preferred options due to the dynamic nature of the estimation.

    My panel data is an unbalanced panel covering the EU country members for a total of 11 periods. Each period accounts for 5 years to minimize endogneity.

    The model looks like:

    y_{i,t}-y_{i,t-s}=\beta_1y_{i,t-s} + \beta_2 \textbf{X}_{i,t-s}+ \beta_3 d_{i,t-s} + u_{i,t}

    Y stands for the log real GDP , X is a set of control variables used in growth regressions and d is the initial public debt, the variable I am interested in.

    These are the results for POLs and FE ( variables were corrected by hand so lags do not appear in the commands though are present):


    Code:
     reg gdpcg lgdpc  `exog' , r
    
    Linear regression                               Number of obs     =        198
                                                    F(7, 190)         =       9.22
                                                    Prob > F          =     0.0000
                                                    R-squared         =     0.2836
                                                    Root MSE          =     .11154
    
    ------------------------------------------------------------------------------
                 |               Robust
           gdpcg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    -------------+----------------------------------------------------------------
           lgdpc |  -.1441605   .0251156    -5.74   0.000    -.1937017   -.0946192
              gg |   .0000703   .0002976     0.24   0.814    -.0005168    .0006573
       popgrowth |  -5.159994   2.215187    -2.33   0.021    -9.529514   -.7904749
      liquid_gdp |   .0007237    .000325     2.23   0.027     .0000825    .0013648
       inflation |   .0000228   .0001006     0.23   0.821    -.0001756    .0002211
         tradeop |   .2444825   .1020323     2.40   0.018     .0432209    .4457441
       govs_peen |  -.2621709    .215216    -1.22   0.225    -.6866905    .1623486
           _cons |   1.601594   .2559984     6.26   0.000      1.09663    2.106558
    ------------------------------------------------------------------------------
    
    
     xtreg gdpcg lgdpc  `exog' , r fe 
    
    Fixed-effects (within) regression               Number of obs     =        198
    Group variable: panelid                         Number of groups  =         28
    
    R-sq:                                           Obs per group:
         within  = 0.3109                                         min =          2
         between = 0.2194                                         avg =        7.1
         overall = 0.2373                                         max =         11
    
                                                    F(7,27)           =      21.74
    corr(u_i, Xb)  = -0.4754                        Prob > F          =     0.0000
    
                                   (Std. Err. adjusted for 28 clusters in panelid)
    ------------------------------------------------------------------------------
                 |               Robust
           gdpcg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    -------------+----------------------------------------------------------------
           lgdpc |  -.1971971   .0296721    -6.65   0.000    -.2580791    -.136315
              gg |   .0012151    .000485     2.51   0.019       .00022    .0022101
       popgrowth |  -6.926695   2.321577    -2.98   0.006    -11.69018   -2.163213
      liquid_gdp |   .0008602   .0002566     3.35   0.002     .0003336    .0013867
       inflation |   -.000201   .0001369    -1.47   0.154     -.000482      .00008
         tradeop |   .2623044   .1197898     2.19   0.037      .016516    .5080927
       govs_peen |  -.7567418   .3109876    -2.43   0.022    -1.394836    -.118648
           _cons |   2.164377   .2984268     7.25   0.000     1.552056    2.776699
    -------------+----------------------------------------------------------------
         sigma_u |   .0597245
         sigma_e |  .11106113
             rho |  .22431816   (fraction of variance due to u_i)
    ------------------------------------------------------------------------------
    So far results seem reasonable but once i turn to the DGMM estimators:

    Code:
     xtabond2 gdpcg lgdpc `exog' , gmmstyle(lgdpc , collapse ) ivstyle(`exog')  orthogonal twostep robust sma
    > ll  nolevel nodiffsargan artest(6)
    Favoring space over speed. To switch, type or click on mata: mata set matafavor speed, perm.
    Warning: Two-step estimated covariance matrix of moments is singular.
      Using a generalized inverse to calculate optimal weighting matrix for two-step estimation.
    
    Dynamic panel-data estimation, two-step difference GMM
    ------------------------------------------------------------------------------
    Group variable: panelid                         Number of obs      =       170
    Time variable : period                          Number of groups   =        28
    Number of instruments = 16                      Obs per group: min =         1
    F(7, 28)      =      6.26                                      avg =      6.07
    Prob > F      =     0.000                                      max =        10
    ------------------------------------------------------------------------------
                 |              Corrected
           gdpcg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    -------------+----------------------------------------------------------------
           lgdpc |  -.1052355   .0465194    -2.26   0.032    -.2005262   -.0099447
              gg |   .0006776   .0006514     1.04   0.307    -.0006568    .0020121
       popgrowth |  -6.033822   4.094238    -1.47   0.152    -14.42049    2.352844
      liquid_gdp |  -.0001061   .0006921    -0.15   0.879    -.0015238    .0013115
       inflation |  -.0000753    .000187    -0.40   0.690    -.0004584    .0003077
         tradeop |   .1676943   .1480974     1.13   0.267    -.1356696    .4710582
       govs_peen |   -.786176   .4152976    -1.89   0.069    -1.636875    .0645225
    ------------------------------------------------------------------------------
    Instruments for orthogonal deviations equation
      Standard
        FOD.(gg popgrowth liquid_gdp inflation tradeop govs_peen)
      GMM-type (missing=0, separate instruments for each period unless collapsed)
        L(1/11).lgdpc collapsed
    ------------------------------------------------------------------------------
    Arellano-Bond test for AR(1) in first differences: z =  -3.49  Pr > z =  0.000
    Arellano-Bond test for AR(2) in first differences: z =   2.75  Pr > z =  0.006
    Arellano-Bond test for AR(3) in first differences: z =  -2.57  Pr > z =  0.010
    Arellano-Bond test for AR(4) in first differences: z =   2.01  Pr > z =  0.045
    Arellano-Bond test for AR(5) in first differences: z =  -1.26  Pr > z =  0.208
    Arellano-Bond test for AR(6) in first differences: z =   1.34  Pr > z =  0.180
    ------------------------------------------------------------------------------
    Sargan test of overid. restrictions: chi2(9)    =  40.73  Prob > chi2 =  0.000
      (Not robust, but not weakened by many instruments.)
    Hansen test of overid. restrictions: chi2(9)    =  15.93  Prob > chi2 =  0.068
      (Robust, but weakened by many instruments.)
    I limited the number of instruments and tried applying time dummies which solver the problem or the arellano bond test but adds too many instruments and insignificant results even if i limit the later. So far best specification achieved has been produced by :
    Code:
     xtabond2 gdpcg lgdpc L.lgdpc `exog' , gmmstyle(lgdpc L.lgdpc , collapse lag(4 .) ) ivstyle(`exog') twost
    > ep robust small  ///
    > orthogonal nolevel nodiffsargan artest(3)
    Favoring space over speed. To switch, type or click on mata: mata set matafavor speed, perm.
    Warning: Two-step estimated covariance matrix of moments is singular.
      Using a generalized inverse to calculate optimal weighting matrix for two-step estimation.
    
    Dynamic panel-data estimation, two-step difference GMM
    ------------------------------------------------------------------------------
    Group variable: panelid                         Number of obs      =       141
    Time variable : period                          Number of groups   =        27
    Number of instruments = 18                      Obs per group: min =         0
    F(8, 27)      =     69.73                                      avg =      5.22
    Prob > F      =     0.000                                      max =         9
    ------------------------------------------------------------------------------
                 |              Corrected
           gdpcg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    -------------+----------------------------------------------------------------
           lgdpc |
             --. |  -.7664274   .1356846    -5.65   0.000    -1.044829   -.4880256
             L1. |   .4334559   .0944323     4.59   0.000     .2396968     .627215
                 |
              gg |   .0016123   .0009237     1.75   0.092    -.0002831    .0035076
       popgrowth |   -3.16039   1.677249    -1.88   0.070     -6.60182    .2810399
      liquid_gdp |   .0002678   .0012761     0.21   0.835    -.0023505    .0028861
       inflation |  -.0050883   .0016433    -3.10   0.005    -.0084601   -.0017164
         tradeop |   .5624018    .165768     3.39   0.002     .2222739    .9025297
       govs_peen |  -1.425762   .3308342    -4.31   0.000    -2.104578   -.7469468
    ------------------------------------------------------------------------------
    Instruments for orthogonal deviations equation
      Standard
        FOD.(gg popgrowth liquid_gdp inflation tradeop govs_peen)
      GMM-type (missing=0, separate instruments for each period unless collapsed)
        L(4/11).(lgdpc L.lgdpc) collapsed
    ------------------------------------------------------------------------------
    Arellano-Bond test for AR(1) in first differences: z =  -1.57  Pr > z =  0.117
    Arellano-Bond test for AR(2) in first differences: z =  -1.77  Pr > z =  0.077
    Arellano-Bond test for AR(3) in first differences: z =  -0.23  Pr > z =  0.818
    ------------------------------------------------------------------------------
    Sargan test of overid. restrictions: chi2(10)   =   9.40  Prob > chi2 =  0.495
      (Not robust, but not weakened by many instruments.)
    Hansen test of overid. restrictions: chi2(10)   =   7.58  Prob > chi2 =  0.670
      (Robust, but weakened by many instruments.)
    I have tried to read other FAQ and I also read Roodmans paper on xtabond2 but at his point I can not figure out what's wrong.

    Thank you for your time

  • #2
    First of all, forward-orthogonal deviations (option orthogonal) are implemented in a quite problematic way in xtabond2 which leads to incorrect results. See my comment in the following Statalist discussion that also illustrates how to use the xtdpdgmm command instead to obtain correct results:
    XTDPDGMM: Generalized method of moments estimation of linear dynamic panel data models

    Time dummies should essentially always be included. The main problem with your data set is that the number of cross-sectional groups is very small which makes it very hard to obtain reliable results.
    https://www.kripfganz.de/stata/

    Comment


    • #3
      Originally posted by Sebastian Kripfganz View Post
      First of all, forward-orthogonal deviations (option orthogonal) are implemented in a quite problematic way in xtabond2 which leads to incorrect results. See my comment in the following Statalist discussion that also illustrates how to use the xtdpdgmm command instead to obtain correct results:
      XTDPDGMM: Generalized method of moments estimation of linear dynamic panel data models

      Time dummies should essentially always be included. The main problem with your data set is that the number of cross-sectional groups is very small which makes it very hard to obtain reliable results.
      Thanks for the comment Sebastian.

      I already corrected my estimation using your suggestion. As I suspected, results are not still significant.

      I agree with you that my data set is too small to apply GMM . Would you just rely on cross section ( POLS or FE controlling for time dummies) as a better approach?

      PD: I read a paper dealing with small sample in dynamic panels by Lorelied. A. Santos, Erniel B. Barrios (2011). The apply boostrap methods to correct for the failure of the asymptotic properties but I am nor familiarised with boostraping neither I know if stata incorporates any option for that.


      Thanks
      Last edited by Luis Menendez; 22 Jun 2019, 10:13.

      Comment

      Working...
      X