आरएसआई एमएसीडी क्रॉसओवर डबल एमए ट्रैकिंग रणनीति

लेखक:चाओझांग, दिनांक: 2023-10-23 17:00:44
टैगः

img

अवलोकन

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

रणनीति तर्क

  1. ओवरबॉट और ओवरसोल्ड के लिए आरएसआई संकेतक की गणना करें
  • मूल्य परिवर्तन की वृद्धि और गिरावट की गणना करें

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

  • अधिक खरीदे गए और अधिक बेचे गए स्तरों का निर्धारण

  1. क्रॉसओवर के लिए MACD की गणना करें
  • त्वरित एमए, धीमी एमए और संकेत लाइन की गणना करें

  • सोने के क्रॉस पर लंबा प्रवेश और मृत्यु क्रॉस पर बाहर निकलें

  • क्रॉसओवर स्थितियों का चित्रण करें

  1. दोहरी एमए फ़िल्टर लागू करें
  • तेज़ और धीमी गति से चलती औसत की गणना करें

  • केवल तभी ट्रेडिंग पर विचार करें जब तेज एमए धीमी एमए से ऊपर जाए

  • शोर फ़िल्टर करें और प्रवृत्ति का पालन करें

  1. प्रविष्टि के लिए संयोजन संकेतक
  • आरएसआई, एमएसीडी और डबल एमए के साथ प्रवेश संकेत फ़िल्टर करें

  • रणनीति की सटीकता और स्थिरता में सुधार

लाभ विश्लेषण

  • कई संकेतकों का संयोजन सटीकता में सुधार करता है

  • ट्रेंड फॉलो करने से शोर फ़िल्टर होता है और स्थिरता बढ़ जाती है

  • आरएसआई संभावित उलट बिंदुओं को देखता है

  • MACD क्रॉसओवर सरल प्रवेश और निकास संकेत प्रदान करता है

  • डबल एमए अधिकांश काउंटरट्रेंड ट्रेडों को हटा देता है

  • कुछ मापदंडों के साथ समझने में आसान, सीखने के लिए अच्छा

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

  • कई संकेतकों के साथ अतिसंयोजन का जोखिम

  • दोहरी एमए लचीलापन का त्याग करती है और अवसरों को खो सकती है

  • आरएसआई और एमएसीडी मापदंडों का सावधानीपूर्वक चयन करना आवश्यक है

  • प्रतीक के आधार पर स्टॉप लॉस पर ध्यान दें

  • मापदंडों के आवधिक रीट्यूनिंग की आवश्यकता होती है

अनुकूलन दिशाएँ

  • विभिन्न प्रतीकों के लिए आरएसआई पैरामीटर समायोजित करें

  • बेहतर ट्रैकिंग के लिए डबल एमए अवधि का अनुकूलन

  • एकल व्यापार हानि को नियंत्रित करने के लिए स्टॉप लॉस जोड़ें

  • संयोजन को समृद्ध करने के लिए अधिक संकेतक शामिल करें

  • ऑटो-ट्यूनिंग के लिए अनुकूलनशील पैरामीटर मॉडल विकसित करना

सारांश

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


/*backtest
start: 2023-09-22 00:00:00
end: 2023-10-22 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

// strategy(title="RSI MACD", precision = 6, pyramiding = 1, default_qty_type = strategy.percent_of_equity, default_qty_value = 99, commission_type = strategy.commission.percent, commission_value = 0.25, initial_capital = 1000)

// Component Code Start
// Example usage:
// if testPeriod()
//   strategy.entry("LE", strategy.long)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(7, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() => true
// Component Code Stop

//standard rsi template
src = ohlc4, len = input(14, minval=1, title="Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi, color=#87ff1a)
band1 = hline(80)
band = hline(50)
band0 = hline(20)
fill(band1, band0, color=purple, transp=90)

//macd

fast_length = input(title="Fast Length",  defval=9)
slow_length = input(title="Slow Length",  defval=72)
signal_length = input(title="Signal Length",  defval=9)

fast_ma = sma(rsi, fast_length) 
slow_ma = sma(rsi, slow_length) 
shortma = sma(ohlc4, fast_length)
longma = sma(ohlc4, slow_length)
controlmainput = input(title = "Control MA", defval = 234)
controlma = sma(ohlc4, controlmainput)
macdx = fast_ma - slow_ma
signalx = sma(macdx, signal_length)
hist = macdx - signalx
ma_hist = shortma - controlma
macd = macdx + 50
signal = signalx + 50

plot(macd,"macd", color = fuchsia)
plot(hist,"hist", style = histogram, color = fuchsia)
//plot(ma_hist,"ma hist", style = histogram, color = orange)
plot(signal,"signal", color = white)

//input
control_buy_toggle = input(true, "Buy on crossover control MA?", type = bool)
buy_on_control = control_buy_toggle == true? true : false

//conditions
buy = buy_on_control == true? ma_hist > 0 and shortma > longma and crossover(macd,signal) or crossover(shortma, controlma) : ma_hist > 0 and shortma > longma and crossover(macd,signal)
sell = ma_hist > 0 and shortma > longma and crossunder(macd,signal)
stop = crossunder(shortma, longma) or crossunder(shortma, controlma)

plotshape(buy,"buy", shape.triangleup, location.bottom, green, size = size.tiny)
plotshape(sell,"sell", shape.triangledown, location.bottom, red, size = size.tiny)
plotshape(stop,"stop",shape.circle,location.bottom, white, size = size.tiny)

if testPeriod()
    strategy.entry("buy", true, when = buy, limit = close)
    strategy.close("buy", when = sell)
    strategy.close("buy", when = stop)
    



अधिक