यह कई घातीय चलती औसत (ईएमए) क्रॉसओवर पर आधारित एक प्रवृत्ति के बाद की रणनीति है। यह रणनीति बाजार के रुझानों को पकड़ने और शर्तों को पूरा करने पर लंबे / छोटे ट्रेडों को निष्पादित करने के लिए 10 अवधि के अल्पकालिक ईएमए, 50 अवधि के मध्यम अवधि के ईएमए और 200 अवधि के दीर्घकालिक ईएमए के बीच क्रॉसओवर संबंधों का उपयोग करती है। मूल विचार कई समय सीमा चलती औसत के माध्यम से बाजार शोर को फ़िल्टर करना, मुख्य प्रवृत्ति दिशा की पहचान करना और प्रवृत्ति निरंतरता के दौरान लाभ प्राप्त करना है।
इस रणनीति में सिग्नल जनरेशन तंत्र के रूप में एक ट्रिपल ईएमए क्रॉसओवर प्रणाली का उपयोग किया गया है। विशेष रूप सेः 1. 200 अवधि के ईएमए को मुख्य प्रवृत्ति संकेतक के रूप में उपयोग करता है, केवल इसके ऊपर लंबी स्थिति और इसके नीचे छोटी स्थिति लेता है 2. लंबी पोजीशन खोलता है जब अल्पकालिक ईएमए (10-अवधि) मध्यमकालिक ईएमए (50-अवधि) से पार हो जाता है और कीमत दीर्घकालिक ईएमए से ऊपर होती है 3. शॉर्ट पोजीशन खोलता है जब अल्पकालिक ईएमए मध्यमकालिक ईएमए से नीचे पार हो जाता है और कीमत दीर्घकालिक ईएमए से नीचे होती है 4. लघु अवधि के ईएमए के नीचे पार होने पर लंबी स्थिति बंद करता है 5. लघु अवधि के ईएमए के मध्यम अवधि के ईएमए के ऊपर पार होने पर शॉर्ट पोजीशन बंद करता है रणनीति में असामान्य ईएमए क्रॉसओवर और संबंधों की निगरानी के लिए डिबगिंग सुविधाएं शामिल हैं।
यह रणनीति एक क्लासिक ट्रेंड फॉलोइंग सिस्टम है जो कई ईएमए के उपयोग के माध्यम से समय पर लाभ लेने और स्टॉप-लॉस बनाए रखते हुए प्रमुख ट्रेंड कैप्चर सुनिश्चित करता है। हालांकि इसमें कुछ अंतर्निहित देरी है, उचित पैरामीटर सेटिंग्स और जोखिम प्रबंधन अभी भी ट्रेंडिंग बाजारों में स्थिर रिटर्न उत्पन्न कर सकते हैं। अतिरिक्त तकनीकी संकेतकों और परिष्कृत ट्रेडिंग नियमों की शुरूआत के माध्यम से रणनीति में महत्वपूर्ण अनुकूलन क्षमता है।
/*backtest start: 2024-12-10 00:00:00 end: 2025-01-09 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("EMA Crossover Strategy (Enhanced Debug)", overlay=true) // Inputs for EMA periods shortEMA = input.int(10, title="Short EMA Period") mediumEMA = input.int(50, title="Medium EMA Period") longEMA = input.int(200, title="Long EMA Period") // Calculating EMAs emaShort = ta.ema(close, shortEMA) emaMedium = ta.ema(close, mediumEMA) emaLong = ta.ema(close, longEMA) // Plot EMAs plot(emaShort, color=color.green, title="Short EMA") plot(emaMedium, color=color.blue, title="Medium EMA") plot(emaLong, color=color.red, title="Long EMA") // Conditions for entry and exit longCondition = close > emaLong and ta.crossover(emaShort, emaMedium) and emaMedium > emaLong shortCondition = close < emaLong and ta.crossunder(emaShort, emaMedium) and emaMedium < emaLong closeLongCondition = ta.crossunder(emaShort, emaMedium) closeShortCondition = ta.crossover(emaShort, emaMedium) // Debugging labels for unexpected behavior if (ta.crossover(emaShort, emaLong) and not ta.crossover(emaShort, emaMedium)) label.new(bar_index, high, "Short > Long", style=label.style_circle, color=color.red, textcolor=color.white) // Debugging EMA relationships if (emaMedium <= emaLong) label.new(bar_index, high, "Medium < Long", style=label.style_cross, color=color.orange, textcolor=color.white) // Entry logic if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Exit logic if (closeLongCondition) strategy.close("Long") if (closeShortCondition) strategy.close("Short") // Display labels for signals plotshape(series=longCondition, style=shape.labelup, color=color.green, location=location.belowbar, title="Buy Signal") plotshape(series=shortCondition, style=shape.labeldown, color=color.red, location=location.abovebar, title="Sell Signal")