*! version 1.1.0 2026-05-11

Title

wmcorr -- Wavelet Multiple Correlation

Syntax

wmcorr varlist [if] [in],
[levels(#) filter(name) level(#) plot nodisplay]

Description

wmcorr computes the wavelet multiple correlation of Fernandez-Macho
(2012). At each wavelet scale j, it:

1. Decomposes all variables via MODWT

2. Computes the d×d pairwise correlation matrix P

3. Inverts P and finds max(diag(P^-1))

4. R_j = sqrt(1 - 1/max(diag(P^-1)))

5. The variable achieving max R² is labeled YmaxR

This YmaxR innovation means the dependent variable may change across
scales — a key methodological contribution.

Options

levels(#) decomposition levels (default 4)

filter(name) wavelet filter (default la8)

level(#) confidence level for CI (default 0.95)

plot produce scale-by-scale correlation plot with CI

Examples

. wmcorr x1 x2 x3, levels(4) filter(la8) plot

. mat list e(wmcorr)

. mat list e(ymaxr)

Stored results

e(wmcorr) J × 3 matrix: R, CI_low, CI_up

e(ymaxr) J × 1 vector: variable with max R² per scale

e(N_eff) J × 1 vector: effective sample size per scale

Reference

Fernandez-Macho, J. (2012). Wavelet multiple correlation and
cross-correlation: A multiscale analysis of Eurozone stock markets.
Physica A 391: 1097-1104.

Also see

wavelet, wmreg, wmxcorr, lmodwt