
यह एक बहुविध घातीय मूविंग एवरेज (ईएमए) क्रॉसओवर पर आधारित प्रवृत्ति अनुसरण रणनीति है। यह रणनीति बाजार के रुझानों को पकड़ने और शर्तें पूरी होने पर लंबे और छोटे ट्रेडों में प्रवेश करने के लिए 10-अवधि के अल्पकालिक ईएमए, 50-अवधि के मध्यम-अवधि ईएमए और 200-अवधि के दीर्घकालिक ईएमए के क्रॉसओवर संबंध का उपयोग करती है। रणनीति का मुख्य विचार कई समय सीमा के चलती औसत के माध्यम से बाजार के शोर को फ़िल्टर करना, मुख्य प्रवृत्ति दिशा की पहचान करना और प्रवृत्ति जारी रहने पर लाभ प्राप्त करना है।
यह रणनीति ट्रेडिंग सिग्नल निर्माण तंत्र के रूप में ट्रिपल ईएमए क्रॉसओवर प्रणाली का उपयोग करती है। विशेषतः:
यह रणनीति एक क्लासिक ट्रेंड ट्रैकिंग सिस्टम है। कई ईएमए के समन्वित उपयोग के माध्यम से, यह न केवल मुख्य प्रवृत्ति की समझ सुनिश्चित करता है, बल्कि समय पर लाभ और हानि स्टॉप-लॉस को भी सक्षम बनाता है। यद्यपि एक निश्चित अंतराल है, उचित पैरामीटर सेटिंग्स और जोखिम प्रबंधन के माध्यम से, ट्रेंडिंग मार्केट में अभी भी स्थिर रिटर्न प्राप्त किया जा सकता है। रणनीति के अनुकूलन की काफी गुंजाइश है, तथा अन्य तकनीकी संकेतकों को शामिल करके तथा ट्रेडिंग नियमों में सुधार करके प्रदर्शन में सुधार किया जा सकता है।
/*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")