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