आरएसआई संकेतक संकेतों पर आधारित मात्रात्मक व्यापार रणनीति

लेखक:चाओझांग, दिनांक: 2023-09-14 20:26:49
टैगः

यह लेख एक मात्रात्मक ट्रेडिंग रणनीति का विस्तार से वर्णन करता है जो ट्रेडिंग संकेत उत्पन्न करने के लिए आरएसआई संकेतक का उपयोग करता है। यह आरएसआई संकेतक को संसाधित करता है और लंबे और छोटे ट्रेडों के लिए प्रवेश और निकास मानदंड निर्धारित करता है।

I. रणनीतिक तर्क

व्यापार का मुख्य तर्क इस प्रकार है:

  1. आरएसआई ((१४) संकेतक की गणना करें और संसाधित थरथरानवाला प्राप्त करने के लिए ईएमए ((२८) का उपयोग करके इसे चिकना करें।

  2. ऊपर/नीचे के बैंड प्राप्त करने के लिए संसाधित आरएसआई पर बोलिंगर बैंड की गणना करें। ओवरबॉट/ओवरसोल्ड जोन सेट करें।

  3. जब संसाधित आरएसआई प्रवेश रेखा के नीचे पार करता है, तो एक खरीद संकेत उत्पन्न होता है। जब यह ऊपर पार करता है, तो एक बिक्री संकेत उत्पन्न होता है।

  4. जब सूचक ओवरबॉट/ओवरसोल्ड जोन में प्रवेश करता है, तो एक बंद स्थिति संकेत उत्पन्न होता है।

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

II. रणनीति के फायदे

इसका सबसे बड़ा लाभ संकेतक प्रसंस्करण से बढ़े हुए पैरामीटर ट्यूनिंग स्पेस है, जो व्यापार आवृत्ति पर सख्त नियंत्रण की अनुमति देता है और ओवरट्रेडिंग को रोकता है।

एक अन्य लाभ सूचक के स्पष्ट संख्यात्मक मूल्यों के आधार पर सहज प्रवेश मानदंड है।

अंत में, ओवरबॉट/ओवरसोल्ड रेंज समय पर लाभ लेने और ट्रेड प्रति जोखिम नियंत्रण में भी मदद करती है।

III. संभावित कमजोरियां

हालांकि, इस रणनीति में निम्नलिखित जोखिम भी हैं:

सबसे पहले, आरएसआई रिवर्स ट्रेडों पर ध्यान केंद्रित करता है, जो ट्रेंड के दौरान झूठे संकेत उत्पन्न कर सकते हैं।

दूसरा, अनुचित पैरामीटर ट्यूनिंग से भी अति-अनुकूलन और बदलती बाजार स्थितियों के अनुकूल होने में विफलता हो सकती है।

अंत में, अपेक्षाकृत कम जीत दर भी रणनीति को खींचने के जोखिम के लिए उजागर करती है।

IV. सारांश

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


/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
//-----------------------------------------------------------------
//This simple strategy base on RSI, EMA, Bollinger Bands to get Buy and Sell Signal with detail as below:
//-----------------------------------------------------------------
//1.Define Oscillator Line
//+ Oscillator Line is smoothed by ema(28) of RSI(14) on H1 Timeframe
//2.Define Overbought and Oversold
//+ Apply Bollinger Bands BB(80,3) on Oscillator Line and calculate %b
//+ Overbought Zone marked above level 0.8
//+ Oversold Zone marked below level 0.2
//3.Buy Signal
//+ Entry Long Positon when %b crossover Point of Entry Long
//+ Deafault Point of Entry Long is 0.2
//+ Buy signal marked by Green dot
//4.Sell Signal
//+ Entry Short Position when %b crossunder Point of Entry Short
//+ Deafault Point of Entry Short is 0.8
//+ Sell signal marked by Red dot
//5.Exit Signal
//+ Exit Position (both Long and Short) when %b go into Overbought Zone or Oversold Zone
//+ Exit signal marked by Yellow dot
//-----------------------------------------------------------------
strategy(title="RSI %b Signal [H1 Backtesting]", overlay=false)

//RSI
rsi_gr="=== RSI ==="
rsi_len = input(14, title = "RSI",inline="set",group=rsi_gr)
smoothed_len = input(28, title = "EMA",inline="set",group=rsi_gr)
rsi=ta.ema(ta.rsi(close,rsi_len),smoothed_len)
//rsi's BOLLINGER BANDS
pb_gr="=== %b ==="
length = input(80, title = "Length",inline="set1",group=pb_gr)
rsimult = input(3.0, title = "Multiplier",inline="set1",group=pb_gr)
ovb = input(0.8, title = "Overbought",inline="set2",group=pb_gr)
ovs = input(0.2, title = "Oversold",inline="set2",group=pb_gr)
et_short = input(0.8, title = "Entry Short",inline="set3",group=pb_gr)
et_long = input(0.2, title = "Entry Long",inline="set3",group=pb_gr)
[rsibasis, rsiupper, rsilower] = ta.bb(rsi, length, rsimult)
//rsi's %B
rsipB = ((rsi - rsilower) / (rsiupper - rsilower))
plot(rsipB, title="rsi's %B", color=rsipB>math.min(ovb,et_short)?color.red:rsipB<math.max(ovs,et_long)?color.green:color.aqua, linewidth=1)

h1=hline(1,color=color.new(color.red,100))
h4=hline(ovb,color=color.new(color.red,100))
h0=hline(0,color=color.new(color.green,100))
h3=hline(ovs,color=color.new(color.green,100))
h5=hline(0.5,color=color.new(color.silver,0),linestyle=hline.style_dotted)

fill(h1,h4, title="Resistance", color=color.new(color.red,90))
fill(h0,h3, title="Support", color=color.new(color.green,90))

//Signal
rsi_buy=
           rsipB[1]<et_long
           and
           rsipB>et_long
rsi_sell=
           rsipB[1]>et_short
           and
           rsipB<et_short
rsi_exit=
           (rsipB[1]>ovs and rsipB<ovs)
           or
           (rsipB[1]<ovb and rsipB>ovb)
plotshape(rsi_buy?rsipB:na,title="Buy",style=shape.circle,color=color.new(color.green,0),location=location.absolute)
plotshape(rsi_sell?rsipB:na,title="Sell",style=shape.circle,color=color.new(color.red,0),location=location.absolute)
plotshape(rsi_exit?rsipB:na,title="Exit",style=shape.circle,color=color.new(color.yellow,0),location=location.absolute)
//Alert
strategy.entry("Long",strategy.long,when=rsi_buy)
strategy.close("Long",when=rsi_exit)
strategy.entry("Short",strategy.short,when=rsi_sell)
strategy.close("Short",when=rsi_exit)
//EOF

अधिक