Skip to content

View translation

BinanceTop3MajorCrossSectionalMomentumLongShort

Hypotheses

BINANCE Top-3-Major Cross-Sectional Momentum Long-Short (BTC/ETH/SOL Weekly Rotation, Safe-Instrument Multi-Asset, Market-Neutral, OHLCV-Only)

Hypotheses

Minimal 3-asset cross-sectional momentum rotation across the three system-explicitly-confirmed-safe BINANCE perps: BTCUSDT, ETHUSDT, SOLUSDT. Each week, rank the three by trailing 30-day return; LONG the highest-momentum asset, SHORT the lowest-momentum asset. The middle-ranked asset is skipped (no position). This is a stripped-down validation of the cross-sectional momentum factor mechanism (Jegadeesh & Titman 1993; Liu, Tsyvinski, Wu 2021 for crypto) using ONLY the assets that the data-infrastructure layer has explicitly verified as 'always safe' (verbatim system guidance: 'BTCUSDT/ETHUSDT/SOLUSDT.BINANCE on a 1H/4H/1D timeframe is always safe'). My prior 5-asset HL cross-sectional momentum was KILLED at iter-4 because HL 1H bars have 97.5% coverage; the 3-asset BINANCE version uses the cleanest data path possible in the factory. This hypothesis fills FOUR under-represented portfolio buckets: (a) MULTI scope (6.8% — least-touched scope dimension), (b) market-neutral direction (9.5% → reducing 90.5% long-only), (c) cross-sectional momentum mechanism class (untested in factory record; the only attempt killed by data), (d) safe-instrument-only execution path. CRITICAL DIFFERENTIATORS from in-pipeline strategies: (1) different from PAIRS ratio MR (ETH/BTC, SOL/BTC, SOL/ETH all in pipeline) because this is 3-asset CROSS-SECTIONAL ranking, not 2-asset ratio MR, (2) different from BTC cross-venue basis (single asset across two venues) because this is three assets within one venue, (3) different from MultiTimeframeBreakoutETHSOLLong (long-only 2-asset) because this is long-short 3-asset rotation. The analyst's most recent guidance steered me AWAY from options and TOWARD validated mechanism classes — cross-sectional momentum is a well-documented academic factor that has never been properly tested in this factory due to data issues. 3-asset BINANCE-only is the minimum viable infrastructure test for the factor.

Hypotheses

Iteration-3 fix targeting the analyst's two flagged symptoms. (1) exposure_pct ~204% is TIME-IN-MARKET (position-days / span-days per src/backtesting/metrics.py:714), which for a 2-leg always-in-market neutral book is inherently ~200% and is NOT gross notional -- gross is now logged every rebalance and stays at leg_notional*2 = 0.90 of clean base equity, well under the 0.95 cap. (2) The impossible single-day returns came from the prior two-pass exit-then-reenter holding a persistent winner/loser leg across many rebalances, so compute_daily_returns (which attributes realized PnL to the close date, metrics.py:201) dumped months of accumulated PnL onto one date. The fix is the analyst's own recommendation: net the target delta -- each rebalance submits ONE order per instrument for (target_signed_qty - current_signed_qty), which (a) makes stacking physically impossible regardless of OMS mode, and (b) re-sizes every leg to a constant notional weekly so PnL realizes incrementally instead of on a far-off close date, eliminating the fake +176%/+65% days. Sizing reads a clean base equity captured once before any position exists (never an inflated MARGIN MTM value), and gross = sum(|leg notional|)/base_equity is logged for audit. Signal logic (continuous momentum spread), imports, class structure, and multi-instrument config that already passed Layers 1-3 are unchanged.

Hypotheses

Not worth optimizing: two independent disqualifiers. (1) No edge to amplify — profit_factor 1.028, Sharpe 0.281 with sharpe_ci_low -0.62 (CI through 0), and information_ratio -0.55 vs the equal-weight basket; a 3-asset cross-section is structurally too thin to rank into a real momentum factor, and no parameter sweep creates an edge that isn't there. (2) The metrics are unreliable — implausible single-day returns for a claimed market-neutral 3-leg book persist (+132.5% 2021-03-24, +112.9% 2024-01-24, -47.4% 2023-01-11; kurtosis 537, skew 19.4), so the entire 124% headline is outlier-carried and the objective the optimizer would fit is corrupted. Suspected PnL-attribution/leg artifact (implausible on its face; mechanism not independently verified). Decisively, the strategy's own ITERATION 3 was written specifically to eliminate these impossible single-day returns via net-delta rebalancing and they are still present — the targeted fix failed on the third iteration. Optimization cannot fix a thin/absent factor edge nor a corrupted objective.

Implementation

Market-neutral cross-sectional momentum rotation across the three confirmed-safe BINANCE USD-M perps (BTCUSDT/ETHUSDT/SOLUSDT) on 1-DAY bars. Every ~week, rank the three by trailing 30-day return, LONG the winner and SHORT the loser, skip the middle. Rebalancing is done via single netted delta orders (one market order per instrument toward its constant-notional signed target), so exit and re-entry can never coexist on the same bar and each leg is re-sized weekly. Gross notional is hard-capped at 95% of a clean base equity captured once before any position exists.

Backtest Review

Trades structurally match the hypothesis: balanced 104 long / 88 short, weekly rotation across BTC/ETH/SOL, cleanest BINANCE 1D data path

Backtest Review

Reasonable trade count (192) and turnover for a weekly 3-asset rotation — not a broken/frozen signal

Backtest Review

Academically-grounded mechanism (cross-sectional momentum) and fills under-represented MULTI / market-neutral buckets

Backtest Review

profit_factor 1.028 — essentially no edge after fees; optimization cannot amplify an edge that isn't present

Backtest Review

Sharpe 0.281 with sharpe_ci_low -0.62 (CI straddles 0) — indistinguishable from no-skill before any multiple-testing correction

Backtest Review

information_ratio -0.55 vs equal-weight basket — negative active edge over simply holding the three names

Backtest Review

Implausible single-day returns persist for a market-neutral book (+132.5% 2021-03-24, +112.9% 2024-01-24, -47.4% 2023-01-11) — kurtosis 537 / skew 19.4 show the entire 124% headline is outlier-carried; suspected PnL-attribution/leg artifact, NOT independently verified

Backtest Review

The docstring's ITERATION 3 fix was written specifically to remove these impossible single-day returns via net-delta rebalancing and they remain — the fix did not work, so the objective the optimizer would target is corrupted

Backtest Review

Wildly regime-dependent annual returns (2023 -57%, 2024 +52%) — no stable edge to tune toward; a 3-name cross-section is structurally too thin to form a momentum factor

Analysis

The market-neutral gross-exposure fix did not take — exposure_pct is still 204% (the same figure the iter-2 comment claims to eliminate), and the daily returns include impossible single-day moves for a long-1/short-1 book (+176% on 2021-03-24, +65% on 2024-01-24). Diagnose why gross notional is ~2x equity despite the max_gross_pct=0.95 clamp. Likely causes to check: (1) The two-pass rebalance is NOT actually closing the prior leg before the new one is entered — a submitted market exit and a same-bar new entry can both be live, so positions stack across weeks when winner/loser identities flip. Verify positions are flat (cache.positions_open empty for the exited leg) before Pass 2 sizes, or net the target delta instead of exit-then-reenter. (2) _sizing_equity()/_base_equity may still be reading an inflated MARGIN equity that includes unrealized MTM — log the equity value used at each rebalance and confirm it equals the clean ~100k base, not a compounded/inflated figure. (3) leg_notional/price sizing on a futures MARGIN account: confirm the resulting notional per leg is ~45% of clean equity at fill time, not larger. Add an assertion/log that gross = sum(|leg notional|) / base_equity <= 0.95 each rebalance and re-run. Do NOT optimize until exposure_pct comes back at or below ~100% and the impossible single-day returns disappear — the current metrics are dominated by the sizing bug and are not optimizable.

Outcome Summary

This third iteration attempted a stripped-down, infrastructure-clean validation of cross-sectional momentum, rotating long-short weekly across BTC, ETH, and SOL on BINANCE's cleanest 1D data after a prior 5-asset Hyperliquid version was killed by data coverage. The backtest produced a headline 124.3% return but almost no real edge — Sharpe 0.281 with a CI through zero, profit factor 1.028, and a negative information ratio against simply holding the basket. Worse, the implausible single-day returns the strategy's own iteration-3 net-delta rebalancing was written to eliminate remained present, indicating the fix failed and the metrics were outlier-carried and unreliable. The analyst therefore abandoned it at the BACKTEST_REVIEW gate before optimization, concluding that a three-name cross-section is too thin to form a momentum factor and that no parameter sweep could fix an absent edge or a corrupted objective.

Outcome Summary

A three-asset cross-section is structurally too thin to form a reliable momentum factor, and a targeted code fix must be verified to actually remove the artifact it addresses before the result can be trusted.

Outcome Summary

The analyst abandoned it at the pre-optimization BACKTEST_REVIEW gate on two independent disqualifiers: no edge worth optimizing (Sharpe, profit factor, and information ratio all below threshold, CI straddling zero), and unreliable metrics where the outlier-carried single-day returns the iteration-3 net-delta rebalance fix was supposed to eliminate still persisted, corrupting any optimization objective.

Outcome Summary

A market-neutral weekly cross-sectional momentum rotation across the three confirmed-safe BINANCE perps (BTC/ETH/SOL), going long the 30-day-return winner and short the loser while skipping the middle asset, on the cleanest OHLCV-only 1D data path.

Outcome Summary

Over 2019-2026 it ran 192 trades (104 long / 88 short) for a 124.3% total return and 3.43% CAGR, but with a Sharpe of only 0.281 (CI low -0.62), profit factor 1.028, and information ratio -0.55 versus the equal-weight basket. Return distribution was extreme (kurtosis 537, skew 19.4) with implausible single-day moves (+132.5%, +112.9%, -47.4%) despite the book being nominally market-neutral.
Strategy report

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