*! version 1.0.0 20mar2026

Title

lrmbounds -- Bounds approach to inference using the long-run multiplier (LRM)

Syntax

lrmbounds
depvar
indepvars
[if] [in]
[,
options]

depvar is the dependent variable. indepvars are one or more
independent variables. Data must be tsset before use. Do NOT apply
D., L., or any time-series operators to the variables —
lrmbounds handles all transformations internally.

Lag specification
ardl(numlist) ARDL lag orders (p q1 q2 ...); first entry is
the lag for depvar and subsequent entries for each indepvar,
e.g., ardl(2 1 3) gives an ARDL(2,1,3) model

lags(#) uniform lag order for all variables; shorthand for
ardl(# # ... #)

maxlag(#) maximum lag order for information-criterion search;
default is 4

lagsel(string) information criterion for automatic lag selection:
bic (default) or aic

Model specification
trend include unrestricted time trend (Case V); default is
unrestricted constant only (Case III)

noconstant suppress constant term

robust heteroskedasticity-robust (HC1) standard errors

bewley compute LRMs also via Bewley (1979) instrumental
variables; the LRM is obtained directly from the IV coefficient with
an asymptotically valid standard error

Display
nostars suppress significance stars (***, **, *)

nodiagnostics suppress the diagnostic-test table

level(#) set the confidence level for CIs; default is 95

Graphs
graph export six publication-quality PNG graphs

graphdir(string) destination folder for graph files; default is
lrmbounds_graphs

Description

lrmbounds implements the bounds approach to inference on long-run
relationships proposed by Webb, Linn, and Lebo (2019, 2020). It provides
a complete six-step workflow:

Step 1. Estimate the conditional error-correction model (ECM).

Step 2. Test for a level relationship via the PSS (2001) F-bounds test.

Step 3. Test the error-correction rate via the PSS t-bounds test.

Step 4. Classify the equilibrium (non-degenerate vs. degenerate).

Step 5. Compute LRMs and test each one using the Webb et al. (2019)
critical-value bounds (Tables 3-6).

Step 6. Run diagnostics and (optionally) produce visualizations.

Why this matters. Standard inference on LRMs requires knowing whether
variables are I(0) or I(1), but unit-root tests often give inconsistent
results. The bounds approach allows valid inference regardless of
the (unknown) integration order, at the cost of an area of indeterminacy
where the analyst must acknowledge the uncertainty.

Key innovation. While PSS (2001) bounds test the existence of a
level relationship, they do not test individual LRMs. Webb et al. (2019)
derive critical-value bounds for the LRM t-statistic via 100,000
Monte Carlo replications. These allow the researcher to test whether each
independent variable has a significant long-run effect on the dependent
variable — without knowing integration orders.

Methodology

The conditional ECM

The conditional ECM is specified as (Webb 2019, eq. 5):

Delta_y_t = c + psi_yy * y_ + psi_ * x_ + sum(delta_i * Delta_z_) + omega * Delta_x_t + u_t

where psi_yy is the error-correction rate, psi_ are coefficients
on the lagged levels of independent variables, and the first-differenced
terms capture short-run dynamics.

The formulation requires weak exogeneity: x_t must not respond to the
long-run equilibrium with y_t (PSS Assumption 3).

PSS F-bounds test

Tests H0: psi_yy = psi_ = 0 (no level relationship). Critical values
form bounds:

I(0) bound (lower): all regressors are stationary

I(1) bound (upper): all regressors have unit roots

If the F-statistic exceeds the I(1) bound, reject H0 regardless of
integration orders. If it falls below the I(0) bound, fail to reject.
Between the bounds: inconclusive.

Degenerate equilibria

Rejecting the F-test null does NOT guarantee a valid equilibrium. Webb
(2019, Table 1) classifies four alternatives:

H_A1 psi_yy = 0, psi_ != 0: Nonsense — y is a unit root

H_A2 psi_yy != 0, psi_ = 0: Degenerate — y is independent of x

H_A3a psi_yy != 0, psi_ != 0: Valid cointegrating equilibrium

H_A3b psi_yy != 0, psi_ != 0: Valid conditional stationary equilibrium

The long-run multiplier

The LRM for regressor x_j is (Webb 2019, eq. 8):

theta_j = -psi_ / psi_yy

Standard errors are computed via the delta method (eq. 12).
With the bewley option, LRMs are also estimated via the Bewley (1979)
IV regression (eq. 13-14), where x_t in levels is instrumented by Delta_x_t
and Delta_y_t. The IV coefficient directly gives theta with a valid SE.

Webb LRM t-bounds test

The core innovation of Webb et al. (2019).

Standard critical values for the LRM t depend on the integration order of
the variables. Webb et al. derive bounds for the LRM t via 100,000
Monte Carlo replications (Tables 3-6).

Decision rule (compare |t_LRM| to the bounds at the chosen alpha):

|t| > Upper Bound: Significant — the LRR holds regardless of I(0)/I(1)

|t| < Lower Bound: Not significant — no LRR under any assumption

Lower < |t| < Upper: Inconclusive — depends on unknown integration order

Output Tables

lrmbounds produces five tables:

Table 1 — Conditional ECM

Full coefficient table of the estimated ECM showing:

Long-run: Error-correction rate (psi_yy on L.depvar), level coefficients
(psi_ on L.indepvars).

Short-run: First differences (contemporaneous and lagged).

Table 2 — PSS Bounds Test

Panel A reports the F-statistic against I(0)/I(1) bounds at 10%, 5%, 1%.

Panel B reports the ECR t-statistic against its bounds.

Table 3 — Equilibrium Classification

Classifies the equilibrium type based on the significance patterns of psi_yy
and psi_, following the taxonomy in Webb (2019, Table 1).

Table 4 — LRM Bounds Test

For each regressor reports the LRM, SE, |t|, and the Webb bounds decision.
When bewley is specified, both delta-method and Bewley IV estimates
appear side by side.

Table 5 — Diagnostics

Reports four diagnostic tests:

Breusch-Godfrey (lags 1 and 4): serial correlation LM test

Breusch-Pagan: heteroskedasticity

Ramsey RESET: functional-form misspecification

Jarque-Bera: normality of residuals

How to Interpret Results

Decision procedure

1. Check the PSS F-test (Table 2, Panel A):

F > Upper Bound: level relationship exists; proceed to Step 2.

Inconclusive or below lower bound: insufficient evidence for an LRR.

2. Check the equilibrium classification (Table 3):

Nondegenerate: LRR is valid; proceed to Step 3.

Degenerate: the apparent relationship is spurious or trivial.

3. Examine the LRM bounds test (Table 4):

For each regressor, check |t_LRM| against the Webb bounds.

This identifies which regressors have long-run effects on y.

4. Check the diagnostics (Table 5) for model adequacy.

What the bounds mean

Webb et al. (2020) show that using standard normal critical values for
LRM t-tests can over-reject the null when variables contain unit roots.
The t-distribution of the LRM shifts to the right under I(1) DGPs:

Under I(0): standard critical values are correct = lower bound

Under I(1): standard values are too liberal = upper bound

Under uncertainty: truth lies between = area of indeterminacy

The area of indeterminacy is a feature, not a bug. It honestly
reflects the analyst's uncertainty about integration orders.

Common pitfalls

1. Do NOT use the GECM simply because it is "algebraically equivalent"
to the ADL. The equivalence holds mechanically; inference rules differ with
I(0) vs. I(1) data.

2. Do NOT rely solely on the PSS F-test. Even after rejecting the null,
check for degenerate equilibria before interpreting LRMs.

3. Do NOT use standard t-critical values for LRM inference when unit-root
tests are ambiguous. Use the Webb bounds instead.

4. The Bewley IV estimator is asymptotically equivalent to the delta
method but can differ in finite samples. When both are available, compare
them as a robustness check.

Graphs

With graph, six publication-quality PNG files are exported:

File Description

lrm_forest_plot.png LRM point estimates with 95% CI for all regressors

pss_fbounds.png F-statistic plotted against I(0)/I(1) bounds with colored acceptance/rejection zones

actual_vs_fitted.png Time series of actual vs. ECM-fitted values

residual_diagnostics.png Three-panel residual analysis: time series, histogram with kernel density, QQ plot

cusum_stability.png CUSUM test with 5% significance bands

dynamic_multipliers.png Cumulative dynamic multiplier paths

Examples

Example 1: Basic usage

. webuse lutkepohl2, clear

. tsset qtr

. lrmbounds ln_consump ln_inc ln_inv

Estimates ARDL model with automatic BIC lag selection, Case III (constant only).
Produces Tables 1-5 and a summary box.

Example 2: ARDL(2,1,3) lag specification

. lrmbounds ln_consump ln_inc ln_inv, ardl(2 1 3)

Specifies 2 lags for the dependent variable, 1 lag for ln_inc, and 3 lags
for ln_inv. This mimics the notation used in the original ARDL literature.

Example 3: With Bewley IV and time trend

. lrmbounds ln_consump ln_inc ln_inv, bewley trend

Adds unrestricted time trend (Case V). Table 4 displays both delta-method
and Bewley IV estimates side by side. The Bewley IV gives independent SE
estimates that serve as a robustness check.

Example 4: Uniform lag order

. lrmbounds ln_consump ln_inc ln_inv, lags(2)

Sets lag order to 2 for all variables: equivalent to ardl(2 2 2).

Example 5: AIC lag selection with maxlag 8

. lrmbounds ln_consump ln_inc ln_inv, maxlag(8) lagsel(aic)

Searches lag orders from 1 to 8 using the Akaike information criterion
instead of the default BIC.

Example 6: Robust SEs with all visualizations

. lrmbounds ln_consump ln_inc ln_inv, robust bewley graph

HC1 robust standard errors. Six graphs exported to lrmbounds_graphs/.

Example 7: Custom graph directory

. lrmbounds ln_consump ln_inc ln_inv, graph graphdir("results/figs")

Example 8: Bivariate case

. lrmbounds ln_consump ln_inc, bewley trend graph

Single regressor. Webb bounds are applied to the single LRM.

Example 9: Accessing stored results

. lrmbounds ln_consump ln_inc ln_inv, bewley

. return list

. display "F-test: " r(F_pss)

. display "LRM(income): " r(lrm_1) " |t| = " abs(r(lrm_t_1))

. display "Decision: " r(lrm_dcode_1)

Example 10: Suppress diagnostics and stars

. lrmbounds ln_consump ln_inc ln_inv, nodiagnostics nostars

Stored Results

lrmbounds stores the following in r():

Scalars

r(N) number of observations

r(k) number of independent variables

r(optlag) selected lag order for dependent variable

r(r2) R-squared

r(r2_a) adjusted R-squared

r(rmse) root mean squared error

r(ll) log-likelihood

r(ecr) error-correction rate (psi_yy)

r(ecr_se) standard error of ECR

r(ecr_t) t-statistic of ECR

r(F_pss) PSS F-statistic

r(f_lb_5) F-bounds lower bound at 5%

r(f_ub_5) F-bounds upper bound at 5%

r(cv_lb_5) Webb LRM t-bounds lower bound at 5%

r(cv_ub_5) Webb LRM t-bounds upper bound at 5%

r(lrm_j) LRM for j-th regressor (delta method)

r(lrm_se_j) standard error of j-th LRM

r(lrm_t_j) t-statistic of j-th LRM

Macros

r(depvar) dependent variable name

r(indepvars) independent variable names

r(f_decision) F-bounds test decision text

r(f_dcode) F-bounds decision code: reject, inconclusive, or fail

r(equil_type) equilibrium classification text

r(equil_code) equilibrium code: valid, nonsense, degenerate, or na

r(lrm_decision_j) LRM bounds decision for j-th regressor

r(lrm_dcode_j) LRM decision code: reject, inconclusive, or fail

Technical Notes

1. Lag selection. When neither ardl() nor lags() is
specified, lrmbounds searches over uniform lag orders from 1 to
maxlag() using BIC (default) or AIC. With ardl(), the user
can set different lag orders for each variable, following the standard
ARDL(p, q1, q2, ...) notation.

2. Critical values. F-bounds and ECR t-bounds from Pesaran, Shin, and
Smith (2001, Tables CI-CII). LRM t-bounds from Webb, Linn, and Lebo
(2019, Tables 3-6). Small-sample adjustments based on Narayan (2005).

3. Bewley IV. The Bewley (1979) regression estimates the LRM directly
by instrumenting x_t in levels with Delta_x_t and Delta_y_t. This gives
an independent SE estimate that does not rely on the delta method. When
both are available, comparing them serves as a specification check.

4. Delta method. LRM = -psi_/psi_yy. The variance is computed
using the gradient vector g = (-1/psi_yy, psi_/psi_yy^2) applied to
the OLS variance-covariance matrix.

5. Degenerate equilibria. Even when the PSS F-test rejects the null,
the relationship can take four forms (Webb 2019, Table 1). Only H_A3
(nondegenerate) represents a valid long-run relationship. lrmbounds
automatically classifies the equilibrium type.

6. Diagnostics. Breusch-Godfrey uses the auxiliary regression of OLS
residuals on all regressors plus lagged residuals (LM test). Breusch-Pagan
regresses normalized squared residuals on the regressors. Ramsey RESET
adds powers of fitted values. Jarque-Bera tests skewness and kurtosis.

7. Deterministic specification. Case III (default) includes an
unrestricted constant; Case V (trend) adds an unrestricted time trend.
The appropriate critical values are selected automatically.

8. Software requirements. Stata 14.0 or later. No external
dependencies; all critical values are hardcoded from the original tables.

References

Bewley, R. 1979. The direct estimation of the equilibrium response in a
linear dynamic model. Economics Letters 3: 357-361.

De Boef, S. and L. Keele. 2008. Taking time seriously.
American Journal of Political Science 52(1): 184-200.

Enns, P.K., N.J. Kelly, T. Masaki, and P.C. Wohlfarth. 2016. Don't jettison
the general error correction model just yet.
Research & Politics 3(2): 1-16.

Grant, T. and M.J. Lebo. 2016. Error correction methods with political time
series. Political Analysis 24(1): 3-30.

Keele, L., S. Linn, and C.M. Webb. 2016. Treating time with all due
seriousness. Political Analysis 24(1): 31-41.

Narayan, P.K. 2005. The saving and investment nexus for China: Evidence from
cointegration tests. Applied Economics 37(17): 1979-1990.

Pesaran, M.H. and Y. Shin. 1998. An autoregressive distributed-lag modelling
approach to cointegration analysis. In S. Strom (ed.),
Econometrics and Economic Theory in the 20th Century: The Ragnar Frisch
Centennial Symposium. Cambridge University Press.

Pesaran, M.H., Y. Shin, and R.J. Smith. 2001. Bounds testing approaches to
the analysis of level relationships.
Journal of Applied Econometrics 16(3): 289-326.

Philips, A.Q. 2018. Have your cake and eat it too? Cointegration and dynamic
inference from autoregressive distributed lag models.
American Journal of Political Science 62(1): 230-244.

Webb, C.M., S. Linn, and M.J. Lebo. 2019. A bounds approach to inference
using the long run multiplier.
Political Analysis 27(3): 281-301.

Webb, C.M., S. Linn, and M.J. Lebo. 2020. Beyond the unit root question:
Uncertainty and inference in time series models.
Journal of Politics.

Author

Dr. Merwan Roudane

Email: merwanroudane920@gmail.com

Version: 1.0.0 (20 March 2026)

Suggested citation:

Roudane, M. 2026. LRMBOUNDS: Stata module for the bounds approach to
inference using the long-run multiplier. Statistical Software Components,
Boston College Department of Economics.

Based on:

Webb, C.M., S. Linn, and M.J. Lebo. 2019. A bounds approach to inference
using the long run multiplier.
Political Analysis 27(3): 281-301.

Webb, C.M., S. Linn, and M.J. Lebo. 2020. Beyond the unit root question:
Uncertainty and inference in time series models.
Journal of Politics.