help xtcce ...

Title

xtcce -- Common Correlated Effects Estimation for Static/Dynamic Panels with Cross-Sectional Dependence.

Syntax

xtcce depvar [] ([] = []) [if] [in]
[, dynamic gmm pooled full weighted cov(varlist4) alags(#) res(resname)]

Items in [brackets] are optional, contains any exogenous explanatory variables,
contains any endogenous variables, and lastly contains the instruments.
You must xtset your data before using xtcce; see xtset.

Description

xtcce is for large static or dynamic panel data models (medium to large N and T) that suffer from
cross-sectional dependence (also known as unobserved common factors or common shocks), slope heterogeneity,
and endogenous regressors. It implements the Pesaran (2006) Common Correlated Effects ('CCE') estimator for
static panel estimation, the Chudik & Pesaran (2015) Dynamic CCE estimator for dynamic panel estimation, and
finally the Neal (2015) 2SLS and GMM extensions of both models.

Consider the following panel model:

y_it = rho_i*y_(it-1) + beta_i*x_it + mu_i + gamma_i*f_t + v_it

x_it = Gamma_i*f_t + e_it

where rho_i is the autoregressive coefficient for individual i, x_it is a NTxK matrix of regressors,
beta_i is a 1xK vector of coefficients for individual i, mu_i is the individual-specific fixed effect, f_t is a 1xM
vector of unobserved common factors, gamma_i and Gamma_i are the heterogeneous factor loadings, and v_it and
e_it are the idiosyncratic error terms.

Since both the regressors x_it and the dependent variable y_it depend on the vector of unobserved
common factors f_t, pooled or mean group OLS will provide an inconsistent estimate of rho or beta. The
presence of unobserved common factors is one representation of cross-sectional dependence in panel data. The
idea of common correlated effects estimation, introduced in Pesaran (2006), is to approximate the projection
space of the unobserved common factors with the inclusion of cross section averages of the variables in the
regression equation.

Pesaran (2006) proposed the common correlated effects model (here called CCE-OLS) to consistently
estimate beta_i in the equation above when rho_i = 0 for all i and the regressors are strictly exogenous. It
can be estimated with pooled or mean group OLS, with the latter accounting for slope heterogeneity among panel
units. Chudik and Pesaran (2015) extended this model to allow for a dynamic specification (i.e. rho_i => 0)
and weakly exogenous regressors (here called DCCE-OLS). It achieves this by adding lags of the cross section
averages to the regression. Neal (2015) further extended the CCE/DCCE approach by estimating the regressions
equation(s) with 2SLS or GMM to account for endogenous regressors and improve the efficiency of the DCCE
estimator (please see Neal (2015) for Monte Carlo simulation results that demonstrate this), using further
lags of the variables to form the instrument set.

The result is a powerful and flexible suite of estimation options for large panel models that allows
for cross-sectional dependence, static or dynamic specifications, exogenous or endogenous regressors, fixed effects, and heterogeneous
slopes. Please see the references below for further information on the usefulness of these estimators.

References and Further Reading

Pesaran, M.H. (2006) "Estimation and inference in large heterogeneous panels with a multifactor error structure", Econometrica, 74(4), p.967-1012

Pesaran, M.H. and Chudik, A. (2015) "Common correlated effects estimation of heterogeneous dynamic panel data models with weakly exogenous regressors", Journal of Econometrics, 188(2), p.393-420

Neal, T. (2015) "Estimating Heterogeneous Coefficients in Panel Data Models with Endogenous Regressors and Common Factors", Working Paper

Options

dynamic Required option whenever one or more lag of the dependent variable is added as an
exogenous or endogenous regressor. It adds lags to the cross section averages to ensure consistency, as in
Chudik and Pesaran (2015). The number of lags is automatically set to T^(1/3), but can be changed manually
with the option alags(#) below.

gmm Uses GMM estimation if endogenous and instrumental variables are present in the regression
equation. If this option is not enabled, 2SLS will be used in those instances.

weighted Weights the mean group coefficient results by the standard errors of the individual
coefficients. This option is recommended as a robustness check, and whenever the distribution of beta
coefficients across panel units is volatile.

full Shows regression output for each panel unit in addition to the mean group results at the end.
Has no effect if the option pooled is selected.

pooled Uses pooled regression, as opposed to mean group regression which is the default. To account for
individual-specific factor loadings it interacts the id variable with the cross section averages.
Enabling this option is not recommended when slope heterogeneity is suspected.

cov(varlist4) Adds cross section averages of varlist4 to the regression, without including them
as regressors. This is recommended whenever it is suspected that the number of
unobserved common factors exceeds the number of variables in the model.

alags(#) Changes the number of lags of the cross section averages used in dynamic models to #.
It has no effect if the option dynamic is not enabled.

res(resname) Stores the residuals of the regressions to resname.

Examples

In cases where the regressor x is strictly exogenous:

CCE-OLS:

. xtcce y x

DCCE-OLS:

. xtcce y l.y x, dynamic

For efficiency improvements in the dynamic specification, one might use:

DCCE-2SLS:

. xtcce y x (l.y = l(2/4).y), dynamic

DCCE-GMM:

. xtcce y x (l.y = l(2/4).y), dynamic gmm

In cases where the regressor x is endogenous, one might use:

CCE-2SLS:

. xtcce y (x = l(1/2).x l(1/2).y)

CCE-GMM

. xtcce y (x = l(1/2).x l(1/2).y), gmm

DCCE-2SLS:

. xtcce y (l.y x = l(2/3).y l(1/3).x), dynamic

DCCE-GMM

. xtcce y (l.y x = l(2/3).y l(1/3).x), dynamic gmm

Tip

It is always worthwhile to check the sensitivity of results and try a variety of specifications.
Check the e(bfull) vector after estimation to see the degree of volatility in the estimated beta coefficient
across panel units. Use the option full to see if there are significant outliers or strange results in some of
the panel units, and then consider excluding them. Try a static and a dynamic version of the model. Try
treating either the lagged dependent variable or the regressors as endogenous, and use lags to form the
instrument set. See if the results vary significantly between 2SLS and GMM.

Known Issues

This command will not add cross section averages of any variables with time series operators in order to prevent them
clashing in dynamic models. This is only problematic with differenced variables (e.g. d.x) or when lags of
regressors are used and the contemporaneous observation is not (i.e. l(1/3).x but not x). In these situations, the
variables should be manually transformed prior to estimation.

GMM will not use a HAC weight matrix when the estimator is pooled (due to the limitation of the
command ivregress), in mean group regressions (the default) it will use a HAC weight matrix.

Errors will usually arise when mean group estimation is used and one or more of the panel units have
very small T. Exclude these panel units from the sample to solve this problem.

Saved results

xtcce saves the following in e():

Scalars

e(N) Number of usable observations

e(g_min) Fewest number of observations in an included
panel unit

e(g_max) Largest number of observations in an included
panel unit

e(g_avg) The average number of observations in an included
panel unit

e(N_g) Number of panel units

e(chi2) Chi-squared

e(df_m) Model degrees of freedom

Macros

e(ivar) Panel unit identification variable

e(tvar) Time variable

e(depvar) Dependent variable

Matrices

e(b) Vector of coefficients

e(V) Variance-covariance matrix of the estimates

e(bfull) Complete matrix of the individual-level regression coefficients
(note: not available with option pooled)

Author

Timothy Neal

School of Economics

University of New South Wales

Sydney, Australia

timothy.neal@unsw.edu.au

https://sites.google.com/site/tjrneal/stata-code

Also see

Online: xtmg, xtpedroni, xtset, xtpmg