आरएमआई ट्रेंड सिंक रणनीति प्रभावी रूप से गति विश्लेषण और प्रवृत्ति निर्णय के एकीकरण को महसूस करने के लिए सापेक्ष गति सूचकांक (आरएमआई) और सुपर प्रवृत्ति संकेतक की ताकतों को जोड़ती है। कीमत परिवर्तन प्रवृत्तियों और बाजार गति के स्तरों की एक साथ निगरानी करके, रणनीति अधिक व्यापक परिप्रेक्ष्य से बाजार के रुझानों को निर्धारित करती है।
आरएमआई रिलेटिव स्ट्रेंथ इंडेक्स (आरएसआई) का एक उन्नत संस्करण है। यह बाजार की गति को अधिक सटीक रूप से मापने के लिए दिशा और परिमाण जैसे मूल्य परिवर्तनों की अधिक सुविधाओं को शामिल करता है।
आरएमआई की गणना विधि हैः पहले एक निश्चित अवधि में औसत लाभ और औसत हानि की गणना करें। आरएसआई के विपरीत, आरएमआई सरल सकारात्मक और नकारात्मक वृद्धि के बजाय वर्तमान समापन मूल्य और पिछले समापन मूल्य के बीच परिवर्तन का उपयोग करता है। फिर औसत लाभ को औसत हानि से विभाजित करें और मान को 0-100 पैमाने के भीतर फिट करने के लिए सामान्य करें।
यह रणनीति आरएमआई और एमएफआई के औसत मूल्य का उपयोग पूर्व निर्धारित सकारात्मक गति और नकारात्मक गति की सीमाओं के साथ तुलना करने के लिए प्रवेश और निकास निर्णयों के लिए वर्तमान बाजार गति स्तर निर्धारित करने के लिए करती है।
सुपर ट्रेंड सूचक की गणना एक उच्च समय सीमा के आधार पर की जाती है, जो प्रमुख रुझानों पर निर्णय प्रदान कर सकता है। यह प्रभावी रूप से रुझान उलटों की पहचान करने के लिए वास्तविक अस्थिरता एटीआर के आधार पर पैरामीटर को गतिशील रूप से समायोजित करता है।
इस रणनीति में वॉल्यूम वेटेड मूविंग एवरेज (वीडब्ल्यूएमए) को भी शामिल किया गया है ताकि महत्वपूर्ण रुझान शिफ्ट का पता लगाने की क्षमता को और बढ़ाया जा सके।
यह रणनीति लंबी, छोटी या दो तरफा ट्रेडिंग का चयन करने की अनुमति देती है। यह लचीलापन व्यापारियों को अपने बाजार के विचारों और जोखिम की भूख के अनुकूल होने में सक्षम बनाता है।
केवल गति या प्रवृत्ति संकेतकों पर निर्भर रणनीतियों की तुलना में, यह रणनीति आरएमआई और सुपर प्रवृत्ति की ताकतों को एकीकृत करके अधिक सटीक बाजार प्रवृत्ति पहचान को प्राप्त करती है।
विभिन्न समय सीमाओं में आरएमआई और सुपर ट्रेंड का उपयोग करने से अल्पकालिक और दीर्घकालिक दोनों रुझानों को बेहतर ढंग से समझ में आता है।
सुपर ट्रेंड पर आधारित वास्तविक समय स्टॉप लॉस तंत्र प्रति व्यापार हानि को प्रभावी ढंग से सीमित कर सकता है।
लंबी, छोटी या द्विदिश व्यापार के बीच विकल्प इस रणनीति को विभिन्न बाजार वातावरणों के अनुकूल बनाने की अनुमति देता है।
आरएमआई और सुपर ट्रेंड जैसे मापदंडों के लिए अनुकूलन काफी जटिल है। अनुचित सेटिंग्स रणनीति प्रदर्शन को कम कर सकती हैं।
छोटे उतार-चढ़ाव के प्रति अति संवेदनशील होने से अत्यधिक स्टॉप लॉस ट्रिगर हो सकते हैं।
समाधानः स्टॉप लॉस रेंज को उचित रूप से ढीला करें या अन्य अस्थिरता आधारित स्टॉप लॉस विधियों को अपनाएं।
लागू परिसंपत्तियों का विस्तार करना और अधिक बाजारों में व्यापक प्रतिकृति को सक्षम करने के लिए विभिन्न परिसंपत्तियों के लिए पैरामीटर अनुकूलन दिशाओं की पहचान करना।
वर्तमान स्विंग तरंगों को बेहतर ढंग से ट्रैक करने के लिए गतिशील स्टॉप लॉस तंत्र को शामिल करें और मामूली रिट्रेसमेंट के कारण अत्यधिक स्टॉप लॉस को कम करें।
स्पष्ट संकेतों के बिना पदों में प्रवेश करने से बचने के लिए फिल्टर स्थितियों के रूप में अधिक संकेतकों से निर्णय जोड़ें।
आरएमआई और सुपर ट्रेंड के चतुर संयोजन के माध्यम से, यह रणनीति सटीक बाजार की स्थिति के फैसलों को महसूस करती है। यह जोखिम नियंत्रण में भी उत्कृष्ट है। गहन अनुकूलन के साथ, यह माना जाता है कि अधिक संपत्ति और समय सीमाओं में इसका प्रदर्शन तेजी से उल्लेखनीय हो जाएगा।
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // @ presentTrading //@version=5 strategy("RMI Trend Sync - Strategy [presentTrading]", shorttitle = "RMI Sync [presentTrading]", overlay=true ) // ---> Inputs -------------- // Add Button for Trading Direction tradeDirection = input.string("Both", "Select Trading Direction", options=["Long", "Short", "Both"]) // Relative Momentum Index (RMI) Settings Length = input.int(21, "RMI Length", group = "RMI Settings") pmom = input.int(70, "Positive Momentum Threshold", group = "RMI Settings") nmom = input.int(30, "Negative Momentum Threshold", group = "RMI Settings") bandLength = input.int(30, "Band Length", group = "Momentum Settings") rwmaLength = input.int(20, "RWMA Length", group = "Momentum Settings") // Super Trend Settings len = input.int(10, "Super Trend Length", minval=1, group="Super Trend Settings") higherTf1 = input.timeframe('480', "Higher Time Frame", group="Super Trend Settings") factor = input.float(3.5, "Super Trend Factor", step=.1, group="Super Trend Settings") maSrc = input.string("WMA", "MA Source", options=["SMA", "EMA", "WMA", "RMA", "VWMA"], group="Super Trend Settings") atr = request.security(syminfo.tickerid, higherTf1, ta.atr(len)) TfClose1 = request.security(syminfo.tickerid, higherTf1, close) // Visual Settings filleshow = input.bool(true, "Display Range MA", group = "Visual Settings") bull = input.color(#00bcd4, "Bullish Color", group = "Visual Settings") bear = input.color(#ff5252, "Bearish Color", group = "Visual Settings") // Calculation of Bar Range barRange = high - low // RMI and MFI Calculations upChange = ta.rma(math.max(ta.change(close), 0), Length) downChange = ta.rma(-math.min(ta.change(close), 0), Length) rsi = downChange == 0 ? 100 : upChange == 0 ? 0 : 100 - (100 / (1 + upChange / downChange)) mf = ta.mfi(hlc3, Length) rsiMfi = math.avg(rsi, mf) // Momentum Conditions positiveMomentum = rsiMfi[1] < pmom and rsiMfi > pmom and rsiMfi > nmom and ta.change(ta.ema(close,5)) > 0 negativeMomentum = rsiMfi < nmom and ta.change(ta.ema(close,5)) < 0 // Momentum Status bool positive = positiveMomentum ? true : negativeMomentum ? false : na bool negative = negativeMomentum ? true : positiveMomentum ? false : na // Band Calculation calculateBand(len) => math.min(ta.atr(len) * 0.3, close * (0.3/100)) * 4 band = calculateBand(bandLength) // Range Weighted Moving Average (RWMA) Calculation calculateRwma(range_, period) => weight = range_ / math.sum(range_, period) sumWeightedClose = math.sum(close * weight, period) totalWeight = math.sum(weight, period) sumWeightedClose / totalWeight rwma = calculateRwma(barRange, rwmaLength) colour = positive ? bull : negative ? bear : na rwmaAdjusted = positive ? rwma - band : negative ? rwma + band : na max = rwma + band min = rwma - band longCondition = positive and not positive[1] shortCondition = negative and not negative[1] longExitCondition = shortCondition shortExitCondition = longCondition // Dynamic Trailing Stop Loss vwma1 = switch maSrc "SMA" => ta.sma(TfClose1*volume, len) / ta.sma(volume, len) "EMA" => ta.ema(TfClose1*volume, len) / ta.ema(volume, len) "WMA" => ta.wma(TfClose1*volume, len) / ta.wma(volume, len) upperBand = vwma1 + factor * atr lowerBand = vwma1 - factor * atr prevLowerBand = nz(lowerBand[1]) prevUpperBand = nz(upperBand[1]) float superTrend = na int direction = na superTrend := direction == -1 ? lowerBand : upperBand longTrailingStop = superTrend - atr * factor shortTrailingStop = superTrend + atr * factor // Strategy Order Execution if (tradeDirection == "Long" or tradeDirection == "Both") strategy.entry("Long", strategy.long, when = longCondition) strategy.exit("Exit Long", "Long", when=longExitCondition, stop = longTrailingStop) if (tradeDirection == "Short" or tradeDirection == "Both") strategy.entry("Short", strategy.short, when =shortCondition) strategy.exit("Exit Short", "Short", when=shortExitCondition, stop = shortTrailingStop)