*! version 1.0.2 24may2026

Title

asycaus -- Asymmetric Granger-causality suite for Stata

Syntax

asycaus subcommand depvar causvar [if] [in] [, options]

asycaus components varlist [if] [in] [, pos(stub) neg(stub) replace]

depvar is the variable that may be caused.

causvar is the candidate cause.

H0: causvar does NOT Granger-cause depvar.

Subcommands (click for detailed help)

subcommand

static Hatemi-J (2012) static asymmetric test with leverage bootstrap

dynamic Hatemi-J (2021) rolling / recursive time-varying test

fourier Nazlioglu, Gormus & Soytas (2016) Fourier asymmetric TY

spectral Bahmani-Oskooee, Chang & Ranjbar (2016) frequency-domain asymmetric (BC)2006

quantile Fang, Wang, Shieh & Chung (2026) quantile asymmetric (+ optional Fourier)

efficient Hatemi-J (2024) efficient SUR test (Pos / Neg / Joint / Pos=Neg)

all Full battery + unified summary + dashboard

components Generate cumulative positive / negative shock components

Description

asycaus implements the full battery of asymmetric Granger causality
tests for time series. Each subcommand decomposes the two series into
cumulative positive and cumulative negative shocks following
Granger and Yoon (2002), then conducts the relevant inference within an
augmented VAR (Toda and Yamamoto 1995).

The package is bivariate by design (testing whether causvar causes
depvar) and follows Hatemi-J's program — the inference is exact when
combined with the leverage bootstrap (Hacker and Hatemi-J, 2006, 2012). The
default lag-selection criterion is the Hatemi-J information criterion
(HJC; Hatemi-J 2003), with AIC, AICC, SBC and HQC also available via
ic().

For each subcommand a professional table is printed and a publication-quality
graph is produced (suppress with nograph).

Options common to most subcommands

option

maxlag(#) maximum VAR lag to search over (default depends on subcommand)

ic(string) aic | aicc | sbc | hqc | hjc (default)

intorder(#) TY augmentation lags (max integration order). Default 1

shock(string) pos | neg | both. Default per subcommand

boot(#) bootstrap replications (where applicable)

seed(#) RNG seed for the bootstrap. Default 12345

lnform take natural log of depvar and causvar first

nograph suppress the graph

saving(filename) save the graph to filename.gph

Subcommand-specific options are documented on each subcommand's help page —
click the subcommand names above.

Examples (clickable)

Load the Lutkepohl demo data and tsset:

webuse lutkepohl2, clear

tsset qtr

1. Generate cumulative pos/neg shocks for browsing:

asycaus components dln_inv dln_inc, pos(p_) neg(n_) replace

2. Static Hatemi-J (2012) test:

asycaus static dln_inv dln_inc, maxlag(4) ic(hjc) boot(500) shock(both)

3. Dynamic Hatemi-J (2021) rolling-window:

asycaus dynamic dln_inv dln_inc, rolling window(40) boot(200) shock(pos)

4. Fourier Nazlioglu et al. (2016):

asycaus fourier dln_inv dln_inc, kmax(3) form(single) shock(both)

5. Frequency-domain Bahmani-Oskooee et al. (2016):

asycaus spectral dln_inv dln_inc, nfreq(50) shock(both)

6. Quantile Fang et al. (2026), with Fourier detrending:

asycaus quantile dln_inv dln_inc, quantiles(0.1 0.25 0.5 0.75 0.9) fourier kmax(2)

7. Efficient SUR Hatemi-J (2024) — also tests Pos = Neg:

asycaus efficient dln_inv dln_inc, maxlag(4)

8. Full battery + dashboard:

asycaus all dln_inv dln_inc, maxlag(4) boot(300)

Stored results

asycaus subcommand stores in r():

Matrices

r(results) full table of statistics, lag, critical values, p-values

Scalars

r(boot) bootstrap replications used

r(maxlag) max lag searched

r(nsub) number of subsamples (dynamic)

r(window) / r(Smin) window length used / Phillips-Shi-Yu min (dynamic)

r(Wpos) r(Wneg) r(Wjoint) r(Wdiff) efficient subcommand statistics

r(p_pos) r(p_neg) r(p_joint) r(p_diff) efficient subcommand p-values

r(kmax) max Fourier frequency searched (fourier)

r(nfreq) number of spectral grid frequencies (spectral)

Macros

r(test) description of the test

r(depvar) / r(cause) variables tested

r(shock) / r(ic) / r(form) / r(mode) selected options

References

Bahmani-Oskooee, M., Chang, T., and Ranjbar, O. (2016). Asymmetric causality
using frequency-domain and time-frequency-domain (wavelet) approaches.
Economic Modelling, 56, 66–78.

Breitung, J., and Candelon, B. (2006). Testing for short- and long-run
causality: a frequency-domain approach. Journal of Econometrics, 132, 363–378.

Enders, W., and Jones, P. (2016). Grain prices, oil prices, and multiple smooth
breaks in a VAR. Studies in Nonlinear Dynamics & Econometrics, 20(4), 399–419.

Fang, H., Wang, C.-H., Shieh, J. C. P., and Chung, C.-P. (2026). The asymmetric
Granger causality between banking-sector and stock-market development and economic
growth in quantiles considering Fourier. Applied Economics, 58(20), 3822–3838.

Granger, C. W. J., and Yoon, G. (2002). Hidden cointegration. UCSD Disc. Paper 2002-02.

Hacker, R. S., and Hatemi-J, A. (2006). Tests for causality between integrated
variables using asymptotic and bootstrap distributions: theory and application.
Applied Economics, 38(13), 1489–1500.

Hacker, R. S., and Hatemi-J, A. (2012). A bootstrap test for causality with
endogenous lag length choice: theory and application in finance.
Journal of Economic Studies, 39(2), 144–160.

Hatemi-J, A. (2003). A new method to choose optimal lag order in stable and
unstable VAR models. Applied Economics Letters, 10(3), 135–137.

Hatemi-J, A. (2012). Asymmetric causality tests with an application.
Empirical Economics, 43, 447–456.

Hatemi-J, A. (2021). Dynamic Asymmetric Causality Tests with an Application.
arXiv 2106.07612.

Hatemi-J, A. (2024). Efficient Asymmetric Causality Tests. arXiv 2408.03137.

Nazlioglu, S., Gormus, N. A., and Soytas, U. (2016). Oil prices and real estate
investment trusts (REITs): gradual-shift causality and volatility transmission analysis.
Energy Economics, 60, 168–175.

Pata, U. K. (2020). How is COVID-19 affecting environmental pollution in US cities?
Evidence from asymmetric Fourier causality test. Air Quality, Atmosphere & Health, 13, 1149–1155.

Phillips, P. C. B., Shi, S., and Yu, J. (2015). Testing for multiple bubbles:
limit theory of real-time detectors. International Economic Review, 56(4), 1043–1078.

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

Author

Dr Merwan Roudane

Email: merwanroudane920@gmail.com

This package is the copyright of the author. Non-commercial use only. Proper
citation required. No performance guarantee is made. Bug reports welcome.

Companion packages on SSC:
caustests,
bcgcausality,
tvgc.

Citation suggestion:

Roudane, M. (2026). asycaus: Asymmetric Granger-causality suite for Stata.
Statistical Software Components, Boston College Department of Economics.