दो-तरफ़ा आरएसआई मूविंग एवरेज रिकवरी रणनीति


निर्माण तिथि: 2023-10-23 15:46:33 अंत में संशोधित करें: 2023-10-23 15:46:33
कॉपी: 0 क्लिक्स: 671
1
ध्यान केंद्रित करना
1617
समर्थक

दो-तरफ़ा आरएसआई मूविंग एवरेज रिकवरी रणनीति

अवलोकन

द्वि-दिशात्मक आरएसआई रेवेन्यू रिस्पांस रणनीति एक प्रवृत्ति-अनुवर्ती रणनीति है जो ओवरबॉट और ओवरसोल्ड की पहचान करने के लिए दो अलग-अलग समय अवधि के आरएसआई संकेतकों का उपयोग करती है। रणनीति का उद्देश्य ओवरबॉट के बाद ओवरबॉट करना और ओवरबॉट के बाद शून्य करना है। यह रणनीति व्यापार के अवसरों की पहचान करने के लिए एक चिकनी विषम चलती औसत, आरएसआई संकेतकों और पोजीशन रंग फिल्टर का उपयोग करती है।

रणनीति तर्क

यह रणनीति दो आरएसआई संकेतकों का उपयोग करती है, जिनमें से एक 5 मिनट के चार्ट पर और दूसरा 1 घंटे के चार्ट पर है। आरएसआई संकेतकों के लिए, ओवरसोल्ड स्तर 30 से नीचे और ओवरबॉय स्तर 70 से ऊपर माना जाता है।

यह आरएसआई को ओवरसोल्ड या ओवरबॉय के क्षेत्र में एक निश्चित अवधि के लिए ट्रैक करता है, जो एक विस्तारित ओवरसोल्ड या ओवरबॉय की स्थिति का संकेत देता है।

इसके अलावा, यह एक चिकनी विषम चलती औसत का उपयोग करता है और ट्रेडों में प्रवेश करने से पहले रुझान की दिशा की पुष्टि करने के लिए एक निश्चित अवधि के लिए लाल या हरे रंग की K लाइनों की जांच करता है। पोजिशनिंग रंग फिल्टर झूठे संकेतों को रोकने में मदद करता है।

जब आरएसआई और स्लाइडिंग और मूविंग एवरेज दोनों शर्तें पूरी होती हैं, तो रणनीति ओवरसोल्ड के बाद अधिक करती है, ओवरबॉट के बाद कम करती है, और दांव की कीमत फिर से औसत रेखा पर लौट आती है।

हर दिन के अंत में अपनी स्थिति को कम करें, ताकि रात भर की स्थिति से बचा जा सके।

श्रेष्ठता विश्लेषण

  • मल्टीटाइम फ़्रेम का उपयोग करके ओवरबॉय और ओवरसेलिंग की पहचान करें
  • चिकनी असमान चलती औसत फ़िल्टर शोर, प्रवृत्ति दिशा की पहचान
  • रंग फ़िल्टर को खोलें और झूठे संकेतों से बचें
  • दो सूचकांकों के आधार पर स्पष्ट खुले और बंद के नियम मिलान
  • दैनिक बराबरी नियंत्रण जोखिम

जोखिम विश्लेषण

  • यदि मजबूत रुझान जारी रहता है, तो आरएसआई ओवरबॉय ओवरसोल सिग्नल के बाद झटके दे सकता है
  • बाजार की खाई से रोक लग सकती है
  • स्लाइडिंग असमानता और चलती औसत में देरी से स्थिति खोलने में देरी हो सकती है और बाजार से चूक सकती है
  • दिन के अंत से पहले अपनी स्थिति को खाली करना और रात भर के लिए अपनी स्थिति को छोड़ना

अनुकूलन दिशा

  • संकेतों की पुष्टि करने के लिए अतिरिक्त फ़िल्टर जैसे कि लेनदेन की मात्रा या अस्थिरता
  • RSI चक्र और ओवरबॉट ओवरसोल्ड स्तर पैरामीटर का अनुकूलन करें
  • अस्थिरता के आधार पर गतिशील स्थिति नियंत्रण पर विचार करें
  • परीक्षण स्टॉप-लॉस से बाहर निकलें, न कि दिन के अंत से पहले ब्लीच करें
  • विभिन्न किस्मों में परीक्षण प्रभाव और पैरामीटर को समायोजित करें

संक्षेप

द्वि-दिशात्मक आरएसआई रैखिक प्रतिक्रिया रणनीति ट्रेडिंग गतिशीलता को नियमित करने के लिए एक विधि का उपयोग करती है। इसका उद्देश्य दो समय-फ्रेम, ओवरबॉय और ओवरसोल संकेतक, के-लाइन पैटर्न विश्लेषण और पोजीशन फिल्टर के संयोजन के माध्यम से एक उच्च संभावना वाली रैखिक वापसी के अवसरों की पहचान करना है। सख्त जोखिम प्रबंधन और सावधानीपूर्वक स्थिति नियंत्रण लाभ के साथ-साथ नियंत्रण में वापसी में मदद करता है। आगे के अनुकूलन और स्थिरता परीक्षण इस रणनीति को विभिन्न प्रकार के बाजारों में सफलतापूर्वक तैनात करने में मदद करेंगे।

रणनीति स्रोत कोड
/*backtest
start: 2023-09-01 00:00:00
end: 2023-09-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Gidra
//2018

//@version=2
strategy(title = "Gidra's Vchain Strategy v0.1", shorttitle = "Gidra's Vchain Strategy v0.1", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 100)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
rsiperiod = input(14, defval = 14, minval = 2, maxval = 100, title = "RSI period")
rsilimit = input(30, defval = 30, minval = 1, maxval = 50, title = "RSI limit")
rsibars = input(3, defval = 3, minval = 1, maxval = 20, title = "RSI signals")
useocf = input(true, defval = true, title = "Use Open Color Filter")
openbars = input(2, defval = 2, minval = 1, maxval = 20, title = "Open Color, Bars")
showrsi = input(true, defval = true, title = "Show indicator RSI")
fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")


//Heikin Ashi Open/Close Price
o=open
c=close
h=high
l=low
haclose = (o+h+l+c)/4
haopen = na(haopen[1]) ? (o + c)/2 : (haopen[1] + haclose[1]) / 2
hahigh = max (h, max(haopen,haclose))
halow = min (l, min(haopen,haclose))
col=haopen>haclose ? red : lime
plotcandle(haopen, hahigh, halow, haclose, title="heikin", color=col)

//RSI
uprsi = rma(max(change(close), 0), rsiperiod)
dnrsi = rma(-min(change(close), 0), rsiperiod)
rsi = dnrsi == 0 ? 100 : uprsi == 0 ? 0 : 100 - (100 / (1 + uprsi / dnrsi))
uplimit = 100 - rsilimit
dnlimit = rsilimit
rsidn = rsi < dnlimit ? 1 : 0
rsiup = rsi > uplimit ? 1 : 0

//RSI condition
rsidnok = highest(rsidn, rsibars) == 1? 1 : 0
rsiupok = highest(rsiup, rsibars) == 1? 1 : 0

//Color Filter
bar = haclose > haopen ? 1 : haclose < haopen ? -1 : 0
gbar = bar == 1 ? 1 : 0
rbar = bar == -1 ? 1 : 0
openrbarok = sma(gbar, openbars) == 1 or useocf == false
opengbarok = sma(rbar, openbars) == 1 or useocf == false

//Signals
up = openrbarok and rsidnok
dn = opengbarok and rsiupok

lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]

//Indicator RSI
colbg = showrsi == false ? na : rsi > uplimit ? red : rsi < dnlimit ? lime : na
bgcolor(colbg, transp = 20)

//Trading
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if time > timestamp(toyear, tomonth, today, 23, 59)// or exit
    strategy.close_all()