यह एक्सपोनेंशियल मूविंग एवरेज (ईएमए) क्रॉसओवर और रिलेटिव स्ट्रेंथ इंडेक्स (आरएसआई) की पुष्टि पर आधारित एक ट्रेंड-फॉलोइंग रणनीति है। यह रणनीति अल्पकालिक और दीर्घकालिक ईएमए क्रॉसओवर से संकेतों को आरएसआई गति की पुष्टि के साथ जोड़ती है, जबकि प्रतिशत-आधारित स्टॉप-लॉस तंत्र को शामिल करती है। इसका उद्देश्य तकनीकी संकेतकों के तालमेल प्रभाव के माध्यम से जोखिम नियंत्रण बनाए रखते हुए महत्वपूर्ण बाजार प्रवृत्ति उलट को पकड़ना है।
रणनीति एक दोहरी तकनीकी संकेतक फ़िल्टरिंग तंत्र का उपयोग करती हैः सबसे पहले, यह अल्पकालिक ईएमए (9 अवधि) और दीर्घकालिक ईएमए (21 अवधि) के क्रॉसओवर के माध्यम से संभावित प्रवृत्ति उलट बिंदुओं की पहचान करती है। खरीद संकेत तब उत्पन्न होते हैं जब अल्पकालिक ईएमए दीर्घकालिक ईएमए से ऊपर पार हो जाता है और आरएसआई मूल्य निर्दिष्ट स्तर से ऊपर होता है। बेच संकेत तब होते हैं जब अल्पकालिक ईएमए दीर्घकालिक ईएमए से नीचे पार हो जाता है और आरएसआई मूल्य निर्दिष्ट स्तर से नीचे होता है। इसके अलावा, रणनीति में प्रतिशत-आधारित स्टॉप-लॉस तंत्र शामिल होता है, जो प्रत्येक व्यापार के लिए गतिशील स्टॉप-लॉस स्तर निर्धारित करता है ताकि डाउनसाइड जोखिम को प्रभावी ढंग से नियंत्रित किया जा सके।
यह रणनीति चलती औसत और गति संकेतक के संयोजन के माध्यम से एक पूर्ण प्रवृत्ति-अनुसरण ट्रेडिंग प्रणाली का निर्माण करती है। इसके मुख्य फायदे इसके विश्वसनीय संकेत पुष्टि तंत्र और व्यापक जोखिम नियंत्रण प्रणाली में निहित हैं। जबकि कुछ अंतर्निहित सीमाएं हैं, प्रस्तावित अनुकूलन दिशाओं के माध्यम से रणनीति के समग्र प्रदर्शन को और बढ़ाया जा सकता है। यह मध्यम से दीर्घकालिक प्रवृत्ति व्यापारियों के लिए उपयुक्त एक मजबूत रणनीति ढांचा है।
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-25 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Simple Trend Following Strategy", overlay=true) // Inputs shortEMA = input.int(9, title="Short EMA Length", minval=1) longEMA = input.int(21, title="Long EMA Length", minval=1) confirmationRSI = input.int(50, title="RSI Confirmation Level", minval=1, maxval=100) stopLossPercent = input.float(2, title="Stop Loss Percentage", minval=0.1) // Stop Loss percentage // Calculations emaShort = ta.ema(close, shortEMA) emaLong = ta.ema(close, longEMA) rsiValue = ta.rsi(close, 14) // Buy and Sell Conditions buySignal = ta.crossover(emaShort, emaLong) and rsiValue > confirmationRSI sellSignal = ta.crossunder(emaShort, emaLong) and rsiValue < confirmationRSI // Plotting Signals plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Plotting EMAs plot(emaShort, title="Short EMA", color=color.yellow) plot(emaLong, title="Long EMA", color=color.purple) // Strategy logic strategy.entry("Buy", strategy.long, when=buySignal) strategy.entry("Sell", strategy.short, when=sellSignal) // Calculate stop loss price based on stopLossPercent longStopLossPrice = strategy.position_avg_price * (1 - stopLossPercent / 100) shortStopLossPrice = strategy.position_avg_price * (1 + stopLossPercent / 100) // Draw stop loss line for long positions if (strategy.position_size > 0) // For long positions line.new(x1=bar_index, y1=longStopLossPrice, x2=bar_index + 1, y2=longStopLossPrice, color=color.red, width=2, style=line.style_dashed) // Draw stop loss line for short positions if (strategy.position_size < 0) // For short positions line.new(x1=bar_index, y1=shortStopLossPrice, x2=bar_index + 1, y2=shortStopLossPrice, color=color.green, width=2, style=line.style_dashed)