यह रणनीति रिलेटिव स्ट्रेंथ इंडेक्स (आरएसआई) संकेतक के आधार पर लंबी और छोटी के लिए एक स्वचालित ट्रेडिंग सिस्टम डिजाइन करती है। यह स्वचालित रूप से लंबी और छोटी संकेत उत्पन्न कर सकती है जब आरएसआई ओवरबॉट या ओवरसोल्ड स्तर तक पहुंच जाता है और स्वचालित ट्रेडिंग कर सकता है।
यह रणनीति एक निश्चित अवधि के भीतर कीमतों में वृद्धि और गिरावट के आधार पर 0-100 की सीमा में आरएसआई मूल्यों की गणना करती है। जब आरएसआई 30 से नीचे होता है, तो यह ओवरसोल्ड स्थिति है। जब आरएसआई 70 से ऊपर होता है, तो यह ओवरबॉट स्थिति है। इस नियम के अनुसार, जब आरएसआई ओवरसोल्ड क्षेत्र तक पहुंचता है तो रणनीति स्वचालित रूप से लंबी हो जाती है और जब आरएसआई ओवरबोल्ड क्षेत्र तक पहुंचता है तो शॉर्ट हो जाती है।
विशेष रूप से, रणनीति पहले 15-अवधि आरएसआई की गणना करती है। जब आरएसआई 20 से नीचे गिरता है, तो इसे ओवरसोल्ड माना जाता है। इस समय, जब कीमत 200-दिवसीय चलती औसत से ऊपर टूट जाती है, तो एक लंबी स्थिति खोली जाती है। जब आरएसआई 80 से ऊपर बढ़ता है, तो इसे ओवरबॉट माना जाता है। इस समय, एक छोटी स्थिति खोली जाती है। लंबे या छोटे जाने के बाद, लाभ लेने और स्टॉप लॉस को एक्जिट पदों पर सेट किया जाता है।
इसके अतिरिक्त, रणनीति व्यापार संकेतों को अधिक सहज बनाने के लिए मूल्य संकेत होने पर संबंधित लैंडमार्क लाइनें और लेबल खींचती है।
जोखिम नियंत्रण उपायों में शामिल हैंः आरएसआई मापदंडों का अनुकूलन, विभिन्न उत्पादों के अनुरूप ओवरबॉट और ओवरसोल्ड सीमाओं को समायोजित करना, स्टॉप लॉस को उचित रूप से सेट करना, प्रवृत्ति के खिलाफ व्यापार से बचने के लिए प्रवृत्ति संकेतकों के साथ संयोजन करना।
कुल मिलाकर यह एक स्वचालित ट्रेडिंग रणनीति है जो ओवरबॉट और ओवरसोल्ड स्थितियों का न्याय करने के लिए आरएसआई संकेतक का उपयोग करती है। यह ट्रेडिंग सिग्नल उत्पन्न करती है जब आरएसआई चरम ओवरबॉट या ओवरसोल्ड स्तरों तक पहुंच जाता है, और स्वचालित रूप से लंबी और छोटी ट्रेडिंग कर सकता है। रणनीति विचार सरल और स्पष्ट है, लागू करना आसान है, और एक बुनियादी स्वचालित ट्रेडिंग रणनीति के रूप में उपयुक्त है। लेकिन आरएसआई संकेतक में कुछ पिछड़ता है, इसलिए संकेत की सटीकता में सुधार के लिए इसे अन्य संकेतकों के साथ अनुकूलित करने की सिफारिश की जाती है। इसके अलावा, जोखिम नियंत्रण, स्टॉप लॉस तंत्र का अनुकूलन करने, व्यापार जोखिम को कम करने के लिए जोखिम नियंत्रण मॉड्यूल विकसित करने पर ध्यान देना चाहिए। यदि लाइव ट्रेडिंग में अनुकूलित और सत्यापित किया जाता है, तो रणनीति लंबी और छोटी ट्रेडिंग के लिए एक प्रभावी स्वचालित प्रणाली बन सकती है।
/*backtest start: 2023-10-22 00:00:00 end: 2023-10-29 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI Improved strategy", overlay=true) higherTF1 = input.timeframe('15' , "Resolution", options = ['5', '15', '1H', 'D', 'W', 'M']) dailyopen = request.security(syminfo.tickerid, higherTF1, close) Reward = input(1600) Risk = input(1600) length = input( 5 ) overSold = input( 30 ) overBought = input( 70 ) EMA = input(200) price = close vrsi = ta.rsi(price, length) RSIlowest = vrsi[1] > vrsi ? true : false RSIhighest = vrsi[1] < vrsi ? true : false //ro = ta.crossunder(vrsi, 20) //ru = ta.crossover(vrsi, 80) co = ta.crossunder(vrsi, overSold) cu = ta.crossunder(vrsi, overBought) plot(ta.ema(close, EMA)) plot(ta.ema(close, 50), color = color.orange) UponEMA = close > ta.ema(close, EMA) ? true : false belowEMA = close < ta.ema(close, EMA) ? true : false //transfer 'float' to 'int' to 'string' r = int(vrsi) value = str.tostring(r) m = int(strategy.openprofit) money = str.tostring(m) if (not na(vrsi)) //when price stand up on 200ema and rsi is at oversold area, open long position // if (co and UponEMA) // strategy.order("Rsi long", strategy.long, 1 , comment = "Rsi long") if(vrsi < 20 and RSIlowest) // line1 = line.new(x1=bar_index, y1=dailyopen, x2=bar_index+1, y2=dailyopen, xloc=xloc.bar_index, style=line.style_solid,extend=extend.right, color=color.aqua, width = 2) // line.delete(line1[1]) // remove the previous line when new bar appears // label1 = label.new(x=bar_index, y=dailyopen,yloc=yloc.belowbar, text = value,textcolor = color.white, color = color.green, style = label.style_label_up) // label.delete(label1[1]) strategy.order("Rsi long", strategy.long, 1 , comment = "Rsi long") strategy.exit("exit", "Rsi long", profit = Reward, loss = Risk, comment = "Rsi long exit") //strategy.close("Rsi short", comment = "Rsi close") if(vrsi > 80 and RSIhighest) // line2 = line.new(x1=bar_index, y1=dailyopen, x2=bar_index+1, y2=dailyopen, xloc=xloc.bar_index, style=line.style_solid,extend=extend.right, color = #e65100, width = 2) // line.delete(line2[1]) // remove the previous line when new bar appears // label2 = label.new(x=bar_index, y=dailyopen,yloc=yloc.abovebar, text = value, textcolor = color.white, color = color.red) // label.delete(label2[1]) strategy.order("Rsi short",strategy.short, 1, comment = "Rsi short ") strategy.exit("exit", "Rsi short", profit = Reward,loss = Risk, comment = "Rsi short exit") // if(UponEMA) // strategy.close("Rsi short", comment = "Rsi short close") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_cross) //plotshape(confirmPH, title="Label",offset = 1,text="Bull",style=shape.labeldown,location=location.abovebar,color=color.green,textcolor=color.green) //when Rsi reaches overbought, draw a Horizontal Ray to close prices, similarly when it comes to oversold.(accomplished) //detects when there is more lower/higher RSI values, adjust horizontal Ray and label to new posistion.(accomplished)