यह रणनीति दो घातीय चलती औसत (ईएमए) के क्रॉसओवर का उपयोग मुख्य ट्रेडिंग सिग्नल के रूप में करती है, जिसमें सापेक्ष शक्ति सूचकांक (आरएसआई), चलती औसत अभिसरण विचलन (एमएसीडी), और औसत सच्ची सीमा (एटीआर) के साथ संयुक्त रूप से ट्रेडिंग संकेतों की विश्वसनीयता में सुधार करने के लिए सहायक संकेतक हैं। जब तेज ईएमए धीमी ईएमए के ऊपर पार करता है, तो आरएसआई 70 से नीचे होता है, एमएसीडी लाइन सिग्नल लाइन से ऊपर होती है, और एटीआर मूल्य पिछले अवधि से 10% से अधिक बढ़ जाता है, तो एक लंबा संकेत उत्पन्न होता है; इसके विपरीत, जब तेज ईएमए धीमी ईएमए के नीचे पार करता है, तो आरएसआई 30 से ऊपर होता है, एमएसीडी लाइन सिग्नल लाइन से नीचे होती है, और एटीआर मूल्य पिछले अवधि की तुलना में 10% से अधिक बढ़ जाता है, तो एक छोटा संकेत उत्पन्न होता है। यह रणनीति निश्चित-बिंदु स्टॉप हानि और जोखिम के साथ लाभ नियंत्रण को भी निर्धारित करती है।
यह रणनीति EMA, RSI, MACD, और ATR जैसे कई तकनीकी संकेतकों को जोड़कर अपेक्षाकृत विश्वसनीय ट्रेडिंग संकेत उत्पन्न करती है, जबकि निश्चित बिंदु स्टॉप लॉस और लाभ लेने को सेट करके जोखिम को नियंत्रित करती है। हालांकि रणनीति में अभी भी कुछ कमियां हैं, लेकिन इसे आगे के अनुकूलन के माध्यम से सुधार किया जा सकता है, जैसे कि अधिक संकेतकों को पेश करना, स्टॉप लॉस और लाभ लेने को अनुकूलित करना, और मौलिक विश्लेषण को जोड़ना। कुल मिलाकर, रणनीति अपने तर्क में स्पष्ट है, समझने और लागू करने में आसान है, और शुरुआती लोगों के लिए सीखने और उपयोग के लिए उपयुक्त है।
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Enhanced EMA Crossover Strategy", overlay=true) // Indicators ema_fast = ema(close, 8) ema_slow = ema(close, 14) rsi = rsi(close, 14) // Correcting the MACD variable definitions [macd_line, signal_line, _] = macd(close, 12, 26, 9) atr_value = atr(14) // Entry conditions with additional filters long_condition = crossover(ema_fast, ema_slow) and rsi < 70 and (macd_line > signal_line) and atr_value > atr_value[1] * 1.1 short_condition = crossunder(ema_fast, ema_slow) and rsi > 30 and (macd_line < signal_line) and atr_value > atr_value[1] * 1.1 // Adding debug information plotshape(series=long_condition, color=color.green, location=location.belowbar, style=shape.xcross, title="Long Signal") plotshape(series=short_condition, color=color.red, location=location.abovebar, style=shape.xcross, title="Short Signal") // Risk management based on a fixed number of points stop_loss_points = 100 take_profit_points = 200 // Order execution if (long_condition) strategy.entry("Long", strategy.long, comment="Long Entry") strategy.exit("Exit Long", "Long", stop=close - stop_loss_points, limit=close + take_profit_points) if (short_condition) strategy.entry("Short", strategy.short, comment="Short Entry") strategy.exit("Exit Short", "Short", stop=close + stop_loss_points, limit=close - take_profit_points) // Plotting EMAs for reference plot(ema_fast, color=color.blue, title="Fast EMA") plot(ema_slow, color=color.orange, title="Slow EMA")