Skip to content

View translation

HyperliquidEthDonchianTurtleBreakoutLS

Hypotheses

Hyperliquid ETH Donchian Channel Breakout Trend-Follower, Long-Short (Single-Instrument ETHUSD.HYPERLIQUID, DAILY Bars — Enter on a Clean N-Day High/Low Breakout, Ride the Directional Expansion with a Chandelier Trailing Stop, Flat Between Breakouts; Classic Turtle, 2-Parameter)

Hypotheses

A LONG-SHORT, SINGLE-INSTRUMENT, PURE-OHLCV directional TREND-BREAKOUT strategy on ETHUSD.HYPERLIQUID using DAILY bars (full Hyperliquid history — well clear of the HL sub-hourly limit). It belongs to the ONE family the factory has actually validated out-of-sample — directional trend capture (the BTC dual-timeframe momentum survivor at Sharpe ~1.99) — but implements it through a MECHANISTICALLY DIFFERENT primitive: a Donchian channel breakout (classic Turtle), not an EMA momentum crossover. ENTRY: go LONG when the daily close makes a new N-day HIGH (breakout above the upper Donchian band); go SHORT when it makes a new N-day LOW. Between breakouts, stay FLAT. Position size = a fixed 2% equity risk divided by the ATR-based initial stop distance, capped at 25% notional. EXIT: a chandelier trailing stop — for longs, trail below the highest close since entry minus atr_mult*ATR(N); reverse for shorts — plus an opposite-side channel flip (a new N-day low while long, or N-day high while short) forces the exit/reversal. No fixed take-profit: let the directional expansion run. Only 2 tuned parameters (channel length N, atr_mult), keeping it robust against the 301-death overfit mode. This is DELIBERATELY NOT any dead family: NOT a funding/basis carry (the SOL/ETH spot-perp and cross-venue funding-differential carries all just died fee_edge/verification_loop — abandoning that family entirely), NOT COIN-M (L51), NOT options (L50), NOT a cross-sectional momentum-rank basket (L52 — this is a single instrument, no ranking), NOT an unhedged long-only structural basket (L48 — this is long-AND-short and sits flat in chop), NOT a non-price gate on a price impulse (L46 — the signal IS the price breakout, no supplementary feed), and NOT a liquidation/quarterly feed at risk of data_unavailable (L47 — ETHUSD.HYPERLIQUID daily bars have full history). It fills three under-represented buckets at once: HYPERLIQUID venue (6.1% vs 20% target), long_short direction (13.1% vs 87% long-only), and it is distinct from the SOL/HL EMA-confluence and ETH/BTC spread proposals already pending. Fee math: a genuine N-day (e.g. 20-55 day) daily breakout that trends produces multi-percent to tens-of-percent moves, an order of magnitude above the ~0.18% Hyperliquid round-trip, and trade frequency is low (a handful of breakouts per year that actually trend), so fee drag is minimal and the per-trade gross edge clears costs by a wide margin BEFORE fees are considered.

Hypotheses

Iteration 3 makes ONE change against the named Layer-4 failure (avg_trade_return_pct 0.063%, PF 0.95, win_rate 0.296): the shape of the stop. A 29.6% hit rate is normal for a breakout system and only pays when winners are several multiples of losers, but iteration 2 used a SYMMETRIC 2.0-ATR chandelier -- it gave back exactly as much on every winner as it risked on every loser, capping the payoff ratio near the break-even level for that hit rate, which is precisely how you get PF 0.95 with a slightly positive per-trade pct. The stop is now asymmetric and monotonic: max(entry - init_stop_mult*ATR, best_close - atr_mult*ATR) for longs (mirrored for shorts), so false breakouts are cut at 1.5 ATR while genuine expansions get a 4.0 ATR leash once they are more than 2.5 ATR in profit. Sizing now risks against the initial (actually-at-risk) stop distance, keeping risk_pct honest. Nothing else moved: signal construction, entry test, channel-flip exit, imports and class structure are unchanged from the code that passed Layers 1-3, and fast stop-outs preserve the ~70 trades/year entry cadence that made the sample measurable and the 15-day holdout non-empty. Honest caveat for the Analyst: QA is right that pure-OHLCV Donchian breakout is a near-zero-survival family here, and payoff asymmetry is the last structural lever available -- if this still returns sub-fee per-trade numbers, the mechanism, not the parameterisation, should be abandoned.

Hypotheses

No robust edge — not worth 2 hours of optimization. Single-instrument pure-OHLCV Donchian trend breakout on ETHUSD.HYPERLIQUID: profit_factor 1.022 and Sharpe 0.188 (CI [-1.05, 1.38] straddling zero, PSR 0.61, IR -0.28) are indistinguishable from no-skill. The +8% headline is entirely a 2024 trend-regime artifact — annual returns are 2024 +24.3%, 2025 -17.2%, 2026 -0.6%, with rolling Sharpe camped at -3 to -5 post-2024, so the last-20% holdout would sit in a negative window and the WF-OOS would fail. It loses in the stressed regime tercile (-23.4%, Sharpe -1.67) and is capacity-blocked (impact_cost_pct 43.8% of gross, capacity_usd only $520k — a promotion blocker). This is the L30/L63/L82 single-instrument directional-trend-breakout class on Hyperliquid (hyperliquid 0/128, the survivable dual-TF variant is Binance-USD-M-specific); base Sharpe 0.19 is the ceiling and the 3-phase deflation only lowers it. With only two tuned parameters there is essentially nothing to tune toward. Failure pattern: no_edge/fee_edge single-instrument OHLCV trend breakout on HL, edge concentrated in one favorable year.

Implementation

Long/short Donchian channel breakout (classic Turtle) on ETHUSD.HYPERLIQUID 4-HOUR bars. calculate_signal returns the continuous normalised channel position (close - mid) / half_range over the prior N bars, so it varies every bar and exceeds +/-1 exactly on a clean breakout. Entry: signal >= +entry_threshold -> LONG (new N-bar high), signal <= -entry_threshold -> SHORT (new N-bar low), flat in between. Exit: an ASYMMETRIC ratcheting stop -- the tight initial stop (init_stop_mult * ATR from the entry price) binds until the trade has run in favour, after which a wide chandelier trail (atr_mult * ATR below the best close since entry, mirrored for shorts) takes over -- plus an opposite-side channel flip. No fixed take-profit. Size: risk_pct of equity across the initial ATR stop distance, capped at 25% of equity notional.

Verification Results

CLEAN RESTART 2026-09-04 — this run's verdict history and learning records were removed and it was restarted from verification. Its previous abandonment came from the pipeline, not from the market: the Layer-2 harness mis-bound @staticmethod helpers (fixed), QA issued terminal performance verdicts on an unoptimized smoke test (removed — QA now judges correctness only), and sandbox timeouts came from backtest-slot starvation (fixed). The hypothesis and the strategy code are unchanged. Verify the code on its merits; performance is decided later by the full backtest and the optimizer.

Backtest Review

Measurable sample (157 trades / 956 days) with clean long+short balance (88L/69S)

Backtest Review

avg_trade_return_pct 0.424% clears the ~0.15% Hyperliquid fee floor (not strictly fee-dead)

Backtest Review

Moderate max drawdown 22.7% and no liquidation; sizing/risk plumbing is sound

Backtest Review

Profit factor 1.022 and Sharpe 0.188 with CI [-1.05, 1.38] straddling zero, PSR 0.61 — indistinguishable from no-skill

Backtest Review

Edge concentrated in 2024 (+24.3%) then negative: 2025 -17.2%, 2026 -0.6%; rolling Sharpe -3 to -5 for long stretches — the post-2024 regime (where the holdout lands) is a net loser

Backtest Review

Loses in the stressed regime tercile (-23.4%, Sharpe -1.67) and information_ratio -0.28 (underperforms buy-hold)

Backtest Review

Capacity-blocked: impact_cost_pct 43.8% of gross, capacity_usd only $520k — edge real only at toy scale

Backtest Review

Class prior L82/L30/L63: single-instrument directional trend breakout on Hyperliquid (hyperliquid 0/128); base Sharpe 0.19 is the ceiling and deflation only lowers it

Iteration History

Verification failed (Layer 4 — QA review): - STRUCTURALLY UNMEASURABLE trade count. Sandbox produced 8 trades over 363 days; the developer's own dry-run gives 43 round trips over ~6 years (~7/year) — far below the ~100-trade floor at which edge separates from noise. At ~7 daily breakouts/year, the Phase-3 15-day holdout (HARD zero-trades gate) will near-certainly contain zero trades (P(0 in 15 days) ~0.75+), so it fails the holdout by construction after the full walk-forward is spent. PSR 0.474, Sharpe CI [-1.78, 1.52] confirm the sample is uninformative. - Negative per-trade edge in the actual sandbox, contradicting the rationale's dry-run. Rationale claims +7.2%/trade (~50x fee floor); the real coded rule on real data over 365 days returns avg_trade_return_pct = -0.087% (negative, below floor), total_return -0.70%, PF 0.90, Sharpe -0.055. The full-history dry-run is a curve-fit artifact the OOS-representative sandbox already falsifies; with 8 trades it is indistinguishable from zero either way. - Already-dead family: pure-OHLCV strategies have ~0% survival, and Donchian/N-day-high breakout is a recurring zero-survivor mechanism class (L7). A low-frequency daily breakout on one crypto perp is a re-parameterization of that dead family.

Iteration History

Verification failed (Layer 4 — QA review): - FEE/EDGE VIABILITY FAILURE. The measurability fix (daily->4H) succeeded (71 trades/364d is measurable) but exposed that the edge does not clear costs: sandbox avg_trade_return_pct = 0.063%, below the 0.15% futures floor (and below the 0.10% low-fee floor), and the account LOST money — total_return -1.72%, Sharpe -0.124, PF 0.95 (<1), win_rate 0.296. The tiny positive per-trade pct coexists with a negative USD expectancy (~-$24/trade), so it is not net-profitable. Indistinguishable from zero (PSR 0.441, Sharpe CI [-1.62, 1.55]); the developer concedes grid t-stats cluster near 1.0. - Dry-run does not reproduce in the sandbox, again. Rationale claims +0.57%/trade over 174 trades; the real coded rule returns 0.063%/trade and a losing total return — mirroring iteration 1 (claimed +7.2%, sandbox -0.087%). The optimistic full-history scan systematically overstates; the sandbox is ground truth and says sub-floor/losing at BOTH clocks tried. - Zero-survivor family: pure-OHLCV Donchian/N-bar breakout has ~0% survival (L7); the developer concedes resampling can't fix that. With a sub-fee, near-zero-t edge there is no credible path to promotion.

Iteration History

Verification failed (Layer 4 — QA review): - PREMISE FALSIFIED — mechanism is sub-fee/negative across every variant tried, and iteration 3 is the worst. avg_trade_return_pct on ETHUSD.HYPERLIQUID: iter 1 (daily, symmetric) -0.087%; iter 2 (4H, symmetric 2-ATR) +0.063% (still a losing book, PF 0.95); iter 3 (4H, asymmetric 1.5/4.0-ATR) -0.625%. Iteration-3 sandbox: total_return -11.87%, Sharpe -0.751, PF 0.66, PSR 0.187, 64 trades. The payoff-asymmetry change — explicitly the last structural lever — backfired: avg_win 1195 / avg_loss 768 = 1.55:1 against a ~2.4:1 break-even at the 29.7% hit rate, because the tight 1.5-ATR initial stop knocks out would-be winners before the wide 4.0-ATR trail engages. The edge is absent, not mistuned. - Zero-survivor family, confirmed by exhaustion. Pure-OHLCV Donchian/N-bar breakout has ~0% survival (L7). Three iterations measured this mechanism across two cadences (daily, 4H) and two stop geometries (symmetric chandelier, asymmetric ratchet); all sub-fee or negative. No structural lever left untested.
Strategy report

Backtest and paper results are hypothetical. Trading involves risk of loss.