SolAvaxRelativeStrengthNeutralPair
Hypotheses
SOL vs AVAX Dollar-Neutral Relative-Strength Pair, Long-Short (Intermediate Cross-Sectional Momentum on Two Correlated High-Beta L1 Perps, BINANCE USD-M, DAILY Bars, ~40-Day Skip-Window Relative Return, Deadband + Vol-Scaled Legs, 3-Parameter)
Hypotheses
A MARKET-NEUTRAL (dollar-neutral, roughly beta-neutral) LONG-SHORT PAIR trade between two tightly co-moving high-beta layer-1 perpetuals: SOLUSDT.BINANCE (primary) and AVAXUSDT.BINANCE (secondary). The idea is deliberately NOT another single-name directional trend (the factory's one surviving recipe is saturated on majors and L91 warns against symbol-swapping it) and NOT a beaten dead class. Instead it isolates the ONE thing that repeatedly survives here -- trend/momentum -- but expresses it in RELATIVE space between two names that share almost all of their market beta, so the shared crypto-market factor cancels and only the idiosyncratic L1-vs-L1 divergence is traded. Each DAILY bar we compute each leg's intermediate skip-window relative return (return from t-45d to t-5d, i.e. skip the most recent 5 days to avoid short-term reversal contamination). We go LONG the stronger name and SHORT the weaker name, sizing each leg to EQUAL DOLLAR notional and inverse-realized-vol so the two legs carry comparable risk and the book is ~beta-neutral. A DEADBAND on the relative-return spread (only flip/enter when |spread| exceeds a threshold in vol-normalized units) plus a minimum holding period keeps turnover low so fee drag stays well under the captured edge. This is a pairs-scoped, long-short, market-neutral design that fills three under-represented buckets at once (long_short 14.5%, pairs 14%, and market-neutral is absent among the promoted winners) while staying on the deepest-liquidity venue to keep market impact -- the killer that sank the Bybit TSMOM clones at 66% impact_cost / $227k capacity -- negligible for a $100k book.
Hypotheses
Iteration 2 addresses the backtest gate finding that Sharpe (+0.19, computed on the mark-to-market curve) disagreed in sign with total_return (-5.99%, realised equity curve). That split is the signature of a book whose marks go favourable and are then round-tripped: the only profit-side exit was momentum decay, which by construction fires after the relative spread has already retraced, and the 75-day time stop left long, sparsely-closing holds so the realised curve was both worse than and much thinner than the mtm path. Smallest fix, applied on top of previous_code with signal maths, imports, structure and sizing formula untouched: (1) a relative take-profit (take_profit_rel_pct, default 9% on the pair log-ratio) and (2) a trailing giveback (trail_give_pct, default 4%, armed once the peak excursion reaches one giveback unit), both evaluated on the same rel_pnl already computed, plus a peak tracker reset at entry/exit; max_hold_days tightened 75->45 and min_hold_days 8 so holds terminate on a bounded schedule. These convert the positive mtm drift into realised round trips and densify the realised equity curve so the two metric series can agree. Leg notionals stay equal-USD (dollar-neutral) with the 90%-of-margin gross cap intact, so the neutral-pair blow-up mode is still bounded. Everything Layer 1/1.5/2/3 already validated - instruments (SOLUSDT + AVAXUSDT on BINANCE futures, matching the hypothesis), daily bar types, continuous signal, calendar-anchored holding clock, bounded buffers - is unchanged.
Hypotheses
Negative expectancy on a decisive 214-trade / 2182-day (6-year) sample: profit_factor 0.842 (<1, gross-NEGATIVE before costs), avg_trade_return_pct -1.15% (below ZERO, not merely below the 0.15% Binance USD-M fee floor), expectancy -$205.2/trade, total_return -42.6%, Sharpe -0.166 with CI [-0.949, 0.628] straddling zero. Commission is only 1.84% of gross, so this is a gross-losing signal, not fee-fragility — optimization cannot lift a PF-0.842 edge above costs. The code faithfully implements the dollar-neutral SOL/AVAX relative-strength pair (214 trades, balanced 107 long / 107 short, atomic dual-leg, inverse-vol sizing) so this is a fair test, and the premise is falsified: the book loses in ALL three vol terciles (calm -3.4%, normal -15.2%, stressed -31.4%) and in 4 of 6 calendar years (2021 -33.5%, 2022 -6.0%, 2024 -11.1%, 2025 -14.9%). QA's edge concern is borne out on full history — the SOL-vs-AVAX intermediate relative-momentum carries no idiosyncratic edge. This is the dollar-neutral 2-name long-short/pairs family (L45 multi_instrument 0/84) that dies negative-expectancy; the iteration-2 TP/trailing additions only aligned the sign of Sharpe and return, they did not create edge. Tuning 3 parameters cannot rescue a gross-negative, all-regime-losing signal — not worth 2 hours of walk-forward. abandon_class=negative_expectancy.
Implementation
Dollar-neutral SOL/AVAX long-short pair on BINANCE USD-M daily bars. Each bar it measures the intermediate skip-window relative return (t-45d to t-5d log return of SOL minus AVAX), normalises it by the realised volatility of the relative daily return scaled to the momentum horizon, and returns that z-like value as a continuous signal every bar. Beyond a deadband it goes long the stronger L1 and short the weaker one with equal USD notional per leg (inverse-vol-scaled common notional, gross capped inside margin). Positions exit on a hard relative stop, a relative take-profit, a trailing giveback from the peak relative excursion, momentum decay/flip after a minimum calendar hold, or a time stop.
Verification Results
Confirm the base template consumes min_bars_required() for warm-up gating; otherwise the guard inside calculate_signal() is what actually protects warm-up (and it does). No action required for correctness.
Verification Results
min_bars_required(self) overrides/shadows a base-template method (flagged by Layer 1). If the base warm-up gating does not call this override, it is effectively dead. This is not a functional risk here because calculate_signal() has its own explicit guard (len(hist) < lookback_days+1 -> return 0.0), so no signal fires before sufficient history accrues.
Verification Results
Unoptimized sandbox draw is decisively negative and consistent: total_return -42.6%, PF 0.845, Sharpe -0.166 (CI [-1.02, 0.62] straddles zero), avg_trade_return_pct -1.15%, and the book loses in ALL THREE vol terciles (calm -3.4%, normal -15.3%, stressed -31.4%) over 214 trades / 2182 days. Commission is only 1.83% of gross, so this is a gross-negative signal, not fee-fragility — the SOL-vs-AVAX intermediate relative-strength (momentum-continuation in relative space) does not appear to carry idiosyncratic edge in this window. The take-profit/trailing-giveback additions from iteration 2 aligned the sign of Sharpe and total_return (both now negative) but did not create edge. Cross-sectional relative-strength on a 2-name basket is structurally the narrowest form of the long-short/pairs family, several of which have been abandoned on full history as negative-expectancy. The analyst should verify on full history whether the relative-momentum premise survives before committing 3-phase optimization; if the gross signal is negative across regimes, tuning cannot rescue it.
Backtest Review
Mechanism is faithfully implemented: 214 pairs trades over 2182 days, balanced 107 long / 107 short, atomic dual-leg entry/exit, dollar-neutral with inverse-vol leg sizing — a fair test of the premise.
Backtest Review
On the deepest-liquidity venue (SOL/AVAX Binance USD-M), so market impact is not the killer here (impact only $1,312 vs $4,316 commission).
Backtest Review
Gross-negative signal, not fee-fragility: profit_factor 0.842 (<1) and commission is only 1.84% of gross — removing all fees would still leave the book losing.
Backtest Review
avg_trade_return_pct -1.15% (below ZERO, not merely below the 0.15% Binance USD-M fee floor); expectancy -$205/trade; total_return -42.6%; Sharpe -0.166 with CI [-0.949, 0.628] straddling zero.
Backtest Review
Regime-wide failure: loses in ALL three vol terciles (calm -3.4%, normal -15.2%, stressed -31.4%) and in 4 of 6 calendar years (2021 -33.5%, 2022 -6.0%, 2024 -11.1%, 2025 -14.9%) — the opposite of a robust idiosyncratic-momentum edge.
Backtest Review
SOL-vs-AVAX cross-sectional relative-strength is the narrowest form of the dollar-neutral long-short/pairs family (L45 multi_instrument 0/84), which has repeatedly died negative-expectancy on full history.
Backtest Review
QA's edge concern is confirmed on full history: the relative-momentum-continuation premise carries no idiosyncratic edge in this window.
Analysis
Backtest gate:
- metrics unreliable: Incoherent: Sharpe 0.19 disagrees in sign with total_return -5.99% — the Sharpe is computed from the mtm_equity_curve series while the return comes from the equity curve. Judge on the equity curve.
Outcome Summary
SolAvaxRelativeStrengthNeutralPair-c4f71a4796
Outcome Summary
SolAvaxRelativeStrengthNeutralPair tried to trade idiosyncratic momentum between two tightly co-moving high-beta L1 perps, SOL and AVAX, by going long the stronger and short the weaker name in a dollar-neutral, inverse-vol-sized pair on Binance USD-M daily bars. Faithfully implemented across 2 iterations, it was tested cleanly over 214 balanced trades on 6 years of data, and the premise was falsified: -42.6% total return, negative Sharpe, and a profit factor of 0.842 meaning it lost money even before fees, losing across every volatility regime and most calendar years. Because commission was only 1.84% of gross, this was a gross-losing signal rather than fee-fragility, so the analyst abandoned it at the backtest-review gate before spending time on optimization. The run ended at 'abandoned' with class negative_expectancy, never reaching optimization, risk review, or paper trading.
Outcome Summary
SOL-vs-AVAX intermediate relative-strength carries no idiosyncratic edge; the narrow dollar-neutral 2-name long-short/pairs family repeatedly dies negative-expectancy on full history, so a market-neutral construction alone does not create edge where the underlying momentum-continuation premise is falsified.
Outcome Summary
The analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate: with profit factor 0.842 the signal is gross-negative before fees (commission was only 1.84% of gross), so optimization could not lift it above costs; later pipeline stages (optimization, risk review, promotion) were not reached.
Outcome Summary
A dollar-neutral, roughly beta-neutral long-short pair trade between SOL and AVAX Binance USD-M perps that went long the stronger and short the weaker name on a ~40-day skip-window relative-return signal, aiming to isolate idiosyncratic L1-vs-L1 momentum after the shared market factor cancels.
Outcome Summary
Over a 6-year, 214-trade backtest (2182 days, balanced 107 long / 107 short) it returned -42.6% with a Sharpe of -0.166 (CI [-0.949, 0.628]), profit factor 0.842, and avg_trade_return_pct of -1.15%, expectancy -$205/trade and a 47.9% max drawdown. It lost money in all three vol terciles (calm -3.4%, normal -15.2%, stressed -31.4%) and in 4 of 6 calendar years.
Backtest and paper results are hypothetical. Trading involves risk of loss.