Empirical investigation · Factor attribution
ETF factor exposures, alpha, and out-of-sample stability
The study measures six style ETFs on advertised factor exposure, alpha after multiple-testing correction, rolling parameter stability, and out-of-sample explanatory power.
Revised · research record
Decision summary
The labels were informative; the apparent alpha was not robust
Interpretation
The advertised factor exposures were recovered. No ETF alpha survived a 5% false-discovery threshold across six simultaneous tests.
Decision context
Evaluate a style fund by measured exposures, uncertainty, stability, and implementation. Branding and one unadjusted alpha result are not evidence.
Intended analytical use
Fund selectors, portfolio analysts, wealth and asset-management teams, quantitative researchers, and model reviewers use it to check product labels against measured exposure.
Principal limitation
The conclusion holds for six ETFs, the selected factor menu, one 2015–2026 vintage, and one chronological split. Exposure estimates can change across regimes and specifications.
Data provenance
A dated sample with a pinned vintage
- Aligned sample
- 2015-01-05 – 2026-05-29
- Factor vintage
- 2026-05-29 · sha256:6a8853963fab…
- Price vintage
- 2026-07-06 · sha256:5dc8433e1c99…
- Pinned source
ad24c4999583- Observations
- 2,867 daily rows
- Estimator
- OLS · Newey–West HAC(5) intervals
Factor returns come directly from the Kenneth R. French Data Library. Prices are adjusted-close snapshots stored in this repository. SHA-256 hashes below identify the exact files.
Estimate 01
ETF exposures with 95% confidence intervals
For each ETF, the model regresses daily excess returns on MKT–RF, SMB, HML, RMW, CMA, and momentum. Intervals use Newey–West HAC covariance estimates with five lags. This is an exposure study. It is not the two-pass Fama–MacBeth procedure that estimates cross-sectional factor premia.1
| Factor | Beta | 95% CI | HAC t |
|---|---|---|---|
| Market | 1.106 | [1.076, 1.135] | 73.80 |
| Size | -0.122 | [-0.150, -0.094] | -8.58 |
| Value | -0.306 | [-0.343, -0.270] | -16.37 |
| Profitability | 0.051 | [0.017, 0.084] | 2.94 |
| Investment | -0.186 | [-0.238, -0.134] | -7.01 |
| Momentum | 0.041 | [0.025, 0.058] | 5.00 |
Estimate 02
Rolling versus full-sample QQQ betas
A full-sample beta compresses eleven years into one number. The lines below re-estimate QQQ on a trailing 252-observation window. Dashed references show the corresponding full-sample estimates. Instability is evidence about model scope, not chart noise.
Estimate 03
Out-of-sample explanatory decay
The sample is split in half chronologically. Coefficients estimated on the first half are frozen, then applied to the second. Predictive R² is benchmarked against the holdout mean. A lower bar in the holdout is the measured cost of transporting the exposure map through time.
| ETF | Training R² | Holdout R² | Change | Holdout dates |
|---|---|---|---|---|
| QQQ | 95.1% | 92.9% | -2.1% | 2020-09-14 – 2026-05-29 |
| USMV | 89.6% | 60.0% | -29.6% | 2020-09-14 – 2026-05-29 |
| MTUM | 95.2% | 86.4% | -8.8% | 2020-09-14 – 2026-05-29 |
| VLUE | 94.5% | 82.5% | -12.1% | 2020-09-14 – 2026-05-29 |
| QUAL | 97.5% | 95.3% | -2.2% | 2020-09-14 – 2026-05-29 |
| IWM | 98.5% | 98.0% | -0.4% | 2020-09-14 – 2026-05-29 |
Multiplicity audit
Multiple-testing correction across six simultaneous alpha hypotheses
Raw significance is not a research conclusion. The table reports unadjusted p-values, Holm family-wise adjusted p-values, and Benjamini–Hochberg q-values. On this snapshot, no ETF alpha survives a 5% false-discovery threshold. That correction matters most for the tempting standalone QQQ result.2
| ETF | Annualized alpha | Raw p | Holm adjusted p | BH q | BH 5% decision |
|---|---|---|---|---|---|
| QQQ | 3.29% | 0.0245 | 0.1467 | 0.1467 | Does not survive |
| USMV | -1.23% | 0.5189 | 1.0000 | 0.7784 | Does not survive |
| MTUM | 0.02% | 0.9902 | 1.0000 | 0.9902 | Does not survive |
| VLUE | 0.49% | 0.7738 | 1.0000 | 0.9285 | Does not survive |
| QUAL | -0.74% | 0.4177 | 1.0000 | 0.7784 | Does not survive |
| IWM | -1.14% | 0.1100 | 0.5500 | 0.3300 | Does not survive |
Reproduce
Inspect the computation, not just the chart
Open the
factor notebook at the source commit,
or rebuild the browser artifact with PYTHONPATH=. python3 scripts/build_frontend_research_data.py.
The page deliberately separates data vintage, estimator, uncertainty, holdout rule, and multiplicity decision.
References
- Fama, E. F., and K. R. French (2015), “A Five-Factor Asset Pricing Model,” Journal of Financial Economics 116(1), 1–22. doi:10.1016/j.jfineco.2014.10.010 ↩
- Benjamini, Y., and Y. Hochberg (1995), “Controlling the False Discovery Rate,” Journal of the Royal Statistical Society: Series B 57(1), 289–300. doi:10.1111/j.2517-6161.1995.tb02031.x ↩
- Harvey, C. R., Y. Liu, and H. Zhu (2016), “...and the Cross-Section of Expected Returns,” Review of Financial Studies 29(1), 5–68. doi:10.1093/rfs/hhv059