बहु-कारक आवेग रोटेशन रणनीति

लेखक:चाओझांग, दिनांकः 2023-10-25 11:52:19
टैगः

img

अवलोकन

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

रणनीति तर्क

इस रणनीति के मुख्य घटक निम्नलिखित हैंः

  1. कारक निर्णय

    • आरएसआईः 14-अवधि आरएसआई की गणना करें और निर्णय लें कि यह खरीद लाइन से कम है या बिक्री लाइन से अधिक है
    • टीडी अनुक्रमः सीमा अप/डाउन दिनों की संख्या की गणना करें और निर्णय लें कि क्या यह खरीद/बिक्री की शर्तों को पूरा करता है
    • एमएसीडीः खरीद/बिक्री स्थितियों का न्याय करने के लिए एमएसीडी और एमएसीडी हिस्टोग्राम की गणना करें
    • बोलिंगर बैंड्स: 20 अवधि के बीबी की गणना करें और तय करें कि कीमत बीबी के ऊपरी या निचले बैंड को छूती है या नहीं
  2. प्रवेश और निकास

    • खरीद की स्थितिः आरएसआई, एमएसीडी, टीडी अनुक्रम एक साथ खरीद संकेत देते हैं
    • बेचने की स्थितिः आरएसआई, एमएसीडी, टीडी अनुक्रम एक साथ बेचने के संकेत देते हैं
    • स्टॉप प्रॉफिटः स्टॉप प्रॉफिट के रूप में निश्चित अंक या प्रतिशत का प्रयोग करें
    • स्टॉप लॉस: स्टॉप लॉस के लिए अधिकतम बर्दाश्त किए जाने वाले हानि बिंदु निर्धारित करें
  3. रणनीति अनुकूलन

    • आरएसआई पैरामीटर समायोजित करें: आरएसआई अवधि पैरामीटर अनुकूलित करें
    • एमए अवधि को समायोजित करेंः चलती औसत के अवधि पैरामीटर का अनुकूलन करें
    • प्रवेश स्थितियों को समायोजित करेंः प्रवेश संकेतों को जोड़ें या कम करें
    • अन्य कारक जोड़ें: अधिक तकनीकी संकेतकों और सांख्यिकीय कारकों को शामिल करें

लाभ विश्लेषण

  • कई कारक प्रविष्टि सटीकता में सुधार करते हैं

    यह रणनीति केवल एक सूचक के बजाय आरएसआई और एमएसीडी जैसे कई कारकों पर विचार करती है। इससे झूठे संकेत कम होते हैं और प्रविष्टि सटीकता में सुधार होता है।

  • गति विशेषता रुझानों को पकड़ती है

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

  • लाभ/हानि रोकने की व्यवस्था जोखिमों को नियंत्रित करती है

    स्टॉप प्रॉफिट को स्थानांतरित करने से बाजार के बाद गतिशील रूप से लाभ हो सकता है। स्टॉप लॉस सेटिंग एकल व्यापार हानि को नियंत्रित करती है।

  • सरल और स्पष्ट तर्क

    इस रणनीति में सामान्य तकनीकी संकेतकों को मिलाया गया है और इसमें एक निश्चित सार्वभौमिकता है। इसके नियम अपेक्षाकृत सरल और स्पष्ट हैं।

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

  • बुल बाजार में खराब प्रदर्शन

    यह रणनीति औसत रिवर्सन ट्रेडिंग पर केंद्रित है. यह एक बैल बाजार में लगातार स्टॉप लॉस को ट्रिगर कर सकती है.

  • संभावित रूप से बहुत अधिक व्यापारिक आवृत्ति

    यदि मापदंडों को बहुत संवेदनशीलता से निर्धारित किया जाता है, तो व्यापार की आवृत्ति बहुत अधिक हो सकती है, जिससे लागत और फिसलन बढ़ जाती है।

  • संकेतकों के बीच विचलन का जोखिम

    यह रणनीति सभी संकेतकों में एक समान संकेतों पर आधारित है, लेकिन कभी-कभी विचलन हो सकता है, जिसके परिणामस्वरूप गलत संकेत मिलते हैं।

  • स्टॉप लॉस में घुसपैठ

    स्थिर स्टॉप लॉस बिंदुओं में प्रवेश किया जा सकता है। गतिशील स्टॉप लॉस या स्टॉक परिवर्तन इस जोखिम से बचने में मदद कर सकते हैं।

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

  • व्यापारिक आवृत्ति को कम करने के लिए मापदंडों को अनुकूलित करें

    कम ट्रेडिंग आवृत्ति वाले संयोजनों को खोजने के लिए आरएसआई मापदंडों और एमए अवधि का परीक्षण करें।

  • दक्षता बढ़ाने के लिए सांख्यिकीय कारकों को जोड़ें

    मापदंडों को निर्धारित करने और दक्षता में सुधार करने के लिए अस्थिरता और तरलता जैसे स्टॉक-विशिष्ट आँकड़े शामिल करें।

  • 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)













अधिक