Strategier
ETH-vs-BTC Relativ-Momentum-Rotation, Dollaneutral Long-Short (Två-Instrument ETHUSDT.BINANCE + BTCUSDT.BINANCE Perps, Dagliga Barer — Long den Starkare / Short den Svagare Baserat på ETH/BTC Kvot MOMENTUM, Deadband-Gated, Ren OHLCV, 2-Parameter)
Utfall: Övergiven
EthBtcRelativeMomentumRotationLS
Implementerar troget hypotesen: dollaneutral ETH/BTC kvot-momentum-rotation, marknadsneutral (benchmark_meaningful=false, så buy-hold är korrekt inte måttstocken)
Hypotes
Negativt förväntat värde på ett tillförlitligt 582-trade / 6.7-årsprov: profit_factor 0.9999 (brutto-platt, ingen netto-edge), avg_trade_pnl_usd -0.137, CAGR -1.22%, recovery_factor negativt. Den +7.83% total_return är helt orealiserad (end_unrealized_pct 7.91) — en oavslutad slutposition, inte realiserad edge. Sharpe 0.26 med CI [-0.48, 1.01] ligger runt noll, max_drawdown 56.6%, och impact_cost_pct 101% (kapacitet ~$98k) innebär att marknadspåverkan ensam konsumerar hela edgen. Den ETH/BTC relativa styrkan-momentum varar inte tillräckligt länge för att vara lönsam dollaneutralt efter kostnader — detta är ett uttalande om entry, vilket IS hypotesen. Att optimera 2 parametrarna (lookback, deadband) kan inte lyfta ett brutto-platt/PF<1 resultat till lönsamhet. Inte värt 2 timmars optimering. abandon_class=negative_expectancy.
Implementation
Verifieringsresultat
CLEAN RESTART 2026-09-04 — den här körningens beslutshistorik och inlärningsposter togs bort och den startades om från verifieringen. Det tidigare avbrytandet berodde på pipelinen, inte marknaden: Layer-2-harnessen band felaktigt @staticmethod-hjälpfunktioner (åtgärdat), QA utfärdade slutgiltiga resultatbedömningar av en ooptimerad rökning (borttaget — QA bedömer nu endast korrekthet), och tidsgränsöverskridanden i sandlådan berodde på brist på backtestplatser (åtgärdat). Hypotesen och strategikoden är oförändrade. Verifiera koden utifrån dess egna meriter; prestandan avgörs senare av det fullständiga backtestet och optimeraren.
Nära-noll/negativ edge på ett mätbart fullhistorik-prov (550 trades, PF 0.965, -22.4%, avg_trade_return_pct +0.061% under två-ben-avgiften) — den lågdispersion ETH/BTC paret som hypotesen själv flaggade som svagare än SOL/ETH. Trogen implementering, så ett edge-fynd för analytikern. Överge vid backtest-granskning enligt utvecklarens förhandsregistrerade villkor (PF klarade inte 1); optimera inte.
57.8% max drawdown (CI till 83%, 1894-dagars varaktighet) på en nominellt marknadsneutral bok: dollaneutral endast vid entry, och 70% bruttoexponering förvärrar en förlorande edge mot ihållande ETH/BTC kvottrender mellan 6% stoppen. Inte en hedging-bugg — lika-notional avstämning är korrekt — utan en riskprofil som Risk Officer bör se.
Backtestgranskning
- Sharpe
- 0,26
- Total avkastning
- 7,83%
- Max drawdown
- 56,58%
- Totalt antal affärer
- 582
- Vinstandel
- 45,9%
- Vinstfaktor
- 1,00
Implementerar troget hypotesen: dollaneutral ETH/BTC kvot-momentum-rotation, marknadsneutral (benchmark_meaningful=false, så buy-hold är korrekt inte måttstocken)
Tillförlitligt, mätbart urval: 582 parrotationer över 6.7 år, metrics_reliable=true, fungerande inträdespipeline (291 långa / 291 korta, noll bortfall)
Genuint 2-parameter, låg-överanpassnings yta
profit_factor 0.9999 — brutto-platt, det finns ingen netto-edge för optimering att ställa in mot
Negativ förväntad avkastning i ett tillförlitligt urval: avg_trade_pnl_usd -0.137, CAGR -1.22%, recovery_factor negativt
Rubrikvärdet för +7.83% är helt orealiserat (end_unrealized_pct 7.91) — en slutposition som inte avslutats, inte ett realiserat övertag
max_drawdown 56.6% (CI till 80%); Sharpe 0.26 med CI [-0.48, 1.01] omfattar noll — omöjligt att skilja från avsaknad av skicklighet
impact_cost_pct 101% med capacity_usd ~$98k — marknadspåverkan ensam förbrukar hela fördelen; genomförbar endast i mycket liten skala
regime_performance avkastning i ”normal” tertil -56% vid 60% DD — inget strukturellt övertag i relativ styrka
Iterationshistorik
Verifiering misslyckades (lager 2 — syntetiska scenarier): Parametrar som användes: ['deadband', 'leg_frac', 'max_days', 'vol_window', 'mom_lookback', 'size_precision', 'stop_ratio_pct', 'min_notional_btc', 'min_notional_eth'] Kontrollera att __init__ sätter alla attribut från self.parameters.get(). - steady_uptrend: TypeError: super(type, obj): obj must be an instance or subtype of type (tidsstämpel för stapeln: 1735689600000) - steady_downtrend: TypeError: super(type, obj): obj must be an instance or subtype of type (tidsstämpel för stapeln: 1735689600000) - flat_ranging: TypeError: super(type, obj): obj must be an instance or subtype of type (tidsstämpel för stapeln: 1735689600000) - volatility_spike: TypeError: super(type, obj): obj must be an instance or subtype of type (tidsstämpel för stapeln: 1735689600000) - zero_volume: TypeError: super(type, obj): obj must be an instance or subtype of type (tidsstämpel för stapeln: 1735689600000) - price_gap: TypeError: super(type, obj): obj must be an instance or subtype of type (tidsstämpel för stapeln: 1735689600000)
Stratmill är ett research- och pappershandelsverktyg, inte finansiell rådgivning eller en mäklare. Backtest- och pappershandelsresultat är hypotetiska. Handel innebär risk för förlust.