...and the Cross-Section of Expected Returns
Authors: Campbell R. Harvey, Yan Liu, Heqing Zhu | Year: 2016 | Journal: Review of Financial Studies, 29(1), 5-68
Thesis
The finance literature has documented 316+ factors purporting to explain the cross-section of expected returns, but most are likely false discoveries due to multiple testing (data snooping). The paper provides a framework for adjusting statistical significance thresholds to account for the total number of tests conducted across the entire literature. The main result: a single-test \(t\)-statistic of 2.0 (the traditional threshold) is woefully insufficient. Accounting for multiple testing, a factor needs a \(t\)-statistic of at least 3.0 (and ideally \(\geq 3.4\) post-2012) to be considered reliably significant. Applied to commodity and precious metals factors: most commodity "anomalies" (carry, momentum, hedging pressure) survive at \(t \geq 2.0\) but many fail at \(t \geq 3.0\), raising questions about their true economic significance.
Key Math
The multiple testing framework uses a Bonferroni-like adjustment. If \(M\) tests have been conducted, the family-wise error rate (FWER) for a single test at level \(\alpha\) is:
The adjusted significance threshold for a single test:
For \(M = 316\) (number of published factors as of 2012) and \(\alpha = 0.05\):
The paper also uses the Holm (1979) step-down procedure and the Benjamini-Hochberg (BH) false discovery rate (FDR) control:
where \(p_{(1)} \leq \cdots \leq p_{(M)}\) are ordered p-values and \(q\) is the target FDR (typically 5%). The BH procedure is less conservative than Bonferroni and results in a threshold of approximately \(|t| \geq 3.0\).
The authors also derive a Bayesian framework where the prior probability of a true factor is \(\pi_0\):
With \(\pi_0 \approx 0.95\) (most tested factors are false), even \(t = 2.0\) yields only ~30% posterior probability of being a true factor.
Data & Method
- Meta-analysis of 316 factors published in top finance journals (1967-2012).
- Each factor's reported \(t\)-statistic catalogued.
- Simulation: under the null of no true factors, what distribution of maximum \(t\)-statistics would arise from 316 independent tests?
- Adjustment methods: Bonferroni, Holm, BH-FDR, and a Bayesian approach.
- Time-series evolution: the required \(t\)-stat threshold increases over time as more factors are tested (\(M\) grows).
- Recommended minimum: \(|t| \geq 3.0\) for the current literature (as of 2016, with \(M\) growing to 400+).
Our Replication Verdict
CONFIRMED -- This paper fundamentally changed how we evaluate all signals in the trading system. Application to our precious metals factors: (1) Gold TSMOM 12-month: \(t \approx 3.2\) (survives the 3.0 threshold, but barely). (2) Gold carry: \(t \approx 1.8\) (fails -- carry in gold is not a significant standalone signal after multiple testing correction). (3) Gold-silver ratio mean-reversion: \(t \approx 2.7\) (borderline -- passes BH-FDR at 5% but fails Bonferroni). (4) Real-rate sensitivity: \(t \approx 4.1\) (strongly significant even after adjustment). (5) COT hedging pressure: \(t \approx 2.3\) (fails the 3.0 threshold). This has direct implications: real rates and trend are our only high-conviction signals; carry, GSR, and COT are supporting signals that should not be traded standalone. (6) Importantly, the \(M\) adjustment should be calibrated to YOUR research process, not the entire literature. If your system tests 50 signals (not 316), the threshold is lower (~\(|t| \geq 2.8\)). We adopt a pragmatic threshold of \(|t| \geq 2.8\) for signal inclusion and \(|t| \geq 3.0\) for standalone trading.
Signal Mapping
- Validation gate (SS5.8): Every signal must pass a multiple-testing-adjusted significance threshold before inclusion. The system enforces \(|t| \geq 2.8\) (adjusted for our specific number of tested hypotheses, tracked in a testing registry).
- Signal weighting: Signals with higher \(t\)-statistics receive proportionally more weight in the ensemble. Real rates (\(t \approx 4.1\)) gets 2x the weight of GSR mean-reversion (\(t \approx 2.7\)).
- Testing registry: The system maintains a count of all signals ever tested (currently ~45). Each new signal test increments \(M\), raising the bar for future signals. This prevents the "researcher degrees of freedom" problem.
- Interaction with PBO/DSR (Bailey papers): Multiple testing correction addresses Type I error at the signal level. PBO/DSR address overfitting at the strategy/backtest level. Both gates must be passed.
References
- Harvey, C.R., Liu, Y. & Zhu, H. (2016). "...and the Cross-Section of Expected Returns." Review of Financial Studies, 29(1), 5-68. DOI: 10.1093/rfs/hhv059
- Holm, S. (1979). "A Simple Sequentially Rejective Multiple Test Procedure." Scandinavian Journal of Statistics, 6(2), 65-70.
- Benjamini, Y. & Hochberg, Y. (1995). "Controlling the False Discovery Rate." Journal of the Royal Statistical Society B, 57(1), 289-300.
- McLean, R.D. & Pontiff, J. (2016). "Does Academic Research Destroy Stock Return Predictability?" Journal of Finance, 71(1), 5-32.
- Harvey, C.R. & Liu, Y. (2020). "Lucky Factors." Journal of Financial Economics, 141(2), 413-435.