Announcement

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

  • "standard errors allow for clustering at company and time levels"

    Hi everybody,

    I am trying to replicate a paper of Fahlenbrach, Prilmeier and Stulz (2017) "Why Does Fast Loan Growth Predict Poor Performance for Banks?". They make quartiles at time T based on the loan growth of the preceding 1 or 3 years. Then they make dummy variables for each quartile and regress the top 3 quartile dummies on the subsequent 1 and 3 year stock returns to see if the top quartile has worse performance than the lowers quartile, which is the constant (e.g. loan growth from 1990 till 1993 and annualized stock return from 1993 to 1996). For the 3 year subsequent returns they use non-overlapping observations to overcome serial correlation. The panel data runs from 1972 to 2013, with in total 652 unique banks, with an average of 12 year observations per bank.

    In every model they have a year dummy and in their second model they include a company dummy. In the note under the table they state that "standard errors allow for clustering at company and time levels". I have been reading about this all day and was hoping somebody could confirm if I understand everything allright.

    I wanted to test for heteroskedasticity first, but as I understood from this post https://www.statalist.org/forums/for...roskedasticity I can use xttest2 or xttest3, but only on fixed effect models. So I first have to determine if I should use a fixed or random effects model before I can test for heteroskedasticity. Below is my data and my results.


    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input float(indexret3 threeyearlgq4 threeyearlgq3 threeyearlgq2) double fyear float company
       .3404994 0 0 0 1974  1
      .19708817 1 0 0 1977  1
      .17110507 0 0 1 1980  1
     -.06095207 0 1 0 1983  1
     .021745825 0 0 0 1986  1
              . 0 0 0 1989  1
       .4321557 0 0 0 1974  2
     .065229334 1 0 0 1977  2
       .2239976 0 0 1 1980  2
       .3328845 0 0 0 1983  2
     .005473102 0 0 1 1986  2
      .05769363 1 0 0 1989  2
      .16216846 0 1 0 1992  2
              . 0 0 0 1995  2
      .11798104 0 1 0 1998  3
       .2720263 0 1 0 2001  3
      .08679606 1 0 0 2004  3
       .2643141 0 0 0 1993  4
              . 0 1 0 1996  4
              . 1 0 0 2001  5
              . 1 0 0 1998  6
       .2230659 0 0 0 1974  7
       .4345446 1 0 0 1977  7
        .193911 1 0 0 1980  7
      -.1548478 1 0 0 1983  7
              . 0 0 0 1986  7
      .08228646 0 0 0 2014  8
       .4025525 0 0 0 1997  9
     -.03194543 1 0 0 2000  9
              . 0 1 0 2003  9
      .14671922 0 0 0 1993 10
      .12989475 0 1 0 1996 10
    -.002854259 0 1 0 1999 10
      .14663917 0 0 0 2002 10
      -.4913674 0 0 0 2005 10
              . 0 0 0 2008 10
              . 0 0 0 1995 11
       .3712766 0 0 0 1999 12
     -.20266485 0 0 0 1972 13
       .1343242 0 1 0 1975 13
      .02003881 0 0 0 1978 13
       .3888152 0 0 1 1981 13
              . 0 0 1 1984 13
       .1954603 0 0 0 1982 14
      .09002928 0 0 0 1985 14
      .22624044 0 0 0 1988 14
      .14883068 0 0 0 1991 14
       .3614595 0 0 0 1994 14
      .36880365 0 0 0 1997 14
      -.1213385 0 0 0 2000 14
              . 0 0 0 1972 15
              . 0 0 0 1992 16
      .04753177 0 0 1 1976 17
      .28491578 1 0 0 1979 17
      .26649877 0 1 0 1982 17
              . 0 0 0 1985 17
              . 1 0 0 2007 18
      .25585628 0 0 0 1993 19
    -.023958394 0 0 0 1996 19
     -.18089524 0 0 0 1999 19
      -.1344397 0 0 1 2005 20
     -.03147801 0 1 0 2008 20
        .359098 0 1 0 2011 20
      .24408174 0 1 0 2014 20
     -.02918689 0 0 0 1972 21
       .1701677 0 0 1 1975 21
      .06243742 0 0 1 1978 21
       .3280516 0 0 0 1981 21
      .09405138 0 0 0 1984 21
       -.163251 0 1 0 1987 21
              . 0 0 1 1990 21
              . 0 0 0 1994 22
     -.12680672 0 0 0 1972 23
        .218132 1 0 0 1975 23
    -.024673186 0 1 0 1978 23
       .3218598 0 0 0 1981 23
      .17336853 0 1 0 1984 23
    .0006910315 0 1 0 1987 23
       .3964587 0 0 1 1990 23
      .20831273 0 1 0 1993 23
      .13399678 0 0 1 1996 23
      .04730606 1 0 0 1999 23
      .15470895 0 0 0 2002 23
              . 0 0 1 2005 23
              . 0 0 0 1993 24
              . 0 0 0 2014 25
              . 0 0 1 1998 26
     .018465849 1 0 0 1997 27
              . 0 0 1 2000 27
     -.11697692 0 0 0 1972 28
       .1575918 0 0 0 1975 28
      .20664077 1 0 0 1978 28
       .2011705 0 1 0 1981 28
              . 0 1 0 1984 28
      .05330086 0 1 0 2010 29
       .2202944 0 0 1 2013 29
              . 0 0 1 2016 29
       .2173705 0 0 0 1988 30
       .1898002 1 0 0 1991 30
       .3638621 1 0 0 1994 30
    end
    For the regression with only time fixed effects I got the following:
    Code:
    . xtset company fyear
           panel variable:  company (unbalanced)
            time variable:  fyear, 1972 to 2016, but with gaps
                    delta:  1 unit
    
    . xtreg indexret3  threeyearlgq4 threeyearlgq3 threeyearlgq2, i(fyear) fe
    warning: existing panel variable is not fyear
    
    Fixed-effects (within) regression               Number of obs     =      2,404
    Group variable: fyear                           Number of groups  =         43
    
    R-sq:                                           Obs per group:
         within  = 0.0215                                         min =          5
         between = 0.0000                                         avg =       55.9
         overall = 0.0033                                         max =        128
    
                                                    F(3,2358)         =      17.24
    corr(u_i, Xb)  = -0.0775                        Prob > F          =     0.0000
    
    -------------------------------------------------------------------------------
        indexret3 |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
    --------------+----------------------------------------------------------------
    threeyearlgq4 |   -.064627   .0092687    -6.97   0.000    -.0828027   -.0464513
    threeyearlgq3 |  -.0358467   .0089855    -3.99   0.000     -.053467   -.0182263
    threeyearlgq2 |  -.0192869   .0092586    -2.08   0.037    -.0374428   -.0011311
            _cons |   .1395152    .005616    24.84   0.000     .1285024    .1505281
    --------------+----------------------------------------------------------------
          sigma_u |  .14715916
          sigma_e |  .15527715
              rho |  .47317735   (fraction of variance due to u_i)
    -------------------------------------------------------------------------------
    F test that all u_i=0: F(42, 2358) = 55.22                   Prob > F = 0.0000
    
    . estimates store FE
    
    . xtreg indexret3  threeyearlgq4 threeyearlgq3 threeyearlgq2, i(fyear) re
    
    Random-effects GLS regression                   Number of obs     =      2,404
    Group variable: fyear                           Number of groups  =         43
    
    R-sq:                                           Obs per group:
         within  = 0.0215                                         min =          5
         between = 0.0000                                         avg =       55.9
         overall = 0.0032                                         max =        128
    
                                                    Wald chi2(3)      =      51.57
    corr(u_i, X)   = 0 (assumed)                    Prob > chi2       =     0.0000
    
    -------------------------------------------------------------------------------
        indexret3 |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
    --------------+----------------------------------------------------------------
    threeyearlgq4 |  -.0644424   .0092492    -6.97   0.000    -.0825704   -.0463144
    threeyearlgq3 |   -.035827   .0089738    -3.99   0.000    -.0534153   -.0182386
    threeyearlgq2 |  -.0194556   .0092434    -2.10   0.035    -.0375723   -.0013388
            _cons |   .1532846   .0232615     6.59   0.000     .1076929    .1988764
    --------------+----------------------------------------------------------------
          sigma_u |  .14683917
          sigma_e |  .15527715
              rho |   .4720922   (fraction of variance due to u_i)
    -------------------------------------------------------------------------------
    
    . estimates store RE
    
    . hausman FE RE
    
                     ---- Coefficients ----
                 |      (b)          (B)            (b-B)     sqrt(diag(V_b-V_B))
                 |       FE           RE         Difference          S.E.
    -------------+----------------------------------------------------------------
    threeyearl~4 |    -.064627    -.0644424       -.0001846        .0006021
    threeyearl~3 |   -.0358467     -.035827       -.0000197        .0004587
    threeyearl~2 |   -.0192869    -.0194556        .0001686        .0005298
    ------------------------------------------------------------------------------
                               b = consistent under Ho and Ha; obtained from xtreg
                B = inconsistent under Ha, efficient under Ho; obtained from xtreg
    
        Test:  Ho:  difference in coefficients not systematic
    
                      chi2(3) = (b-B)'[(V_b-V_B)^(-1)](b-B)
                              =        0.95
                    Prob>chi2 =      0.8130
    This would suggest I need to use a random effects model. If I use both time and company fixed effect I get this:
    Code:
    . xtset company fyear
           panel variable:  company (unbalanced)
            time variable:  fyear, 1972 to 2016, but with gaps
                    delta:  1 unit
    
    . qui xtreg indexret3  threeyearlgq4 threeyearlgq3 threeyearlgq2 i.fyear, i(company)
    >  fe
    
    . estimates store FE
    
    . qui xtreg indexret3  threeyearlgq4 threeyearlgq3 threeyearlgq2 i.fyear, i(company)
    >  re
    
    . estimates store RE
    
    . hausman FE RE
    
                     ---- Coefficients ----
                 |      (b)          (B)            (b-B)     sqrt(diag(V_b-V_B))
                 |       FE           RE         Difference          S.E.
    -------------+----------------------------------------------------------------
    threeyearl~4 |   -.0960278    -.0713877         -.02464        .0054729
    threeyearl~3 |   -.0621587    -.0422817        -.019877        .0043954
    threeyearl~2 |   -.0381616     -.024185       -.0139766         .004271
           fyear |
           1973  |   -.0087377     .1890395       -.1977772         .073623
           1974  |    .1331738     .4299919       -.2968182         .038589
           1975  |    .3555417     .3464118        .0091299        .0029034
           1976  |    .1087034     .3071708       -.1984674        .0640228
           1977  |    .1105327     .3871217        -.276589        .0375589
           1978  |    .3593925      .353362        .0060305        .0034913
           1979  |    .1713499     .3791545       -.2078046        .0635144
           1980  |    .1297886     .4463304       -.3165419        .0372254
           1981  |    .4478633     .4369824        .0108809        .0047124
           1982  |    .2369618     .4975542       -.2605924          .03748
           1983  |    .0977037     .4001034       -.3023997        .0354404
           1984  |    .2916145      .280282        .0113325        .0060974
           1985  |   -.0373037     .2098304       -.2471341        .0353315
           1986  |   -.0470924     .2459517       -.2930441        .0342126
           1987  |    .1708168     .1681367        .0026801        .0066814
           1988  |    .0011142     .2314513       -.2303371        .0330875
           1989  |    .0831545      .386713       -.3035585        .0340699
           1990  |    .5597893      .564576       -.0047867        .0083401
           1991  |    .0853167     .3407615       -.2554448        .0311305
           1992  |    .1123498     .4232191       -.3108694         .031052
           1993  |    .4048187     .4079954       -.0031767        .0118118
           1994  |    .3129364     .5885748       -.2756384        .0290419
           1995  |    .1527503     .4590592       -.3063089        .0284984
           1996  |    .2945556     .2923506         .002205        .0130857
           1997  |   -.0688455     .2156561       -.2845017        .0268231
           1998  |   -.0510029      .268839       -.3198419        .0263754
           1999  |    .2958934     .3154769       -.0195835        .0135006
           2000  |    .1262671     .4283473       -.3020802         .025674
           2001  |    .0674034     .3986064        -.331203         .022844
           2002  |    .3120492     .3385591       -.0265099        .0141341
           2003  |    -.037596     .2524731       -.2900691         .021981
           2004  |   -.1950008     .1465625       -.3415633        .0194432
           2005  |   -.0059129     .0084231        -.014336        .0144474
           2006  |   -.4203471    -.1263524       -.2939947        .0204661
           2007  |   -.2529447     .0825848       -.3355294        .0184146
           2008  |    .0657512     .0962223       -.0304711        .0151489
           2009  |   -.0474712     .2929964       -.3404676        .0173613
           2010  |   -.0075072     .3500013       -.3575085          .01491
           2011  |    .3860109     .4232968        -.037286        .0148488
           2014  |    .2824824     .3376351       -.0551527        .0165962
    ------------------------------------------------------------------------------
                               b = consistent under Ho and Ha; obtained from xtreg
                B = inconsistent under Ha, efficient under Ho; obtained from xtreg
    
        Test:  Ho:  difference in coefficients not systematic
    
                     chi2(43) = (b-B)'[(V_b-V_B)^(-1)](b-B)
                              =      171.62
                    Prob>chi2 =      0.0000
                    (V_b-V_B is not positive definite)
    This suggest the fixed effects model is correct. Does it make sense to use different specifications (re, fe) for including or excluding company dummies? What I did for now was assume that the fixed effects model is correct as the authors also state they use a fixed effects. When I use the fixed model xttest3 does indeed show that I have heteroskedasticity (p<0.000). So I need to cluster the standard errors. As mentioned, the authors state that allow for clustering at both year and company level. I think this is because the errors can also be correlated via the years (if the stock market does well, everybody has a high return and vice versa).


    Code:
    xtreg y x1, vce(cluster)
    Only allows for one variable, so I found the reghdfe package here https://www.statalist.org/forums/for...try-year-level.



    I now used the following code for the regression with time fixed effects:
    Code:
    reghdfe indexret3 threeyearlgq4 threeyearlgq3 threeyearlgq2, absorb(i.fyear) vce(cluster i.fyear i.company)
    And for the time and company fixed effects:
    Code:
    reghdfe indexret3 threeyearlgq4 threeyearlgq3 threeyearlgq2, absorb(i.fyear i.company) vce(cluster i.fyear i.company)
    Does this all seam correct? I feel the last model makes sense, but I am not sure if it makes sense to cluster at the firm AND company level if I only include time fixed effects (or are clustering and dummies not related to each other?).

    Sorry for the long elaborate post and already a massive thanks in advance.

    Best,
    Niels

    PS I know of the xtscc command, but want to use this in a robustness check without removing the overlapping years.

  • #2
    You didn't get a quick answer. Yes, your post is way too long.

    "the firm AND company level" - normally companies are firms. Clustering and dummies are not the same. Dummies allow for a step function in a given set of observations. Clustering allows for correlation among the errors in a given set of observations. Dummies might (just might) change the errors to alleviate the need for clustering, but that is just a possibility. Your last reghdfe looks like what the paper was doing. However, it might still give slightly different results - there are often differences in sample, etc.

    Comment


    • #3
      Hi Phil,

      Thank you for your reply.

      I apologize again for the long post. I will try to keep it shorter next time.

      Thank you for your explanation and confirmation.

      Best,
      Niels

      Comment

      Working...
      X