Strategies
Hyperliquid ETH UTC-Session Opening-Range Breakout, Long-Short (Single-Instrument Perp, 1H, Pure OHLCV, Asia/EU Range -> US-Session Expansion Break, ATR Stop, Session-End/Trailing Exit, Low-Parameter)
Outcome: Abandoned
HyperliquidEthSessionOpeningRangeBreakoutLS1H
Outcome Summary
This strategy targeted the factory's two biggest portfolio gaps — the Hyperliquid venue and long-short direction — with a clean, low-parameter intraday opening-range breakout on ETH that traded the US-session resolution of the Asia/EU range. It ran exactly as designed with a balanced long/short book, but the premise simply had no directional edge on ETH HL over the tested window: negative Sharpe (-2.15), profit factor 0.816, and -19.4% return, all worsened by fee drag consuming 18% of gross on 1H churn. With no bug to iterate on and only 193 days of single-regime history, the analyst abandoned it at the backtest-review gate rather than optimize noise. It never reached optimization, risk review, or paper trading.
Hypothesis
Iteration 2 fix for the Layer-2 synthetic failure: `_bar_ts()` was a `@staticmethod`, but the Layer-2 `_StrategyProxy` rebinds strategy methods so `self._bar_ts(bar)` passed `(self, bar)` = 2 args to a 1-arg static function, raising TypeError on every scenario. Converted `_bar_ts` to a normal instance method `def _bar_ts(self, bar)` so the signature matches under both direct and proxied invocation. This is the smallest possible change — all signal logic, session/range structure, ATR bracket exits, leverage-aware sizing, imports, and class structure (all of which passed Layer 1) are untouched, so no earlier layer regresses.
Not worth optimizing: the base backtest is fundamentally losing, not marginal. The raw signal has a NEGATIVE edge (profit_factor 0.816 — gross losses exceed gross wins, Sharpe -2.15, Sortino -4.83, negative expectancy, PSR 0.0395), and it is compounded by punishing cost drag inherent to the 1H design (commission 18.06% of gross plus ~$17.7k impact). The strategy implements the hypothesis correctly (193 trades, ~1/day, balanced long/short, session-end flat), so there is no code bug to iterate on — the intraday UTC-session opening-range premise simply has no directional edge on ETH HL over the tested window. The sample is also only 193 days (single regime), so best-of-N optimization would fit ~6 months of noise rather than find a robust edge. Optimization cannot flip a negative-PF, high-fee signal into a promotable one; abandon rather than spend 2 hours. (If the session-structure idea is pursued later, it needs a longer, multi-regime history and a far lower-frequency construction to escape the fee axis — a premise reframe, not a parameter tune.)
Implementation
Long-short intraday opening-range-breakout on ETHUSD Hyperliquid perp (1H, pure OHLCV). Builds a daily opening range over the first range_hours from 00:00 UTC, then trades the first clean close-break of that range in the break's direction during the US session, one trade per UTC day, with an ATR initial stop plus ATR trailing stop and a session-end/day-rollover flat (no overnight carry).
Verification Results
Backtest Review
- Sharpe
- -2.15
- Total return
- -19.43%
- Max drawdown
- 25.01%
- Trades
- 193
- Win rate
- 40.4%
- Profit factor
- 0.82
Strategy functions and matches the hypothesis: 193 entries (~one/UTC day), balanced 100 long / 93 short, intraday with session-end flat (avg hold 5h17m, exposure 19.4%) — the ORB mechanism is faithfully implemented, no code bug.
Fills genuine portfolio gaps (Hyperliquid venue + long_short) and is pure-OHLCV, low-parameter as intended.
Fundamentally negative edge: Sharpe -2.15 (CI up to only +0.08), Sortino -4.83, profit_factor 0.816 (gross losses exceed gross wins — the raw directional signal loses), negative expectancy (-$102/trade), total_return -19.4%, PSR 0.0395.
Severe, structural cost drag: commission_pct_of_gross 18.06% plus ~$17.7k impact — 1H session churn is fee-hostile and would consume any thin edge even if one existed.
Thin, single-regime sample: only 193 days of HL history — optimization would fit ~6 months of noise, not a robust edge.
Outcome Summary
An intraday 1H session-structure breakout must clear a very high fee bar (here 18% of gross) and needs a long, multi-regime history to validate — a negative-profit-factor, high-fee signal on a thin single-regime sample cannot be optimized into a promotable strategy and would require a lower-frequency premise reframe, not a parameter tune.
The analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate: the raw directional signal lost money (profit factor below 1.0) with no code bug to fix, the punishing 1H-churn cost drag would consume any thin edge, and the single-regime 193-day sample meant optimization would only fit ~6 months of noise.
A long-short, single-instrument intraday opening-range-breakout strategy on ETHUSD.HYPERLIQUID 1H perpetual futures that used the Asia/Europe hours from 00:00 UTC to define a daily range, then traded the first clean US-session break of it (long on an upside break, short on a downside break) with an ATR trailing stop and session-end flat — chosen to fill the under-represented Hyperliquid venue and long-short direction buckets with pure OHLCV.
It implemented the hypothesis faithfully (193 entries, ~one per UTC day, balanced 100 long / 93 short, avg hold 5h17m) but had a fundamentally negative edge: total return -19.4%, Sharpe -2.15 (CI up to only +0.08), Sortino -4.83, profit factor 0.816, negative expectancy (-$102/trade), PSR 0.0395, and a 25% max drawdown. It was also crushed by fee drag, with commissions at 18.06% of gross plus ~$17.7k of impact, over just 193 days of Hyperliquid history.
Backtest and paper results are hypothetical. Trading involves risk of loss.