यह रणनीति एक ट्रेंड-फॉलोइंग सिस्टम है जो आरएसआई ओवरसोल्ड सिग्नल, दीर्घकालिक चलती औसत और वॉल्यूम पुष्टि को जोड़ती है। इसका उद्देश्य स्थापित अपट्रेंड के भीतर ओवरसोल्ड स्थितियों के दौरान लंबी स्थिति को पकड़ना है, जिसे वॉल्यूम विस्तार द्वारा मान्य किया जाता है। रणनीति 10 अवधि के आरएसआई, 250 और 500 अवधि के दोहरे एसएमए और 20 अवधि के वॉल्यूम चलती औसत को मुख्य संकेतकों के रूप में उपयोग करती है।
मूल तर्क तीन प्रमुख स्थितियों पर आधारित है जो सामंजस्य में काम करते हैंः
एक लंबी स्थिति तब शुरू की जाती है जब तीनों शर्तें एक साथ पूरी हो जाती हैं। एक्जिट सिग्नल एक डेथ क्रॉस (लंबे एमए के नीचे कम एमए क्रॉसिंग) द्वारा ट्रिगर किया जाता है। इसके अतिरिक्त, जोखिम प्रबंधन के लिए 5% स्टॉप-लॉस लागू किया जाता है।
यह एक अच्छी तरह से डिज़ाइन की गई प्रवृत्ति-अनुसरण रणनीति है जिसमें कठोर तर्क है, कई तकनीकी संकेतकों के माध्यम से प्रभावी रूप से रिटर्न और जोखिमों को संतुलित करता है। इसकी मुख्य ताकत व्यापक संकेत पुष्टि और जोखिम प्रबंधन प्रणालियों में निहित है, हालांकि यह ओवर-फिल्टरिंग और विलंबता में चुनौतियों का सामना करती है। सुझाए गए अनुकूलन दिशाओं के माध्यम से, रणनीति व्यावहारिक अनुप्रयोगों में बेहतर प्रदर्शन के लिए क्षमता दिखाती है।
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) https://creativecommons.org/licenses/by-nc-sa/4.0/ // © wielkieef //@version=5 strategy(title=' Rsi Long-Term Strategy [15min]', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.03) // Rsi rsi_lenght = input.int(10, title='RSI lenght', minval=0) rsi_up = ta.rma(math.max(ta.change(close), 0), rsi_lenght) rsi_down = ta.rma(-math.min(ta.change(close), 0), rsi_lenght) rsi_value = rsi_down == 0 ? 100 : rsi_up == 0 ? 0 : 100 - 100 / (1 + rsi_up / rsi_down) rsi_overs = rsi_value <= 30 rsi_overb = rsi_value >= 70 // Volume vol_sma_length = input.int(20, title='Volume lenght ', minval=1) Volume_condt = volume > ta.sma(volume, vol_sma_length) * 2.5 //SMA1 lengthSMA1 = input(250, title="Lenght SMA 1") SMA1 = ta.sma(close, lengthSMA1) //plot(SMA1, color=color.rgb(245, 108, 3), linewidth=1, title="SMA250") //SMA2 lengthSMA2 = input(500, title="Lenght SMA 2") SMA2 = ta.sma(close, lengthSMA2) //plot(SMA2, color=#9803f5, linewidth=1, title="SMA500") //Entry Logic Long_cond = (rsi_overs and SMA1 > SMA2 and Volume_condt ) if Long_cond strategy.entry('Long', strategy.long) //Close Logic Long_close = ta.crossunder(SMA1,SMA2) if Long_close strategy.close("Long") //Bar colors Bar_color = Volume_condt ? #fc9802 : SMA1 > SMA2 ? color.rgb(84, 252, 0) : SMA1 < SMA2 ? color.maroon : color.gray barcolor(color=Bar_color) // Rsi value Plotshapes plotshape(rsi_value < 30 and SMA1 > SMA2 and Volume_condt, title='Buy', color=color.new(color.green, 0), style=shape.circle, location=location.belowbar, size=size.tiny, textcolor=color.new(color.black, 0)) plotshape(rsi_value > 70 and SMA1 < SMA2 and Volume_condt, title='Sell', color=color.new(color.red, 0), style=shape.circle, location=location.abovebar, size=size.tiny, textcolor=color.new(color.black, 0)) plotshape(ta.crossunder(SMA1,SMA2) , title='DEATH CROSS', color=#000000, style=shape.xcross, location=location.abovebar, size=size.small, textcolor=color.new(color.black, 0)) //Stop-Loss// this code is from author RafaelZioni, modified by wielkieef pera(pcnt) => strategy.position_size != 0 ? math.round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na) stoploss = input.float(title=' stop loss', defval=5.0, minval=0.5) los = pera(stoploss) strategy.exit('SL', loss=los) // by wielkieef