SolEthRelativeStrengthTrendDollarNeutralLS
假設
SOL/ETH Relative-Strength Trend, Dollar-Neutral Long-Short (SOLUSDT.BINANCE long-leg + ETHUSDT.BINANCE short-leg USD-M, Dual-Timeframe Momentum Confluence Applied to the RATIO, 4H Primary + 1D Confirm, ATR-Trailing Exit, 3-Parameter)
假設
Iteration-2 fix for the backtest gate. The gate flagged the metrics as incoherent (mtm-curve Sharpe +0.59 vs equity-curve total_return -27.40%) and said to judge on the equity curve — i.e. the strategy really lost ~27%. That mtm/realized split is the signature of transaction-cost drag on a two-leg book: every position change pays taker fees on FOUR fills (~0.2% of per-leg notional), and iteration 1 both entered and exited on a bare sign test of the volatility-scaled spread, so every jitter across zero forced a full round trip (~0.08% of equity each at ~0.4x equity per leg — enough to produce the observed loss while the marked path drifts up). Smallest change that addresses it, leaving signal construction, sizing, hedging and all previously-passing layers untouched: a dead band. Entries now require |spread| > entry_threshold (0.6 vol-scaled units) instead of a bare sign; the fast-read exit fires only when side*signal < -exit_band_frac*entry_threshold instead of at the zero crossing. Trailing-stop and daily-regime exits are unchanged, so real reversals are still cut. max_notional_frac trimmed 0.35 → 0.30 to shrink the per-flip fee footprint and gross exposure. entry_threshold is exposed as a tunable with declared _param_bounds matching the in-code clamp; typical |spread| on this ratio runs 1–3, so 0.6 still fires regularly and sandbox trade count stays well above zero. No imports or class structure changed.
假設
Cost-fragile, no deployable edge on a decisive 1612-trade / 6-year sample. profit_factor 1.0108 sits in the fee/impact-drag band [0.85,1.10] (L18) — the gross edge is real but sits inside costs. Here the dominant cost is market IMPACT, not commission: impact_cost_pct 66.78% consumes two-thirds of gross PnL and capacity_usd is only ~$224k, so the apparent 0.26% per-trade return survives only at toy scale and vanishes at any meaningful size (QA's edge concern borne out, and worse than the sandbox 55.4%). Sharpe 0.533 with CI [-0.249, 1.265] straddling zero, max_drawdown 50.4%, recovery_factor 0.65, and the book LOSES badly in the calm regime (-61.2% return / 74.1% DD) while deteriorating in recent years (2025 -17.4%, 2026 -26.1%). This is the dollar-neutral major-perp long-short class (L45, multi_instrument 0/84) whose PF~1.0/large-DD signature dies overfit or no-edge after optimization — tuning 3 parameters cannot lift an edge that is already smothered by impact. Not worth 2 hours of compute. abandon_class = negative_expectancy.
實作
Dollar-neutral SOL/ETH relative-strength trend on Binance USD-M perps. Signal is dual-timeframe momentum confluence applied to the log price RATIO ln(SOL/ETH): a fast 4H volatility-scaled EMA spread must agree in sign with a calendar-daily ratio momentum read (daily_lookback days), otherwise flat. Long SOL / short ETH on positive confluence, the reverse on negative, with both legs sized to the SAME USD notional so the book carries ~zero net dollar delta. Exits: ATR-style trailing stop on the ratio (trail_atr_mult x entry vol of give-back from the best ratio reached), a daily-trend flip, or a hysteretic reversal of the 4H spread past a dead band. Per-leg notional is risk-first (trailing-stop distance risks ~1.8% of equity) and capped at max_notional_frac x equity x leverage.
驗證結果
Reconcile the hypothesis's parameter count with the code, or update the hypothesis/title to reflect the 4th tunable added during iteration.
驗證結果
Hypothesis title states a '3-Parameter' design, but the code exposes 4 tunables with declared _param_bounds (ema_ratio, daily_lookback, trail_atr_mult, entry_threshold). This is the documented iteration-2 dead-band fix (entry_threshold promoted to a tunable to curb zero-crossing churn), not a structural change to the edge: the dual-timeframe ratio confluence, calendar-daily confirm, and ATR trailing exit named by the hypothesis are all present and correct. Non-blocking; noting the count drift for the record.
驗證結果
High-turnover two-leg book: sandbox shows turnover 628, impact_cost_pct 55.4% (impact consumes over half of gross PnL) and capacity_usd only ~$325k, on 1612 trades. avg_trade_return_pct 0.26% clears the fee floor and commission_pct_of_gross is only 5.0%, but the modeled market-impact drag is the dominant cost and would compress the edge sharply at any meaningful size. Regime split is also uneven (calm tercile -61.2% return / 74% DD vs normal +68%). This is a smoke test on unoptimized params over a truncated window, so it does not block — but the analyst should verify at full history that the relative-strength edge survives realistic impact/turnover, and consider whether the entry dead band / turnover needs further widening.
回測檢視
Reliable, decisive sample: 1612 trades over a 6-year / 2183-day full history, balanced long/short (806 each), so this is a fair test of the mechanism, not a thin one.
回測檢視
Trades implement the hypothesis — dollar-neutral two-leg SOL/ETH ratio book with the dead-band churn fix; commission is only 5.04% of gross, so the developer's zero-crossing-churn concern was genuinely addressed.
回測檢視
avg_trade_return_pct 0.26% nominally clears the Binance USD-M 0.15% fee floor.
回測檢視
profit_factor 1.0108 sits squarely in the fee/cost-fragility band [0.85,1.10] (L18) — the gross edge is statistically real but sits almost entirely inside costs. Sharpe 0.533 with CI [-0.249, 1.265] straddling zero.
回測檢視
Impact, not commission, is the killer: impact_cost_pct 66.78% (worse than the sandbox 55.4% QA flagged) — modeled market impact consumes two-thirds of gross PnL, and capacity_usd is only ~$224k, i.e. the 'edge' exists only at toy scale and evaporates at any deployable size. QA's edge concern is borne out on full history.
回測檢視
Regime split is badly uneven and adverse: calm tercile -61.15% return / 74.1% max DD, normal +68%, stressed +24.5% — the book bleeds in exactly the low-vol regime where a relative-strength trend should be cheapest to hold.
回測檢視
Overall max_drawdown 50.4%, recovery_factor 0.65, max_drawdown_duration 790 days, and the edge is deteriorating: annual returns 2025 -17.4%, 2026 -26.1%.
回測檢視
Class prior: dollar-neutral / market-neutral long-short major-perp baskets are 0/84 (L45); a PF ~1.0 book carried by leverage/vol-targeting with a 50% DD is the exact signature that dies overfit or no-edge after the 3-phase run.
分析
Backtest gate:
- metrics unreliable: Incoherent: Sharpe 0.59 disagrees in sign with total_return -27.40% — the Sharpe is computed from the mtm_equity_curve series while the return comes from the equity curve. Judge on the equity curve.
結果摘要
SolEthRelativeStrengthTrendDollarNeu-a7d4db4dd5
結果摘要
Clearing the per-trade fee floor isn't enough when market impact dominates and caps capacity at toy scale.
結果摘要
Abandoned at the pre-optimization backtest-review gate — edge sat inside costs, dominated by market impact, deployable only at toy scale.
結果摘要
A dollar-neutral SOL/ETH long-short on Binance USD-M trading the SOL/ETH price ratio with dual-timeframe momentum confluence and an ATR-trailing exit, to harvest relative-strength trend while stripping out common crypto beta.
結果摘要
6-year backtest: 1612 trades (806 long / 806 short), 46.7% win rate, total return 64.4%, Sharpe 0.533 (CI [-0.249, 1.265]), PF 1.0108, max DD 50.4%; avg per-trade return 0.26% of notional but impact cost 66.78% of gross and capacity only ~$224k.
Stratmill 是一款研究與模擬交易工具,並非財務建議或經紀商服務。回測與模擬交易結果均為假設性質。交易涉及虧損風險。