
मधुमक्खी प्रवृत्ति एटीआर क्षैतिज तोड़ने की रणनीति एटीआर संकेतक और ब्रिन बैंड के आधार पर ट्रेडिंग सिग्नल उत्पन्न करने के लिए एक मध्य-शॉर्ट-लाइन तोड़ने की रणनीति है। यह मुख्य रूप से एक निश्चित चौड़ाई के ऊपर और नीचे एटीआर चैनल के भीतर स्टॉक की कीमतों के परिवर्तन की निगरानी करता है, और ट्रेंड फ़िल्टर के साथ ट्रेडिंग निर्णय लेता है जब यह नीचे या नीचे या ऊपर की ओर जाता है।
इस रणनीति में तीन मुख्य भाग हैं:
एटीआर चैनल: एटीआर सूचक के माध्यम से शेयर की कीमतों के उतार-चढ़ाव की सीमा की गणना करें और उस सीमा के ऊपर और नीचे एक चैनल बनाएं। चैनल की चौड़ाई एटीआर लुकबैक चक्र और एटीआरडिवाइज़र कारक द्वारा नियंत्रित की जाती है।
मधुमक्खी रेखा: शेयर की कीमतों की केंद्रीय रेखा को आधार रेखा के रूप में लिया गया है। केंद्रीय रेखा की गणना की गई हैः कल की उच्च और निम्न उपज का औसत।
रुझान फ़िल्टरः कीमतों की प्रवृत्ति की गणना करें, और एक सिग्नल चक्र सेट करें, जब pricesig ‘>’: pricesig[3] जब pricesig ‘<’ pricesig[3] समय के लिए प्रवृत्ति नीचे की ओर
विशिष्ट ट्रेडिंग सिग्नल उत्पन्न करने का तर्क हैः
बहु सिग्नलः pricesig > pricesig[3] और कीमतों में गिरावट के दौरान अधिक करना;
खाली सिर सिग्नल: pricesig < pricesig[3] और कीमतों को ट्रैक पर ले जाने पर खाली करें;
अन्य मामलों में कोई सौदा नहीं।
इस रणनीति में ट्रेडिंग जोखिम को नियंत्रित करने के लिए स्टॉप-स्टॉप-लॉस शर्तों को भी शामिल किया गया है।
एटीआर को तोड़ने की रणनीति में निम्नलिखित फायदे हैं:
एटीआर सूचकांक का उपयोग शेयर मूल्य में उतार-चढ़ाव की सीमा की गणना करने के लिए किया जाता है, जो बाजार में परिवर्तन को गतिशील रूप से पकड़ता है;
शेयरों की कीमतों के क्षैतिज मूल्यांकन के लिए केंद्रीय रेखा के साथ संयोजन करें और चैनल ब्रेकआउट ट्रेडिंग पॉइंट्स स्थापित करें, ताकि ऊंचाई और गिरावट का पीछा न किया जा सके;
प्रवृत्ति का आकलन करने के लिए विचलन-आवर्ती संकेतक का उपयोग करें, प्रतिगामी व्यापार से बचें और जीत की दर बढ़ाएं;
स्टॉप लॉस की शर्तें सेट करें जो एकल जोखिम को नियंत्रित करती हैं;
नीति पैरामीटर एक लचीला, समायोज्य चैनल चौड़ाई, एटीआर चक्र और अन्य कारकों के अनुकूलन के लिए नीति सेट करता है।
इस रणनीति में कुछ जोखिम भी हैं:
चीन में शॉर्ट लाइन ट्रेडों में काफी उतार-चढ़ाव होता है, जो अपेक्षाकृत जोखिम भरा होता है और सावधानीपूर्वक धन प्रबंधन की आवश्यकता होती है।
जब शेयर की कीमतों में भारी उतार-चढ़ाव होता है, तो एटीआर चैनल की सीमा की गणना गलत हो सकती है, जिससे गलत लेनदेन हो सकता है;
ट्रेडिंग सिग्नल की सटीकता को प्रभावित करने के लिए विचलन गतिशीलता संकेतक में भी रुझान की गलतफहमी हो सकती है।
इन जोखिमों के लिए, एटीआर चैनल मापदंडों को उचित रूप से समायोजित करके, रुझान फ़िल्टर सिग्नल चक्र को बढ़ाकर और अन्य तरीकों से अनुकूलन और सुधार किया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
एटीआर चैनल की चौड़ाई को समायोजित करें, पैरामीटर को कम या बढ़ाएंatrDivisor, चैनल को संपीड़ित या विस्तारित करें।
एटीआर लुकबैक चक्र पैरामीटर को समायोजित करें और हाल के उतार-चढ़ाव के लिए चैनल की संवेदनशीलता को बदलें।
प्रवृत्ति सिग्नल चक्र मापदंडों को समायोजित करें और बहुभाषी प्रवृत्ति निर्णय की सटीकता में सुधार करें।
बहु-कारक सत्यापन के लिए अन्य संकेतकों को जोड़ना, ट्रेडिंग सिग्नल की गुणवत्ता में सुधार करना।
स्टॉप लॉस एल्गोरिदम को अनुकूलित करना और जोखिम नियंत्रण में सुधार करना।
मधुमक्खी प्रवृत्ति एटीआर तोड़ने की रणनीति स्टॉक मूल्य में उतार-चढ़ाव की सीमा विश्लेषण और प्रवृत्ति निर्णय के संकेतकों को एकीकृत करती है, बाजार के गर्म बिंदुओं को पकड़ने के साथ-साथ व्यापार जोखिम को नियंत्रित करने के लिए, यह एक उच्च लचीलापन, अनुकूलन क्षमता वाली एक मात्रात्मक रणनीति है। यह रणनीति पैरामीटर समायोजन और सिग्नल अनुकूलन के माध्यम से लगातार सुधार कर सकती है, जिसमें व्यापक उपयोग की संभावनाएं हैं।
/*backtest
start: 2023-11-01 00:00:00
end: 2023-11-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title="Strategy - Bobo PATR Swing", overlay=true, default_qty_type = strategy.fixed, default_qty_value = 1, initial_capital = 10000)
// === STRATEGY RELATED INPUTS AND LOGIC ===
PivottimeFrame = input(title="Pivot Timeframe", defval="D")
ATRSDtimeFrame = input(title="ATR Band Timeframe (Lower timeframe = wider bands)", defval="D")
len = input(title="ATR lookback (Lower = bands more responsive to recent price action)", defval=13)
myatr = atr(len)
dailyatr = request.security(syminfo.tickerid, ATRSDtimeFrame, myatr[1])
atrdiv = input(title="ATR divisor (Lower = wider bands)", type=float, defval=2)
pivot0 = (high[1] + low[1] + close[1]) / 3
pivot = request.security(syminfo.tickerid, PivottimeFrame, pivot0)
upperband1 = (dailyatr / atrdiv) + pivot
lowerband1 = pivot - (dailyatr / atrdiv)
middleband = pivot
// == TREND CALC ===
i1=input(2, "Momentum Period", minval=1) //Keep at 2 usually
i2=input(20, "Slow Period", minval=1)
i3=input(5, "Fast Period", minval=1)
i4=input(3, "Smoothing Period", minval=1)
i5=input(4, "Signal Period", minval=1)
i6=input(50, "Extreme Value", minval=1)
hiDif = high - high[1]
loDif = low[1] - low
uDM = hiDif > loDif and hiDif > 0 ? hiDif : 0
dDM = loDif > hiDif and loDif > 0 ? loDif : 0
ATR = rma(tr(true), i1)
DIu = 100 * rma(uDM, i1) / ATR
DId = 100 * rma(dDM, i1) / ATR
HLM2 = DIu - DId
DTI = (100 * ema(ema(ema(HLM2, i2), i3), i4)) / ema(ema(ema(abs(HLM2), i2), i3), i4)
signal = ema(DTI, i5)
// === RISK MANAGEMENT INPUTS ===
inpTakeProfit = input(defval = 0, title = "Take Profit (In Market MinTick Value)", minval = 0)
inpStopLoss = input(defval = 100, title = "Stop Loss (In Market MinTick Value)", minval = 0)
// === RISK MANAGEMENT VALUE PREP ===
// if an input is less than 1, assuming not wanted so we assign 'na' value to disable it.
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
// === STRATEGY - LONG POSITION EXECUTION ===
enterLong = (((low<=lowerband1) and (close >lowerband1)) or ((open <= lowerband1) and (close > lowerband1))) and (strategy.opentrades <1) and (atr(3) > atr(50)) and (signal>signal[3])
exitLong = (high > middleband)
strategy.entry(id = "Long", long = true, when = enterLong)
strategy.close(id = "Long", when = exitLong)
// === STRATEGY - SHORT POSITION EXECUTION ===
enterShort = (((high>=upperband1) and (close < upperband1)) or ((open >= upperband1) and (close < upperband1))) and (strategy.opentrades <1) and (atr(3) > atr(50)) and (signal<signal[3])
exitShort = (low < middleband)
strategy.entry(id = "Short", long = false, when = enterShort)
strategy.close(id = "Short", when = exitShort)
// === STRATEGY RISK MANAGEMENT EXECUTION ===
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss)
// === CHART OVERLAY ===
plot(upperband1, color=#C10C00, linewidth=3)
plot(lowerband1, color=#23E019, linewidth=3)
plot(middleband, color=#00E2E2, linewidth=3)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)