रणनीतियाँ
ETH-बनाम-BTC Relative-Momentum Rotation, Dollar-Neutral Long-Short (दो-Instrument ETHUSDT.BINANCE + BTCUSDT.BINANCE Perps, Daily Bars — ETH/BTC Ratio MOMENTUM के आधार पर मज़बूत को Long / कमज़ोर को Short, Deadband-Gated, शुद्ध OHLCV, 2-Parameter)
परिणाम: परित्यक्त
EthBtcRelativeMomentumRotationLS
Hypothesis को सटीक रूप से लागू करता है: dollar-neutral ETH/BTC ratio-momentum rotation, market-neutral (benchmark_meaningful=false, इसलिए buy-hold सही रूप से मापदंड नहीं है)
परिकल्पना
एक विश्वसनीय 582-ट्रेड / 6.7-वर्ष सैंपल पर नकारात्मक अपेक्षा: profit_factor 0.9999 (ग्रॉस-फ्लैट, कोई नेट एज नहीं), avg_trade_pnl_usd -0.137, CAGR -1.22%, recovery_factor नकारात्मक। +7.83% total_return पूरी तरह अवास्तविक है (end_unrealized_pct 7.91) — एक अन-एग्ज़िटेड अंतिम पोज़िशन, वास्तविक एज नहीं। शार्प 0.26, CI [-0.48, 1.01] शून्य के दोनों ओर है, max_drawdown 56.6%, और impact_cost_pct 101% (क्षमता ~$98k) का अर्थ है कि मार्केट इम्पैक्ट अकेले ही पूरा एज खा जाता है। ETH/BTC रिलेटिव-स्ट्रेंथ मोमेंटम लागत के बाद डॉलर-न्यूट्रल लाभ के लिए पर्याप्त रूप से बना नहीं रहता — यह एंट्री के बारे में एक कथन है, जो परिकल्पना को IS। 2 पैरामीटर (लुकबैक, डेडबैंड) का अनुकूलन ग्रॉस-फ्लैट/PF<1 परिणाम को लाभदायक नहीं बना सकता। 2 घंटे के अनुकूलन के लायक नहीं। abandon_class=negative_expectancy।
कार्यान्वयन
सत्यापन परिणाम
CLEAN RESTART 2026-09-04 — इस रन का verdict history और learning records हटा दिए गए और इसे verification से फिर शुरू किया गया। इसे पहले छोड़ने की वजह pipeline थी, बाज़ार नहीं: Layer-2 harness ने @staticmethod helpers को गलत bind किया था (ठीक किया गया), QA ने बिना optimize किए smoke test पर terminal performance verdicts दिए थे (हटा दिए गए — QA अब केवल correctness का आकलन करता है), और sandbox timeouts backtest-slot की कमी के कारण आए थे (ठीक किया गया)। Hypothesis और strategy code अपरिवर्तित हैं। Code को उसकी खूबियों के आधार पर verify करें; performance का फैसला बाद में full backtest और optimizer करेंगे।
एक मापने योग्य पूर्ण-इतिहास नमूने पर शून्य-निकट/नकारात्मक एज (550 ट्रेड, PF 0.965, -22.4%, avg_trade_return_pct +0.061% दो-लेग शुल्त से नीचे) -- कम-विस्तार ETH/BTC जोड़ी जिसे परिकल्पना ने स्वयं SOL/ETH से कमज़ोर बताया था। वफादार कार्यान्वयन, इसलिए विश्लेषक के लिए एज खोज। डेवलपर की पूर्व-पंजीकृत शर्त के अनुसार बैकटेस्ट-समीक्षा में त्यागें (PF ने 1 क्लियर नहीं किया); अनुकूलित न करें।
नाममात्र market-neutral book पर 57.8% अधिकतम drawdown (CI से 83%, अवधि 1894 दिन): entry पर ही dollar-neutral, और 70% gross exposure, 6% stops के बीच लगातार ETH/BTC ratio trends के विरुद्ध नुकसानदेह edge को बढ़ाता है। Hedging bug नहीं — equal-notional reconciliation सही है — लेकिन ऐसा risk profile जिसे Risk Officer को देखना चाहिए।
बैकटेस्ट समीक्षा
- शार्प
- 0.26
- कुल रिटर्न
- 7.83%
- अधिकतम ड्रॉडाउन
- 56.58%
- कुल ट्रेड
- 582
- जीत दर
- 45.9%
- प्रॉफ़िट फ़ैक्टर
- 1.00
Hypothesis को सटीक रूप से लागू करता है: dollar-neutral ETH/BTC ratio-momentum rotation, market-neutral (benchmark_meaningful=false, इसलिए buy-hold सही रूप से मापदंड नहीं है)
विश्वसनीय, मापने योग्य नमूना: 6.7 वर्षों में 582 pair rotations, metrics_reliable=true, entry pipeline स्वस्थ (291 long / 291 short, कोई drop नहीं)
वास्तव में 2-पैरामीटर, कम-ओवरफिट सतह
profit_factor 0.9999 — gross-flat; ऐसा कोई net edge नहीं है जिसकी ओर optimization tune कर सके
विश्वसनीय नमूने पर नकारात्मक अपेक्षित प्रतिफल: avg_trade_pnl_usd -0.137, CAGR -1.22%, recovery_factor नकारात्मक
+7.83% का headline पूरी तरह unrealized है (end_unrealized_pct 7.91) — अंत में खुली रह गई position, realized edge नहीं
max_drawdown 56.6% (CI से 80%); CI [-0.48, 1.01] के साथ Sharpe 0.26 शून्य के दोनों ओर फैला है — कौशल न होने से अप्रभेद्य
impact_cost_pct 101% के साथ capacity_usd ~$98k — केवल बाज़ार प्रभाव ही पूरी बढ़त खा जाता है; केवल बहुत छोटे पैमाने पर ही व्यवहार्य
regime_performance 'normal' tercile का प्रतिफल -56% पर 60% DD है — कोई संरचनात्मक relative-strength edge नहीं
पुनरावृत्ति इतिहास
सत्यापन विफल (परत 2 — कृत्रिम परिदृश्य): उपयोग किए गए पैरामीटर: ['deadband', 'leg_frac', 'max_days', 'vol_window', 'mom_lookback', 'size_precision', 'stop_ratio_pct', 'min_notional_btc', 'min_notional_eth'] जाँचें कि __init__ सभी एट्रिब्यूट self.parameters.get() से सेट करता है। - steady_uptrend: TypeError: super(type, obj): obj must be an instance or subtype of type (बार टाइमस्टैम्प: 1735689600000) - steady_downtrend: TypeError: super(type, obj): obj must be an instance or subtype of type (बार टाइमस्टैम्प: 1735689600000) - flat_ranging: TypeError: super(type, obj): obj must be an instance or subtype of type (बार टाइमस्टैम्प: 1735689600000) - volatility_spike: TypeError: super(type, obj): obj must be an instance or subtype of type (बार टाइमस्टैम्प: 1735689600000) - zero_volume: TypeError: super(type, obj): obj must be an instance or subtype of type (बार टाइमस्टैम्प: 1735689600000) - price_gap: TypeError: super(type, obj): obj must be an instance or subtype of type (बार टाइमस्टैम्प: 1735689600000)
Stratmill एक रिसर्च और पेपर-ट्रेडिंग टूल है, वित्तीय सलाह या ब्रोकर नहीं। बैकटेस्ट और पेपर परिणाम काल्पनिक हैं। ट्रेडिंग में नुकसान का जोखिम होता है।