Title

xtpdcause -- Panel Granger non-causality testing robust to
cross-sectional dependence (factor-corrected lag-augmented VAR)

Syntax

xtpdcause depvar causevar [if] [in] [, options]

The data must be xtset as a strongly balanced panel. The test
is of the null that causevar does not Granger-cause depvar.

method(string) CSD correction: panic (principal-component
factors, default), panicca (cross-section averages) or none

pmax(#) maximum VAR lag order (default 4)

dmax(#) number of extra (augmenting) lags = max integration order
(default 1)

ic(#) lag-selection criterion: 1=AIC, 2=BIC (default)

kmax(#) maximum number of common factors (PANIC only; default 3)

Description

xtpdcause implements the panel Granger-causality test of Nazlioglu and
Karul (2024), which controls for cross-sectional dependence through a common-
factor structure before testing for causality. Each unit is estimated as a
bivariate lag-augmented VAR (Toda-Yamamoto): the VAR is fitted with the
selected lag order p plus dmax extra lags, and a Wald statistic tests
that the p lags of causevar are jointly zero in the depvar
equation. The extra lags make the Wald statistic asymptotically chi-square
regardless of the integration/cointegration properties of the series, so no
pre-testing for unit roots or cointegration is required.

The unit-specific Wald p-values are pooled into the Fisher panel statistics
P (chi-square) and Pm (standardized normal), and Holm-adjusted
individual p-values are reported to locate which panels drive a rejection.

method(panic) removes common factors by principal components from the
standardized first differences (Bai-Ng 2004 PANIC); the number of factors is the
Bai-Ng (2002) IC2 minimizer. method(panicca) removes a single common
factor proxied by the cross-section averages (Pesaran-type CCE). method(none)
runs the lag-augmented VAR on the raw data with an intercept (no CSD correction).
xtpdcause is part of the xtpdroot library. See
help xtpdcause methods for the formulas.

Options

method(string): panic (default) extracts principal-component
factors; panicca uses cross-section averages; none applies no
correction (with a VAR intercept).

pmax(#), ic(#): the maximum VAR lag order (default 4) and the
information criterion (1=AIC, 2=BIC, the default) used to select p per unit.

dmax(#): the number of augmenting lags, equal to the maximal
suspected order of integration (default 1). These lags are added but not tested.

kmax(#): the maximum number of common factors when
method(panic) (default 3).

Examples

Does export Granger-cause gdp, factors removed by PANIC?

. xtset country year

. xtpdcause gdp export, method(panic)

The reverse direction, and the cross-section-average correction:

. xtpdcause export gdp, method(panic)

. xtpdcause gdp export, method(panicca)

No CSD correction, AIC lag selection, allow I(2):

. xtpdcause gdp export, method(none) ic(1) dmax(2)

Stored results

xtpdcause is rclass and stores:

Scalars

r(P), r(P_p) Fisher chi-square panel statistic and p-value

r(Pm), r(Pm_p) standardized panel statistic and p-value

r(nf) number of common factors (PANIC/PANIC-CA)

r(N), r(T) panel and time dimensions

Macros

r(cmd) xtpdcause

r(depvar), r(cause) the tested variables

r(method) panic, panicca or none

Matrices

r(units) per-unit id, Wald, p-value, Holm-adjusted p, lag

Interpreting the output

The null is that causevar does not Granger-cause depvar in any
panel. Both P and Pm reject for large values. A rejection means
causevar Granger-causes depvar in at least one panel; the Holm-adjusted
per-unit p-values identify which. Because the common factors are removed first
(PANIC / PANIC-CA), the causal inference is not contaminated by shared global
shocks.

References

Nazlioglu, S., and M. Karul. 2024. Panel Granger causality with
cross-sectional dependence: a common-factor approach. Empirical Economics.

Toda, H. Y., and T. Yamamoto. 1995. Statistical inference in vector
autoregressions with possibly integrated processes. Journal of Econometrics
66: 225-250.

Bai, J., and S. Ng. 2004. A PANIC attack on unit roots and cointegration.
Econometrica 72: 1127-1177.

Author

Dr Merwan Roudane

merwanroudane920@gmail.com

github.com/merwanroudane

Faithful Stata port of the GAUSS routines by S. Nazlioglu (Nazlioglu-Karul
2024); the LA-VAR, PANIC and PANIC-CA panel statistics were validated
byte-for-byte against the GAUSS output. Part of the xtpdroot
library.