Regime Rotation (BTC Trend Switch)
Does regime rotation work for crypto? Backtested on real Hyperliquid perps from 2024-08-15 to 2026-07-05, the default settings earned a Sharpe of 0.89 — +75.3% total return with a 30.4% worst drawdown across 87 trades, net of fees, slippage, and funding.
2024-08-15 → 2026-07-05 · net of fees, slippage, and funding · price-only Sharpe 1.08 · only 87 trades, so treat the ratio as a small-sample estimate.
At $1,000, this strategy’s worst historical dip was about $304. Free account, your own Hyperliquid keys — Keel only trades.
How it works
How it works
BTC leads the crypto complex, so this strategy uses it as a single risk switch. Each day, while BTC trades above its 100-day trend line, it holds an equal-weight basket of four majors — BTC, ETH, SOL, and HYPE — at full weight; when BTC closes below the line, it moves entirely to cash. No shorting, no leverage, one decision a day. It is the classic Faber trend-timing model, re-tuned for crypto: the edge is drawdown avoidance, not clever timing, and the diversified basket beats holding BTC alone because the switch protects whatever it holds.
When it works best
It profits across BTC-led uptrends, riding the majors basket while the trend holds and stepping aside before the worst of a downturn. The 100-day line is the sweet spot for crypto: it captures the up-legs while exiting fast enough to matter. A slower 200-day line — the equity-market classic — exits far too late for crypto's faster cycles, and holding the basket beats holding only BTC.
When it struggles
Whipsaws are the main cost: when BTC oscillates around its trend line, the switch flips in and out and each round-trip loses a little — a faster 50-day line churns more for less. The once-a-regime cadence keeps trades low (87 over the window) and holds the worst drawdown to a relatively contained 30.4%, but this is still a directional, long/flat crypto strategy: in choppy or falling markets it sits in cash preserving capital rather than making progress, and it offers no downside protection beyond going flat.
How it’s built
The exact strategy behind this backtest — no black box. Switch to code to see or copy the full definition.
Configuration
Factories
Globals(target_timeframe="1d", bar_offset="12h")Universe(mode="top_volume", top_n=4, market="perp", resolved=["BTC", "ETH", "SOL", "HYPE"], resolved_at="2026-07-06T00:00:00Z")Execution( rebalance="buffered", buffer_threshold=0.1, buffer_mode="relative", rebalance_method="to_edge",)btc_trend = Pipeline([ AssetSelect(symbols=["BTC"]), EWMA(window=2), MarketTrendRegimeFilter(fast_period=2, slow_period=100, index_method="equal_weight"),], name="btc_trend")Pipeline([ PriceDataLoader(timeframe="15min"), TargetTimeframeResampler(), { "basket": [ConstantForecast(value=10.0)], "btc_regime": [btc_trend], }, RegimeGate(signal_key="basket", index_key="btc_regime", condition="index > 0"), EqualWeightSizer(target_leverage=1.0, max_weight=0.25),], name="regime_rotation_crypto")Explore the settings
precomputed · updates instantlyAdjust a setting to see the exact backtested result — including the ones that lost money.
Heads up: small sample.
At $1,000, these settings' worst historical dip was about $304. You land in the editor with this exact setup. Free account, your own keys.
Compare all 4 settings
| Settings | Sharpe | Return | Worst DD | Trades |
|---|---|---|---|---|
| Held BTC/ETH/SOL/HYPE · BTC 200d | 0.37 | 13.5% | −34.7% | 66 |
| Held BTC/ETH/SOL/HYPE · BTC 100ddefault | 0.89 | 75.3% | −30.4% | 87 |
| Held BTC/ETH/SOL/HYPE · BTC 50d | 0.80 | 60.6% | −42.0% | 96 |
| Held BTC only · BTC 100d | 0.55 | 23.3% | −22.8% | 7 |
The data
Monthly returns
| Month | Return |
|---|---|
| 2024-08 | 0.0% |
| 2024-09 | 0.0% |
| 2024-10 | +10.1% |
| 2024-11 | +23.8% |
| 2024-12 | +10.0% |
| 2025-01 | +8.7% |
| 2025-02 | -27.8% |
| 2025-03 | 0.0% |
| 2025-04 | +2.5% |
| 2025-05 | +26.0% |
| 2025-06 | +5.9% |
| 2025-07 | +20.4% |
| 2025-08 | +4.6% |
| 2025-09 | -4.5% |
| 2025-10 | -12.3% |
| 2025-11 | 0.0% |
| 2025-12 | 0.0% |
| 2026-01 | 0.0% |
| 2026-02 | 0.0% |
| 2026-03 | 0.0% |
| 2026-04 | -3.8% |
| 2026-05 | +7.3% |
| 2026-06 | 0.0% |
| 2026-07 | 0.0% |
Which assets it traded
| Share of return | Avg allocation | Days held | % of time held | Asset |
|---|---|---|---|---|
| 48.94 | 0.25 | 348 | 50.51 | HYPE |
| 19.52 | 0.25 | 348 | 50.51 | ETH |
| 10.93 | 0.25 | 348 | 50.51 | BTC |
| 7.47 | 0.25 | 348 | 50.51 | SOL |
How it did in rising vs falling markets
| Market | Days | Return | Sharpe |
|---|---|---|---|
| Rising markets | 294 | +131.4% | 2.77 |
| Falling markets | 392 | -24.3% | -0.31 |
What this is: a historical backtest on real Hyperliquid market data, net of fees, slippage, and funding. Its worst historical drawdown was 30.4% — expect drawdowns of that order or worse. Past performance does not predict future results, and this is not investment advice. Size your account so a full drawdown is survivable.