Skip to content

View translation

EthCmInverseThirtyMinMomentumIgnitionContinuationLS

Hypotheses

ETH Coin-Margined Intraday Momentum-Ignition Continuation, Long-Short (Single-Instrument ETHUSD_PERP.BINANCE_CM, 30m Bars, Enter the Direction of a Volume-Confirmed Impulse Bar, Trail the Expansion, Pure OHLCV, 3-Parameter)

Hypotheses

A LONG-SHORT, single-instrument intraday continuation strategy on the coin-margined ETH inverse perpetual ETHUSD_PERP.BINANCE_CM, 30m bars, using only OHLCV. It triple-fills the three most under-represented buckets simultaneously: BINANCE_CM venue (3.2% vs >=5% target), LONG-SHORT direction (14.2%), and SHORT horizon (8.8% vs >=10%) — while deliberately staying OFF the over-represented BINANCE USD-M book (72%). The crucial fee lever is the venue: coin-margined taker cost is only ~0.06% round trip (0.10% viability floor) versus 0.15% on USD-M, which is exactly what lets a selective intraday edge clear costs where USD-M scalps cannot. Mechanism is momentum-IGNITION continuation, NOT the squeeze-contraction breakout, VWAP/RSI/Keltner reversion-fade, cross-sectional reversal, or supplementary taker-flow feed that populate the graveyard: it fires only on a volume-confirmed directional impulse bar and rides the expansion. It explicitly guards a SINGLE position (flat-check before every entry) to avoid the pyramiding-to-liquidation bug that killed the DOGE taker-flow sibling, and uses pure OHLCV (the best-surviving data class) with only 3 parameters to stay clear of the 233-death overfit graveyard.

Hypotheses

Iteration 3 addresses the reported Layer-3 sandbox_timeout with the smallest possible change and NO alteration to signal, entry, exit or sizing semantics. Profiling the exact smoke configuration (ETHUSD_PERP.BINANCE_CM 30m, 416-day / ~18k-bar window) locally: the previous code ran 92s against a 66s do-nothing floor for the same window, i.e. ~26s of strategy-side overhead, essentially all of it in two redundant per-bar cache.positions_open() lookups (one in _sync_position_state called from calculate_signal, one at the top of should_exit). Those lookups were unnecessary because the base template already calls should_enter ONLY when flat and should_exit ONLY with an open position, so position state is fully determined by which hook fires: should_enter now resets the trail bookkeeping and records side/entry bar when it returns an order, and should_exit advances the chandelier extreme and applies the trail/time-cap. After the change the same window runs in 73s (close to the 66s engine floor) and is trade-for-trade identical (91 entries, 182 fills; total_return +6.87%, avg_trade_return_pct 0.545%, PF 1.72, win rate 59%, max DD 5.1%) — no earlier layer is touched (imports, class structure and the continuous ATR-normalised ignition signal are unchanged), so Layers 1-2 stay green.

Hypotheses

Measured-but-insignificant single-instrument breakout/continuation in the L30/L63 graveyard class — not worth 2 hours of optimization. Over 505 trades across 5.9 years: Sharpe 0.204 with bootstrap CI [-0.65, 0.98] straddling zero, PSR 0.69, information_ratio -0.81, profit_factor 1.26, and total_return only +25.8% (CAGR 5.6%). avg_trade_return_pct 0.180% clears the low COIN-M round-trip only barely (commission 9.07% of gross), so the venue's cheap fees — not a real edge — are what keep it positive; max_drawdown is 28% (CI to 64%) on that thin return. The base Sharpe of ~0.2 is the ceiling (L63): the ~225-trial deflation and 20% holdout only lower it, and a 505-trade sample coming back not significant is the answer, not a tuning problem. It is a momentum-ignition continuation, i.e. the single-instrument breakout/continuation family with no survivors (L30/L63), with a negative calm regime and mostly negative stress-window Sharpes (LUNA -4.1, FTX -3.5). No parameter change conjures significance from a near-zero-Sharpe, PF-1.26 result. Failure pattern: no_edge/overfit single-instrument breakout continuation, not significant (L30/L63).

Implementation

Long-short intraday momentum-ignition continuation on the ETH coin-margined inverse perpetual (ETHUSD_PERP.BINANCE_CM, 30m bars, pure OHLCV). Every bar it scores the directional impulse as (close-open)/ATR(14); when that impulse exceeds impulse_atr_mult ATR AND the bar's volume exceeds volume_mult x the mean of the prior 20 bars, it enters in the impulse direction and rides the expansion with an ATR chandelier trail (atr_trail_mult x ATR off the best close since entry) plus a 24-bar (12h) time cap. One position at a time; sizing risks 1% of equity against the trail distance, capped at 35% of equity gross, floored to whole $10 inverse contracts via contracts_for_notional.

Verification Results

sandbox_timeout: Verification failed (Layer 3 — sandbox backtest): smoke test exceeded the 300s wall-clock limit on a ~20000-bar window (416 days of ETHUSD_PERP.BINANCE_CM-30-MINUTE-LAST-EXTERNAL). This almost always means per-bar work that scales with history — e.g. rescanning the full funding/supplementary series, or rebuilding a list and calling min()/sorted() inside calculate_signal()/on_bar() on every bar. Precompute sorted timestamp arrays ONCE in __init__ and use bisect, or cache lookups keyed by timestamp, so per-bar cost is O(log n) not O(n).

Verification Results

Analyst to run the full multi-year backtest and confirm the ignition-continuation edge holds across regimes and is not concentrated in a few windows; check alpha/IR persistence OOS.

Verification Results

Regime dependence: the positive result comes from the calm and stressed vol terciles; the 'normal' tercile is net-negative (-5.84%, Sharpe -1.76). With moderate benchmark_correlation (0.58) and ~88 trades/yr, the single 376-day window leaves edge stability unconfirmed. Not a code defect — flagged for full-history validation before optimizing.

Backtest Review

Well-measured sample (505 trades over 5.9 years); clean 3-parameter pure-OHLCV construction, single-position guard works (no pyramiding), no liquidation

Backtest Review

Correct inverse-contract sizing; low COIN-M fees let avg_trade_return_pct 0.18% clear the ~0.10% floor

Backtest Review

Positive in most years and fills under-represented CM/long-short/short-horizon buckets

Backtest Review

No significant edge: Sharpe 0.204 with CI [-0.65, 0.98] straddling zero, PSR 0.69, IR -0.81; total_return only +25.8% over 5.9 years (CAGR 5.6%)

Backtest Review

Thin and fee-marginal: PF 1.26, avg_trade_return_pct 0.180% barely above the CM round-trip; commission 9.07% of gross

Backtest Review

max_drawdown 28% (CI to 64%) on a 5.6%-CAGR strategy — above the promotion floor

Backtest Review

L30/L63 single-instrument breakout/continuation graveyard; base Sharpe 0.2 is the ceiling that deflation only lowers; calm regime and most stress windows negative

Outcome Summary

EthCmInverseThirtyMinMomentumIgnitionContinuationLS fired on volume-confirmed impulse bars and trailed the expansion on the low-fee ETH COIN-M perp, engineered to fill three starved buckets while avoiding the pyramiding bug that killed a sibling. After iterations tightened selectivity, de-levered, and stripped redundant per-bar position lookups to clear a sandbox wall-clock limit, it produced a clean 505-trade, 5.9-year backtest — but with no significant edge: Sharpe 0.204 with a CI straddling zero, PF 1.26, +25.8% total return, and a 28% drawdown, with the cheap CM fees rather than skill keeping it marginally positive. It lost in the calm regime and most stress windows. As a not-significant member of the single-instrument breakout/continuation graveyard whose base Sharpe is its ceiling, it was abandoned at backtest review without an optimization run.

Outcome Summary

A large, clean sample that returns an insignificant Sharpe is a definitive verdict, not a tuning gap — when a single-instrument continuation edge sits at base Sharpe ~0.2 with a CI straddling zero, cheap venue fees keeping per-trade returns just above the floor is not an edge, and deflation/holdout can only make it worse.

Outcome Summary

It was abandoned at the pre-optimization BACKTEST_REVIEW gate as a measured-but-insignificant single-instrument breakout/continuation (L30/L63 graveyard): base Sharpe ~0.2 is the ceiling that deflation and holdout only lower, and a 505-trade sample coming back not significant is the answer, not a tuning problem. The low CM fees — not a real edge — are what keep it barely positive, and the drawdown is too deep for the thin return. Optimization, analysis, and risk review were never reached.

Outcome Summary

A long-short, single-instrument, pure-OHLCV intraday momentum-ignition continuation strategy on the ETH COIN-M inverse perp (ETHUSD_PERP.BINANCE_CM, 30m) that entered in the direction of a volume-confirmed impulse bar (bar move in ATR units plus a volume-ratio gate), rode the expansion with an ATR chandelier trail and a time cap, and structurally guaranteed a single position — routed to the low-fee CM venue to fill the under-represented venue, long-short, and short-horizon buckets.

Outcome Summary

Over a well-measured 505-trade sample across 5.9 years the per-trade edge barely cleared the CM fee floor (avg_trade_return_pct 0.180%, commission 9.07% of gross) but there was no significant risk-adjusted edge: Sharpe 0.204 (CI [-0.65, 0.98] straddling zero), PSR 0.69, information ratio -0.81, profit factor 1.26, total return +25.8% (CAGR 5.6%), and a 28% max drawdown (CI to 64%). It was negative in the calm regime and in most crypto stress windows (LUNA -4.1, FTX -3.5 Sharpe).

Iteration History

Verification failed (Layer 4 — QA review) [class=no_edge]: - FEE-NONVIABLE / NO EDGE — the 30m ignition edge is below the fee floor, exactly the risk the hypothesis flagged. avg_trade_return_pct 0.0273% is far under the 0.10% COIN-M floor; profit_factor 1.019 (break-even gross); total_return -27.1% with end_unrealized_pct -30.5% (large terminal open loser) and alpha -0.187. Turnover 357 with $31,096 folded market impact — the high-frequency churn's gross edge cannot clear fees + impact. Sharpe 0.204 on CI [-1.64, 1.66], skew 3.42 / kurtosis 45 over a 376-day window — statistically empty and outlier-driven, max-DD CI to 95.5%. The signal is real but negligible (barely PF>1 gross) and cannot survive the round-trip at 30m holds; no parameter change converts 0.0273%/trade into a fee-clearing edge. - Leverage 2.0 with avg_position ~80% amplifies the drawdown (34% realized, CI to 95.5%) and the -30.5% terminal open position on a book with no fee-clearing edge — added risk, no compensating return.
Strategy report

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