
यह रणनीति दो चलती औसत (ईएमए) के क्रॉसिंग पर आधारित है, जो एक ट्रेडिंग सिग्नल उत्पन्न करता है। जब अल्पकालिक ईएमए (20 दिन) नीचे से ऊपर की ओर लंबे समय तक ईएमए (50 दिन) को पार करता है, तो यह एक खरीद संकेत उत्पन्न करता है; जब अल्पकालिक ईएमए ऊपर से नीचे की ओर लंबे समय तक ईएमए को पार करता है, तो यह एक बेचने का संकेत उत्पन्न करता है। साथ ही, इस रणनीति में एक 200 दिन ईएमए को दीर्घकालिक रुझानों के लिए संदर्भ के रूप में चित्रित किया गया है। इस रणनीति का मुख्य विचार विभिन्न आवधिक चलती औसत के क्रॉसिंग का उपयोग करना है, जिससे बाजार के रुझानों में बदलाव को पकड़ने के लिए व्यापार किया जा सके।
ईएमए द्वि-समानता रेखा क्रॉसिंग रणनीति एक सरल और समझने योग्य ट्रेडिंग रणनीति है जो ट्रेंडिंग बाजारों के लिए उपयुक्त है। यह बाजार की प्रवृत्ति में बदलाव को पकड़ने के लिए अल्पकालिक और दीर्घकालिक चलती औसत के क्रॉसिंग का उपयोग करता है, जबकि दीर्घकालिक प्रवृत्ति संदर्भों को पेश किया जाता है। हालांकि इस रणनीति में कुछ सीमाएं हैं, जैसे कि अस्थिर बाजार में खराब प्रदर्शन और चलती औसत की पिछड़ापन, अन्य संकेतकों को पेश करने, पैरामीटर को अनुकूलित करने और जोखिम नियंत्रण उपायों को जोड़ने जैसे तरीकों से रणनीति की स्थिरता और लाभप्रदता को और बढ़ाया जा सकता है।
/*backtest
start: 2023-03-23 00:00:00
end: 2024-03-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Crossover Strategy by Peter Gangmei", overlay=true)
// Define the length for moving averages
short_ma_length = input.int(20, "Short MA Length")
long_ma_length = input.int(50, "Long MA Length")
long_ma_200_length = input.int(200, "Long MA 200 Length")
// Define start time for testing
start_time = timestamp(2024, 01, 01, 00, 00)
// Calculate current date and time
current_time = timenow
// Calculate moving averages
ema20 = ta.ema(close, short_ma_length)
ema50 = ta.ema(close, long_ma_length)
ema200 = ta.ema(close, long_ma_200_length)
// Crossing conditions
crossed_above = ta.crossover(ema20, ema50)
crossed_below = ta.crossunder(ema20, ema50)
// Entry and exit conditions within the specified time frame
if true
if (crossed_above)
strategy.entry("Buy", strategy.long)
alert("Buy Condition", alert.freq_once_per_bar_close)
if (crossed_below)
strategy.entry("Sell", strategy.short)
alert("Sell Condition", alert.freq_once_per_bar_close)
// Plotting moving averages for visualization
plot(ema20, color=color.green, title="EMA20")
plot(ema50, color=color.red, title="EMA50")
plot(ema200, color=color.blue, title="EMA200")
// Placing buy and sell markers
plotshape(series=crossed_above, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=crossed_below, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")