यह रणनीति अस्थिरता बाजार में रुझान ट्रैकिंग और पोजिशनिंग प्रभाव प्राप्त करने के लिए आरएसआई संकेतक, एमएसीडी संकेतक और डबल मूविंग एवरेज को जोड़ती है। यह ओवरबॉट और ओवरसोल्ड स्थितियों का न्याय करने के लिए आरएसआई संकेतक का उपयोग करती है, तेजी से और धीमी एमए क्रॉसओवर के साथ प्रवेश और निकास बिंदुओं को निर्धारित करने के लिए एमएसीडी, और रुझान के दौरान कुछ शोर ट्रेडिंग अवसरों को फ़िल्टर करने के लिए डबल एमए।
मूल्य परिवर्तन की वृद्धि और गिरावट की गणना करें
मूल्य परिवर्तन के आधार पर आरएसआई की गणना करें
अधिक खरीदे गए और अधिक बेचे गए स्तरों का निर्धारण
त्वरित एमए, धीमी एमए और संकेत लाइन की गणना करें
सोने के क्रॉस पर लंबा प्रवेश और मृत्यु क्रॉस पर बाहर निकलें
क्रॉसओवर स्थितियों का चित्रण करें
तेज़ और धीमी गति से चलती औसत की गणना करें
केवल तभी ट्रेडिंग पर विचार करें जब तेज एमए धीमी एमए से ऊपर जाए
शोर फ़िल्टर करें और प्रवृत्ति का पालन करें
आरएसआई, एमएसीडी और डबल एमए के साथ प्रवेश संकेत फ़िल्टर करें
रणनीति की सटीकता और स्थिरता में सुधार
कई संकेतकों का संयोजन सटीकता में सुधार करता है
ट्रेंड फॉलो करने से शोर फ़िल्टर होता है और स्थिरता बढ़ जाती है
आरएसआई संभावित उलट बिंदुओं को देखता है
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)