Today's signals
The market regime (hidden Markov model on SPY) decides whether to trade at all. The primary rule proposes a side; the meta-model keeps it only if P(success) beats Kelly, and sizes it at ½ Kelly × volatility target. Click a row for details.
Loading…
Signal & risk
✦ Regime → primary rule → meta-modelRisk (fat tails, never a normal distribution)
Honest validation
Purged K-Fold · CPCV · Deflated SharpeHow the strategy works
1. Regime first. A 3-state hidden Markov model on SPY returns and volatility (forward-filtered, so it never looks ahead) labels the market as calm, normal or stress. In stress the system stays flat.
2. Primary rule. If the Hurst exponent is ≥ 0.5 the asset is persistent and the rule follows the 20-day move (momentum). If it is < 0.5 the rule trades mean reversion: an Ornstein-Uhlenbeck fit on the distance to fair value gives a z-score and a half-life, and the rule enters when |z| ≥ 1.5 and the half-life is short.
3. Triple barrier. Take profit and stop loss are 1.5 × GARCH volatility scaled to the holding period; the time barrier is the OU half-life (3–20 sessions). Barriers widen automatically when volatility rises.
4. Meta-labeling. An XGBoost classifier on stationary features (log returns, fractionally differentiated price, realized and GARCH volatility, Hurst, z-score, half-life, regime probabilities, beta) estimates the probability that the primary signal ends in profit after costs. That probability sets the size via half Kelly.
5. Validation. Every number in this card is out-of-sample: purged K-fold with embargo, combinatorial purged CV for a distribution of Sharpe ratios, and the Deflated Sharpe Ratio, which penalizes every configuration ever tried (logged in trials_log.csv).