यह रणनीति आरएसआई, एमएसीडी, बोलिंगर बैंड्स और सीमा अप / डाउन कारकों को जोड़ती है ताकि बहु-कारक गति रोटेशन ट्रेडिंग को लागू किया जा सके। रणनीति पहले यह तय करती है कि क्या कई तकनीकी संकेतक एक साथ खरीद या बिक्री संकेत देते हैं। यदि हां, तो संबंधित खरीद या बिक्री संचालन निष्पादित किए जाएंगे। इस बीच, रणनीति लाभ और नियंत्रण जोखिमों में लॉक करने के लिए स्टॉप लाभ और स्टॉप हानि को आगे बढ़ाती है।
इस रणनीति के मुख्य घटक निम्नलिखित हैंः
कारक निर्णय
प्रवेश और निकास
रणनीति अनुकूलन
कई कारक प्रविष्टि सटीकता में सुधार करते हैं
यह रणनीति केवल एक सूचक के बजाय आरएसआई और एमएसीडी जैसे कई कारकों पर विचार करती है। इससे झूठे संकेत कम होते हैं और प्रविष्टि सटीकता में सुधार होता है।
गति विशेषता रुझानों को पकड़ती है
आरएसआई और एमएसीडी जैसे संकेतकों में स्पष्ट गति विशेषता होती है, जो मूल्य प्रवृत्ति परिवर्तनों को पकड़ती है। वे एमए जैसे प्रवृत्ति के बाद के संकेतकों की तुलना में अधिक संवेदनशील होते हैं।
लाभ/हानि रोकने की व्यवस्था जोखिमों को नियंत्रित करती है
स्टॉप प्रॉफिट को स्थानांतरित करने से बाजार के बाद गतिशील रूप से लाभ हो सकता है। स्टॉप लॉस सेटिंग एकल व्यापार हानि को नियंत्रित करती है।
सरल और स्पष्ट तर्क
इस रणनीति में सामान्य तकनीकी संकेतकों को मिलाया गया है और इसमें एक निश्चित सार्वभौमिकता है। इसके नियम अपेक्षाकृत सरल और स्पष्ट हैं।
बुल बाजार में खराब प्रदर्शन
यह रणनीति औसत रिवर्सन ट्रेडिंग पर केंद्रित है. यह एक बैल बाजार में लगातार स्टॉप लॉस को ट्रिगर कर सकती है.
संभावित रूप से बहुत अधिक व्यापारिक आवृत्ति
यदि मापदंडों को बहुत संवेदनशीलता से निर्धारित किया जाता है, तो व्यापार की आवृत्ति बहुत अधिक हो सकती है, जिससे लागत और फिसलन बढ़ जाती है।
संकेतकों के बीच विचलन का जोखिम
यह रणनीति सभी संकेतकों में एक समान संकेतों पर आधारित है, लेकिन कभी-कभी विचलन हो सकता है, जिसके परिणामस्वरूप गलत संकेत मिलते हैं।
स्टॉप लॉस में घुसपैठ
स्थिर स्टॉप लॉस बिंदुओं में प्रवेश किया जा सकता है। गतिशील स्टॉप लॉस या स्टॉक परिवर्तन इस जोखिम से बचने में मदद कर सकते हैं।
व्यापारिक आवृत्ति को कम करने के लिए मापदंडों को अनुकूलित करें
कम ट्रेडिंग आवृत्ति वाले संयोजनों को खोजने के लिए आरएसआई मापदंडों और एमए अवधि का परीक्षण करें।
दक्षता बढ़ाने के लिए सांख्यिकीय कारकों को जोड़ें
मापदंडों को निर्धारित करने और दक्षता में सुधार करने के लिए अस्थिरता और तरलता जैसे स्टॉक-विशिष्ट आँकड़े शामिल करें।
VIX जैसे बाजार स्तर के संकेतकों को मिलाएं
VIX जैसे बाजार की घबराहट के संकेतकों के आधार पर रणनीति मापदंडों को समायोजित करें ताकि बाजार-व्यापी दुर्घटनाओं के दौरान व्यापारिक आवृत्ति को कम किया जा सके।
विभिन्न रखरखाव अवधि का परीक्षण करें
रणनीतिक प्रदर्शन पर उनके प्रभाव को देखने के लिए दीर्घकालिक होल्डिंग बनाम अल्पकालिक रोटेशन का परीक्षण करें।
लाभ/हानि रोकने का परीक्षण और अनुकूलन
अधिक उन्नत गतिशील स्टॉप लाभ/हानि तकनीकों का शोध करें और उन्हें बैकटेस्ट करें।
यह रणनीति कई तकनीकी संकेतकों को जोड़ती है और उच्च प्रविष्टि सटीकता सुनिश्चित करते हुए लाभ और नियंत्रण जोखिमों को लॉक करने के लिए स्टॉप लाभ / हानि को अपनाती है। तर्क सरल और स्पष्ट है। पैरामीटर अनुकूलन और संकेतक चयन के माध्यम से प्रदर्शन में और सुधार किया जा सकता है। लेकिन यह रणनीति औसत रिवर्स और रेंज-बाउंड बाजारों के लिए अधिक उपयुक्त है। यह लगातार अपट्रेंड में कम प्रदर्शन कर सकती है। सारांश में, यह एक विशिष्ट बहु-कारक औसत रिवर्स गति रणनीति है जो स्टॉक रोटेशन ट्रेडिंग के लिए विचार और संदर्भ प्रदान करती है।
/*backtest start: 2023-09-24 00:00:00 end: 2023-10-24 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("RSI, TD Seq, MACD, BB Strategy - Calculation Trailing Profit",overlay=true) RSIDifference = input(-7, minval=-50, maxval=50, title="RSI Difference") TD = close > close[4] ?nz(TD[1])+1:0 TS = close < close[4] ?nz(TS[1])+1:0 TDUp = TD - valuewhen(TD < TD[1], TD , 1 ) TDDn = TS - valuewhen(TS < TS[1], TS , 1 ) TDcheckUP = iff(TD == 2, true, false) TDCheckDOWN = iff(TS == 2, true, false) [_, _, histLine] = macd(close, 12, 26, 9) MACDCheckDown = iff(histLine > 0 and histLine[1] > 0 and histLine[2] > 0 and histLine[3] > 0 and histLine[4] > 0, true, false) MACDCheckUp = iff(histLine < 0 and histLine[1] < 0 and histLine[2] < 0 and histLine[3] < 0 and histLine[4] < 0, true, false) RSICal = rsi(close, 14) RSICalNewUp = 50 + RSIDifference RSICalNewDown = 50 - RSIDifference RSICheckUp = iff(RSICal <= RSICalNewUp, true, false) RSICheckDown = iff(RSICal >= RSICalNewDown, true, false) basis = sma(close, 20) dev = 2 * stdev(close, 20) upperBB = basis + dev lowerBB = basis - dev BBCheckUp = iff(close > upperBB, true, false) BBCheckDown = iff(close < lowerBB, true, false) //BBCheckUp = false //BBCheckDown = false BuyCheck = iff(TDcheckUP == true and MACDCheckUp == true and RSICheckUp == true and BBCheckUp == false, true, false) SellCheck = iff(TDCheckDOWN == true and MACDCheckDown == true and RSICheckDown == true and BBCheckDown == false, true, false) ProfitStratA = input(50, minval=0, maxval=10000, title="Profit", step=0.5) ProfitTrailingA = input(10, minval=0, maxval=10000, title="Profit", step=0.5) useStopLoss = input(false, title="Use Stop Loss?") LossstratA = input(145, minval=0, maxval=10000, title="Stop Loss", step=0.5) colB = input(100, minval=0, maxval=100, title="0-show / 100-hide Strategy", step=100) ProfitStrat = ProfitStratA * 10 ProfitTrailing = ProfitTrailingA * 10 Lossstrat = useStopLoss ? LossstratA * 10 : 1000000 if (strategy.position_size > 0) strategy.exit("BuyClose", "Buy", trail_points=ProfitStrat, trail_offset=ProfitTrailing, loss=Lossstrat) if (strategy.position_size < 0) strategy.exit("SellClose", "Sell", trail_points=ProfitStrat, trail_offset=ProfitTrailing, loss=Lossstrat) if (BuyCheck == true and strategy.position_size == 0) strategy.entry("Buy", strategy.long, comment="Long Entry") if (SellCheck == true and strategy.position_size == 0) strategy.entry("Sell", strategy.short, comment="Short Entry") plotshape(BuyCheck, color=blue, transp=colB, style=shape.arrowup, text="Buy\n", location=location.belowbar) plotshape(SellCheck, color=orange, transp=colB, style=shape.arrowdown, text="Sell\n", location=location.abovebar)