यह रणनीति एक्सपोनेंशियल मूविंग एवरेज (ईएमए) क्रॉसओवर पर आधारित एक ट्रेंड-फॉलोइंग सिस्टम है, जिसमें गतिशील स्थिति आकार और जोखिम प्रबंधन शामिल है। यह प्रतिशत जोखिम गणनाओं के माध्यम से व्यापार आकारों को गतिशील रूप से समायोजित करते हुए बाजार के रुझानों की पहचान करने के लिए तेज़ और धीमे ईएमए क्रॉसओवर संकेतों का उपयोग करता है और लाभ की रक्षा के लिए ट्रैलिंग स्टॉप का उपयोग करता है।
मूल तर्क अलग-अलग अवधि वाले दो ईएमए (डिफ़ॉल्ट 9 और 21) पर निर्भर करता है। जब तेज ईएमए धीमी ईएमए के ऊपर पार करता है, तो एक लंबा प्रवेश संकेत उत्पन्न होता है, जबकि तेजी से ईएमए धीमी ईएमए के नीचे पार करता है, तो पद बंद हो जाते हैं। प्रत्येक व्यापार आकार को गतिशील रूप से कुल खाता इक्विटी के एक निश्चित प्रतिशत जोखिम (डिफ़ॉल्ट 1%) के आधार पर गणना की जाती है, जिसमें लाभ लेने के स्तर जोखिम-इनाम अनुपात और प्रतिशत-आधारित ट्रैलिंग स्टॉप के अनुसार निर्धारित होते हैं।
यह एक पूर्ण ट्रेडिंग प्रणाली है जो क्लासिक तकनीकी विश्लेषण विधियों को आधुनिक जोखिम प्रबंधन अवधारणाओं के साथ जोड़ती है। यह रणनीति ईएमए क्रॉसओवर का उपयोग करके ट्रेंडिंग अवसरों को कैप्चर करते हुए गतिशील स्थिति आकार और ट्रेलिंग स्टॉप के माध्यम से जोखिम को नियंत्रित करती है। हालांकि कुछ अंतर्निहित सीमाएं हैं, सुझावित अनुकूलन दिशाएं रणनीति की मजबूती और अनुकूलन क्षमता को और बढ़ा सकती हैं। यह रणनीति विशेष रूप से नियंत्रित जोखिम के साथ दीर्घकालिक प्रवृत्ति व्यापार के लिए उपयुक्त है।
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-18 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bitcoin Exponential Profit Strategy", overlay=true) // User settings fastLength = input.int(9, title="Fast EMA Length", minval=1) slowLength = input.int(21, title="Slow EMA Length", minval=1) riskPercent = input.float(1, title="Risk % Per Trade", step=0.1) / 100 rewardMultiplier = input.float(2, title="Reward Multiplier (R:R)", step=0.1) trailOffsetPercent = input.float(0.5, title="Trailing Stop Offset %", step=0.1) / 100 // Calculate EMAs fastEMA = ta.ema(close, fastLength) slowEMA = ta.ema(close, slowLength) // Plot EMAs plot(fastEMA, color=color.blue, title="Fast EMA") plot(slowEMA, color=color.red, title="Slow EMA") // Account balance and dynamic position sizing capital = strategy.equity riskAmount = capital * riskPercent // Define Stop Loss and Take Profit Levels stopLossLevel = close * (1 - riskPercent) takeProfitLevel = close * (1 + rewardMultiplier * riskPercent) // Trailing stop offset trailOffset = close * trailOffsetPercent // Entry Condition: Bullish Crossover if ta.crossover(fastEMA, slowEMA) positionSize = riskAmount / math.max(close - stopLossLevel, 0.01) // Prevent division by zero strategy.entry("Long", strategy.long, qty=positionSize) strategy.exit("TakeProfit", from_entry="Long", stop=stopLossLevel, limit=takeProfitLevel, trail_offset=trailOffset) // Exit Condition: Bearish Crossunder if ta.crossunder(fastEMA, slowEMA) strategy.close("Long") // Labels for Signals if ta.crossover(fastEMA, slowEMA) label.new(bar_index, low, "BUY", color=color.green, textcolor=color.white, style=label.style_label_up) if ta.crossunder(fastEMA, slowEMA) label.new(bar_index, high, "SELL", color=color.red, textcolor=color.white, style=label.style_label_down)