Strategies
Bybit New-Listing Supply-Overhang Decay: short each newly launched high-turnover Bybit USDT perp from its 4th daily close for 21 days, BTC-hedged, with a hard adverse stop and a funding-squeeze exit (76 listings 2023-2026, 1-DAY)
Outcome: Abandoned
BybitNewListingSupplyOverhangShortHedged
Outcome Summary
The hypothesis proposed shorting turnover-qualified Bybit perp launches for 21 days with a BTC hedge, citing a gross pre-study edge of about +13% per event across 76 listings. The developer coded BybitNewListingSupplyOverhangShortHedged and revised it three times for performance: funding prefix-sum caches with bisect, keeping only two bars per instrument, and skipping completed listings early. Every version still went over the 300s Layer 3 sandbox limit, so the run was abandoned as a verification-loop sandbox timeout. No backtest, optimization, analyst or risk-review stage was reached, so the premise is still untested in the pipeline.
Hypothesis
Picked to fill BYBIT (2.3%), long-short (16.7%) and a non-calendar, non-momentum mechanism. BTC is used only as a hedge leg and clock, which is why it is the primary. Baseline values: hold_days=21 and stop_adverse_pct=0.5 must be the strategy's configured parameter values, inside their domains. Every fixed key must appear in strategy parameters with EXACTLY that value and type: ints 3 and 10, floats 100000000.0, 0.04, 1.0, -1.5. Leverage is deliberately not in the plan; config.leverage 1.0 suffices for 80% gross. Arithmetic: a gross of about 13% per short against 0.11% round trip, minus a few % funding, gives an expected net of 3-6% per short. Hedge-leg resizes add low-return trades that dilute the pooled average, so the pre-registered average trade return is set conservatively at 1.0%.
verification_loop: sandbox_timeout: Verification failed (Layer 3 — sandbox backtest): smoke test exceeded the 300s wall-clock limit on a ~20000-bar window (2400 days of BTCUSDT.BYBIT-1-DAY-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).
Implementation
Short turnover-qualified Bybit launches at their third daily close, hold for 21 days, maintain the existing BTC hedge, and exit on an intrabar adverse stop or a three-day funding squeeze. Includes all 19 alt instruments explicitly declared in this brief.
Focused Layer-3 runtime revision of previous_code: reduce base-managed retained history from 500 bars to two, eliminating repeated 500-reference buffer copies across listing legs, and return earlier for completed inactive listings while preserving dirty-hedge reconciliation. Funding already uses once-per-leg sorted indexes and prefix sums with O(log n) queries; no full-history scan was found in the strategy's steady-state callbacks. Entry logic, sizing, stops, funding thresholds, continuous primary signal, instrument coverage and research parameter permissions remain unchanged. Runtime improvement is unmeasured because verification belongs to the pipeline; another timeout requires engineering profiling of loading and engine execution rather than evidence-based abandonment of the hypothesis. No final-exam data was accessed. The required outbox file could not be written because this session's filesystem permissions are read-only; the complete call-bound JSON is returned here.
Verification Results
sandbox_timeout: Verification failed (Layer 3 — sandbox backtest): smoke test exceeded the 300s wall-clock limit on a ~20000-bar window (2400 days of BTCUSDT.BYBIT-1-DAY-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).
Outcome Summary
Multi-instrument event strategies across many extra legs have to be profiled for per-bar cost (base-class bar handling, per-leg rehedging, position lookups on every extra bar) before submission, because caching funding lookups and trimming bar history over three iterations still did not get it under the sandbox time budget.
It was abandoned in the verification loop after 3 iterations: the Layer 3 sandbox backtest went over the 300s wall-clock limit on a ~20,000-bar window (2400 days of BTCUSDT.BYBIT 1-DAY bars), giving a sandbox_timeout. Backtest review, analyst and risk review never ran.
Short each newly launched, high-turnover Bybit USDT perp (first-3-day avg turnover >= $100M) from its 3rd/4th daily close for 21 days, hedged 1:1 with BTC, to capture post-listing supply-overhang and attention-decay underperformance relative to BTC, with a +50% adverse stop and a funding-squeeze exit.
No pipeline backtest or optimization results exist (backtest report empty, optimization not run); the only figures are the hypothesis's own gross pre-study on 76 listings (mean +13.4% per event, median +25%, 75% win rate, worst -74%), which the pipeline never confirmed.
Backtest and paper results are hypothetical. Trading involves risk of loss.