Regime-conditional factor investing — why one factor recipe never works in every market
Momentum works in risk-on, quality wins in risk-off, and value needs both to behave. Which factors to weight when isn't optional — it's the difference between consistent alpha and getting whipsawed.
Every factor has a market it loves and a market that chews it up. Momentum soars in trending risk-on phases and gets decimated in mean-reverting chop. Value compounds quietly in risk-off stress and disappears in growth-led bull runs. Quality wins on average but lags during late-cycle euphoria. The mistake retail quant tooling makes is treating the twelve factor recipe as static — the same weights in every market. That costs you material alpha, not rounding error.
Why regime-static factor weights are wrong
The original multi-factor literature (Fama-French 1992, Carhart 1997, Asness-Moskowitz-Pedersen 2013) reports unconditional long-run alphas. Momentum delivers ~8% annualised; value delivers ~4%; quality ~3%; etc. What gets lost in the summary statistic is the variance of the conditional return. Momentum in 2007 and in 2019 looks nothing like momentum in 2008 and in 2022. One year's +25% follows by the next year's -15%.
Greg Baltas and co-authors' Timing Momentum with Volatility(2015) showed this explicitly. Unconditional momentum delivered 0.81 Sharpe over the 1974-2015 sample. Momentum conditioned on a simple volatility-regime filter — long only when realised volatility was below the long-run median — delivered 1.34 Sharpe over the same period. Same factor. Same securities. Just turned off during high-vol regimes where the signal reverses.
Three regimes, three factor recipes
DeepVane's regime detector produces a three-way posterior — not a binary bull/bear flag. The three states and what empirically works in each:
Risk-on
Market drift positive, volatility low, breadth strong. Factors that historically earn their alpha here:
- Momentum — trending markets reward persistence
- Growth-momentum interaction (Q × V × M) — Asness 2013 shows the interaction term compounds in risk-on
- Short squeeze setups — crowded shorts mechanically cover on rising prices
- PEAD drift — earnings beats follow through cleanly
Factors to de-weight in risk-on: deep value (gets lapped by growth), accruals (high-accrual names can keep running), sector momentum (less differentiation when everything rises).
Risk-off
Market drift negative, volatility elevated, defensive rotation active. What wins:
- Quality — strong balance sheets survive stress better; the relative performance spread is widest here
- Value — cheap-and-clean stocks (Piotroski winners) outperform the broad market
- Sector momentum (defensive) — staples, utilities, healthcare lead relative
- Accruals (negative side) — cash-heavy balance sheets reprice higher
Factors to de-weight in risk-off: raw momentum (trends reverse), short-squeeze patterns (shorts correct get vindicated in drawdowns), growth-interaction (valuation compression hits hardest).
Transition
The dangerous state. Regime-detection posterior is neither clearly risk-on nor risk-off — fresh regime, low stability, direction ambiguous. Historically this is where static factor models get hurt because they bet their risk-on recipe into a regime flip.
Our honest answer in transition is to widen intervals, not reallocate weights. Transition regimes admit uncertainty. Running a confident long-short on either regime's recipe during transition is a known way to give back accumulated alpha.
How DeepVane operationalises the regime-dependence
One Bayesian online changepoint detector (Adams-MacKay 2007) maintains a posterior over the run-length since the last regime shift. From that posterior we derive a three-way probability vector q_t. The vector drives four coherent downstream decisions at once:
- Factor weight blend. Each regime has its calibrated weight vector; the composite weight is q_t-weighted.
- Covariance blend. The Markowitz optimizer uses tail-dependence blended with correlation at regime-specific ratios.
- Interval width. Conformal intervals scale wider when transition posterior is high.
- Dynamic exposure process noise. The Kalman DLM tracks factor exposures with process noise driven by change-probability — exposures pivot fastest on regime-change days.
The important design choice: one posterior, four uses. The engine stays internally consistent as regimes shift because a single decision propagates everywhere. Published implementations typically wire one of these four; wiring all four together is the composition moat (see What's defensible).
What this looks like for an individual ticker
Take NVDA as a worked example. Quality: 76, Value: 55, Momentum: 42, Accruals: 26 (concerning), NLP tone: 23 (weak 10-K).
- In risk-on, this ticker might still score ~65 because momentum and growth-interaction weights dominate; the accruals warning is under-weighted.
- In risk-off, the same factor values might score ~45 because quality weight rises, value alignment is mixed, and the accruals + NLP combination triggers the QUALITY_CRACK confluence pattern.
- In transition, we widen the interval from ±10 to ±15 and de-weight the composite toward the prior, declining to make a strong claim until the regime clarifies.
The composite changes as the regime posterior changes. That's the point. A static factor model would show the same score until the next earnings report; regime-conditional scoring updates with the market environment the ticker lives in.
Practical implications
For a DeepVane user:
- Watch the regime indicator, not just the score. A ticker with score 65 in risk-on has different expected behaviour than the same ticker with score 65 in risk-off. Look at the RO / TX / RX pill next to the ticker.
- Believe transition. When the regime says transition, the engine is admitting it can't commit. Position sizes should reflect that — wider intervals mean smaller positions, not the same conviction at ambiguous signal strength.
- Cross-check pattern with regime. A DEFENSIVE_REGIME_WINNER pattern fires only in risk-off; a GROWTH_REGIME_ALIGNED pattern fires only in risk-on. The regime gate on these patterns is intentional — they're regime-conditional by construction, not by coincidence.
Where to see this live
The Coherence audit page publishes the live BOCPD regime posterior (q_risk_on, q_transition, q_risk_off, stability, expected run-length) with every load. The Methodology overview explains the regime detector's structural role without naming the specific hyperparameters. Individual ticker pages show the regime pill so you can see what recipe is active when reading that stock's composite.
Regime-conditional factor investing isn't a new idea — the academic literature has been clear on it since the 1990s. The practical gap has been tooling. Retail quant screens don't condition on regime because regime detection is harder than factor calculation. DeepVane does both, and exposes both transparently.