
यह रणनीति एक बहु-सूचकांक चलती औसत (ईएमए) क्रॉसिंग सिग्नल पर आधारित एक प्रवृत्ति ट्रैकिंग प्रणाली है। 20, 50 और 150 चक्र ईएमए के संयोजन के माध्यम से, एक पूर्ण प्रवृत्ति पहचान और व्यापार निष्पादन ढांचे का निर्माण करता है। रणनीति विभिन्न चक्र ईएमए के बीच क्रॉसिंग संबंधों का उपयोग करती है ताकि बाजार में रुझान में बदलाव और विशिष्ट व्यापारिक समय निर्धारित किया जा सके।
रणनीति तीन अलग-अलग चक्रों की सूचकांक चलती औसत का उपयोग करती हैः ईएमए 20 अल्पकालिक रुझान के लिए, ईएमए 50 मध्यम अवधि के लिए, ईएमए 150 दीर्घकालिक रुझान के लिए। जब ईएमए 50 पर ईएमए 150 के माध्यम से एक गोल्ड क्रॉस बनता है, तो यह एक लंबी अवधि के उछाल की प्रवृत्ति का संकेत देता है; जब ईएमए 50 के नीचे ईएमए 150 के माध्यम से एक डेड क्रॉस बनता है, तो यह एक लंबी अवधि के गिरावट की प्रवृत्ति का संकेत देता है। विशिष्ट व्यापार संकेत ईएमए 20 और ईएमए 50 के क्रॉसिंग से उत्पन्न होते हैंः ईएमए 20 पर ईएमए 50 के माध्यम से एक खरीद संकेत उत्पन्न होता है, और ईएमए 20 ईएमए 50 के माध्यम से एक बिक्री संकेत उत्पन्न करता है।
इस रणनीति के माध्यम से कई सूचकांक चलती औसत के संयोजन के उपयोग, एक पूर्ण प्रवृत्ति ट्रैक ट्रेडिंग प्रणाली का निर्माण. रणनीति तर्क स्पष्ट है, सरल है, और अच्छी स्केलेबिलिटी है. सुझाव दिया अनुकूलन दिशा के माध्यम से, रणनीति की स्थिरता और अनुकूलनशीलता को और बढ़ाया जा सकता है. रणनीति मध्यम और लंबी अवधि के रुझानों को ट्रैक करने के लिए उपयुक्त है, लेकिन इसका उपयोग करते समय बाजार की स्थिति के विकल्पों और जोखिम के नियंत्रण पर ध्यान देने की आवश्यकता है.
/*backtest
start: 2024-02-20 00:00:00
end: 2025-01-20 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("EMA2050150 Crossover Strategy#ganges", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_value=0.1, slippage=3)
// EMAs
ema20 = ta.ema(close, 20)
ema50 = ta.ema(close, 50)
ema150 = ta.ema(close, 150)
// Cross conditions
longCondition = ta.crossover(ema20, ema50)
flatCondition = ta.crossunder(ema20, ema50)
deathCross = ta.crossunder(ema50, ema150)
goldenCross = ta.crossover(ema50, ema150)
// // Trade execution
// if longCondition and time >= startDate and time <= endDate and strategy.position_size == 0
// strategy.entry("Long", strategy.long)
// if flatCondition and time >= startDate and time <= endDate and strategy.position_size > 0
// strategy.close("Long")
// Plot EMAs
plot(ema20, title="EMA 20", color=color.blue)
plot(ema50, title="EMA 50", color=color.orange)
plot(ema150, title="EMA 150", color=color.red)
// Plot cross signals
plotshape(series=goldenCross, location=location.belowbar, color=color.green, style=shape.labelup, title="Golden Cross", size=size.small, text="Golden Cross")
plotshape(series=deathCross, location=location.abovebar, color=color.red, style=shape.labeldown, title="Death Cross", size=size.small, text="Death Cross")
// Plot buy and sell signals
plotshape(series=longCondition, location=location.belowbar, color=color.blue, style=shape.triangleup, title="Buy Signal", size=size.small, text="Buy")
plotshape(series=flatCondition, location=location.abovebar, color=color.orange, style=shape.triangledown, title="Sell Signal", size=size.small, text="Sell")
// Trade execution
if longCondition and strategy.position_size == 0
strategy.entry("Long", strategy.long)
if flatCondition and strategy.position_size > 0
strategy.close("Long")