यह रणनीति क्रिप्टोक्यूरेंसी बाजार के लिए डिज़ाइन की गई है, जिसमें प्रविष्टियों और निकासों को निर्धारित करने के लिए अल्ट्रा-लंबी अवधि के आरएसआई और आरवीआई संकेतकों का एक संयोजन उपयोग किया जाता है।
विशेष रूप से, लंबी प्रविष्टियां तब ली जाती हैं जब आरवीआई खरीद क्षेत्र दिखाता है, और सुपर लॉन्ग आरएसआई ओवरबॉट स्तर से ऊपर जाता है। बाहर निकलना तब होता है जब आरवीआई बिक्री क्षेत्र में प्रवेश करता है, और आरएसआई स्टॉप लॉस के लिए ओवरसोल्ड स्तर से नीचे जाता है।
इस रणनीति का लाभ यह है कि अल्ट्रा-लॉन्ग आरएसआई विप्सॉव से बचने के लिए अधिक सटीक रूप से रुझानों का निर्धारण कर सकता है। आरवीआई उच्च प्रवेश सटीकता के लिए खरीद / बिक्री दबाव को मापने में मदद करता है। स्टॉप लॉस विधि ड्रॉडाउन को कम करने के लिए समय पर कट लॉस की अनुमति देती है।
हालांकि, आरएसआई और आरवीआई दोनों में पिछड़े मुद्दे हैं, और वे मोड़ बिंदुओं को तुरंत पकड़ नहीं सकते हैं। स्पाइक्स के अनुकूल होने के लिए ढीले मापदंडों या चलती स्टॉप की आवश्यकता होती है। इसके अलावा, आरएसआई में जटिल मूल्य कार्रवाई को डिकोड करने की सीमित क्षमताएं हैं।
संक्षेप में, क्रिप्टोक्यूरेंसी आरएसआई वक्र ट्रैकिंग रणनीति मजबूत रुझान आंदोलनों के साथ संयुक्त होने पर सभ्य परिणाम दे सकती है। लेकिन सक्रिय स्थिति प्रबंधन, पैरामीटर ट्यूनिंग, और निगरानी मूल बातें अभी भी व्यापारियों के लिए दीर्घकालिक स्थिर लाभ प्राप्त करने के लिए आवश्यक हैं।
/*backtest start: 2023-01-01 00:00:00 end: 2023-03-30 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © exlux99 strategy(title="Crypto RSI + RVI Strategy", overlay=true, initial_capital = 1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.03, pyramiding=1 ) Period = input(100, minval=1) BuyZone = input(49, minval=1) SellZone = input(50, minval=1) length=Period MA_s=0.0 pos=0.0 possig=0.0 nU=0.0 nD=0.0 nRes=0.0 ob=SellZone os=BuyZone WiMA(src, length) => MA_s=0.0 MA_s:=(src + nz(MA_s[1] * (length-1)))/length MA_s calc_rsi_volume(fv, length) => up=iff(fv>fv[1],abs(fv-fv[1])*volume,0) dn=iff(fv<fv[1],abs(fv-fv[1])*volume,0) upt=WiMA(up,length) dnt=WiMA(dn,length) 100*(upt/(upt+dnt)) rsi_v = calc_rsi_volume(close, length) // u=plot(ob) // l=plot(os) // fill(u,l,color.red) // plot(50) // plot(rsi_v, color=color.red, linewidth=1) reverse = input(false, title="Trade reverse") xPrice = close StdDev = stdev(xPrice, Period) d = iff(close > close[1], 0, StdDev) u = iff(close > close[1], StdDev, 0) nU := (13 * nz(nU[1],0) + u) / 14 nD := (13 * nz(nD[1],0) + d) / 14 nRes := 100 * nU / (nU + nD) pos := iff(nRes < BuyZone, -1, iff(nRes > SellZone, 1, nz(pos[1], 0))) possig := iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) long=crossover (rsi_v,ob) and (possig == 1) short=crossunder(rsi_v,os) and (possig == -1) g(v, p) => round(v * (pow(10, p))) / pow(10, p) risk = input(100) leverage = input(2.5) c = g((strategy.equity * leverage / open) * (risk / 100), 4) strategy.entry("long",1,c,when=long) strategy.close("long",when=short) //strategy.entry("short",0,when=short) // ------------------------- Strategy Logic --------------------------------- // var longOpeneda = false var shortOpeneda = false var int timeOfBuya = na longCondition= long and not longOpeneda if longCondition longOpeneda := true timeOfBuya := time longExitSignala = short exitLongCondition = longOpeneda[1] and longExitSignala if exitLongCondition longOpeneda := false timeOfBuya := na //plotshape(longCondition, style=shape.labelup, location=location.belowbar, color=color.color.green, size=size.tiny, title="BUY", text="BUY", textcolor=color.color.white) //plotshape(exitLongCondition, style=shape.labeldown, location=location.abovebar, color=color.color.red, size=size.tiny, title="SELL", text="SELL", textcolor=color.color.white) sl=input(0.2) tp=input(1.0) strategy.exit("long_tp/sl", "long", profit=close * tp / syminfo.mintick, loss=close * sl / syminfo.mintick, comment='long_tp/sl', alert_message = 'closelong') strategy.exit("short_tp/sl", "short", profit=close * tp / syminfo.mintick, loss=close * sl / syminfo.mintick, comment='short_tp/sl', alert_message = 'closeshort')