यह रणनीति लंबी और छोटी स्टॉप-लॉस लाइनों की गणना करने के लिए एटीआर और मूल्य चरम के आधार पर गतिशील ट्रेलिंग स्टॉप के विचार को अपनाती है। चैंडलियर एक्जिट विचार के साथ संयुक्त, यह स्टॉप-लॉस लाइन ब्रेकआउट के आधार पर लंबी / छोटी दिशा का न्याय करता है। जब स्टॉप-लॉस लाइन ऊपर की ओर टूटती है, तो इसे तेजी और लंबी प्रविष्टि के रूप में माना जाता है। जब स्टॉप-लॉस लाइन नीचे की ओर टूटती है, तो इसे मंदी और छोटी प्रविष्टि के रूप में माना जाता है।
रणनीति में स्टॉप-लॉस प्रबंधन और प्रवेश संकेत निर्णय दोनों कार्यक्षमताएं हैं।
इस रणनीति में निम्नलिखित मुख्य भाग शामिल हैंः
एटीआर के आधार पर लंबी/छोटी स्टॉप-लॉस लाइनों की गणना करें
उपयोगकर्ता द्वारा परिभाषित एटीआर अवधि की लंबाई और गुणक मल्टी के आधार पर, वास्तविक समय एटीआर की गणना की जाती है। फिर एटीआर और मूल्य चरम के साथ लंबी/छोटी स्टॉप-लॉस लाइनों की गणना की जाती हैः
longStop = Highest - ATR
shortStop = Lowest + ATR
ब्रेकआउट के आधार पर ट्रेडिंग दिशा का आकलन करें
पिछले बार और वर्तमान बार के बीच स्टॉप-लॉस लाइनों की तुलना करें। यदि वर्तमान बार की स्टॉप-लॉस लाइन टूट जाती है, तो ट्रेडिंग सिग्नल ट्रिगर किए जाते हैंः
Long stop-loss line breakout upwards, long entry
Short stop-loss line breakout downwards, short entry
जोखिम-लाभ अनुपात के आधार पर स्टॉप लॉस और ले लाभ सेट करें
उपयोगकर्ता द्वारा परिभाषित जोखिम-लाभ अनुपात (riskRewardRatio) के आधार पर, स्टॉप लॉस दूरी और लाभ लेने की दूरी की गणना एटीआर से की जाती है। स्टॉप लॉस ऑर्डर और ले प्रॉफिट ऑर्डर को पोजीशन खोलने के समय सेट किया जाता है।
इस रणनीति के लाभों में निम्नलिखित शामिल हैंः
गतिशील ट्रेलिंग स्टॉप लॉस
गतिशील ट्रेलिंग स्टॉप लॉस लाइनों को अपनाने से समय पर स्टॉप लॉस और डाउनसाइड जोखिम को नियंत्रित करने में मदद मिलती है।
दोहरे कार्य
स्टॉप लॉस लाइन स्टॉप लॉस मैनेजमेंट टूल और एंट्री कंडीशन जज दोनों के रूप में कार्य करती है, जिससे रणनीति जटिलता कम होती है।
अनुकूलन योग्य जोखिम-लाभ अनुपात
पूर्वनिर्धारित जोखिम-लाभ अनुपात के साथ उच्च लाभ का पीछा करें।
समझने और विस्तार करने में आसान
सरल संरचना, समझने में आसान और विस्तार के लिए अनुकूलित।
इस रणनीति के लिए कुछ जोखिम हो सकते हैंः
दो तरफ़ा जोखिम
दो-दिशात्मक व्यापारिक रणनीति के रूप में, यह लंबी और छोटी दोनों तरह के जोखिम लेता है।
एटीआर पैरामीटर निर्भरता
एटीआर पैरामीटर सीधे स्टॉप लॉस लाइनों और ट्रेडिंग आवृत्ति को प्रभावित करते हैं। अनुचित सेटिंग्स के परिणामस्वरूप या तो बहुत व्यापक स्टॉप लॉस या बहुत अधिक ट्रेडिंग आवृत्ति हो सकती है।
रुझान अनुकूलन
यह रणनीति अचानक ब्रेकआउट के साथ रेंज-बाउंड परिदृश्यों के लिए बेहतर फिट बैठती है।
उपरोक्त जोखिमों से निपटने के लिए अनुकूलन निम्नलिखित हैंः
रुझान संकेतकों को शामिल करें
बाजार के रुझान को निर्धारित करने के लिए एमए और अन्य रुझान संकेतकों को शामिल करें, रुझानों के खिलाफ व्यापार से बचें।
पैरामीटर अनुकूलन
अधिक उचित स्टॉप लॉस और लाभ लेने के लिए एटीआर मापदंडों और जोखिम-लाभ अनुपात के संयोजनों को अनुकूलित करें।
अतिरिक्त फ़िल्टर
ट्रेडिंग गुणवत्ता सुनिश्चित करने के लिए ट्रेडिंग वॉल्यूम या अस्थिरता स्थिति फ़िल्टर जोड़ें।
रणनीति को और अधिक अनुकूलित करने के लिए अभी भी जगह हैः
मशीन लर्निंग को शामिल करें
उच्च प्रविष्टि सटीकता के लिए मूल्य प्रवृत्ति की भविष्यवाणी करने के लिए मशीन लर्निंग मॉडल को अपनाएं।
विकल्पों के साथ जोखिम मुक्त पोर्टफोलियो बनाएं
विकल्पों का उपयोग अंतर्निहित परिसंपत्तियों के मूल्य उतार-चढ़ाव को कवर करने और जोखिम मुक्त मध्यस्थता पोर्टफोलियो बनाने के लिए करें।
क्रॉस-मार्केट मल्टी-एसेट आर्बिट्रेज
स्थिर अल्फा प्राप्त करने के लिए विभिन्न बाजारों और परिसंपत्ति वर्गों में सांख्यिकीय मध्यस्थता करें।
एल्गोरिथ्म व्यापार
रणनीतियों और व्यापार को कुशलतापूर्वक बैकटेस्ट करने के लिए एल्गोरिथ्म ट्रेडिंग इंजन का लाभ उठाएं।
इस लेख में गतिशील ट्रेलिंग स्टॉप लॉस पर आधारित एक मात्रात्मक ट्रेडिंग रणनीति का गहन विश्लेषण किया गया है। रणनीति में एक साथ स्टॉप लॉस प्रबंधन कार्यक्षमता और ट्रेडिंग सिग्नल निर्धारण है, जो जोखिमों को प्रभावी ढंग से नियंत्रित करता है। हमने रणनीति के लाभों, संभावित जोखिमों और भविष्य के अनुकूलन पर भी चर्चा की। यह एक बहुत ही व्यावहारिक ट्रेडिंग रणनीति है जो आगे के शोध और अनुप्रयोग के लायक है।
/*backtest start: 2023-12-29 00:00:00 end: 2024-01-28 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Chandelier Exit with 1-to-1 Risk-Reward", shorttitle='CE', overlay=true) // Chandelier Exit Logic length = input.int(title='ATR Period', defval=22) mult = input.float(title='ATR Multiplier', step=0.1, defval=3.0) useClose = input.bool(title='Use Close Price for Extremums', defval=true) atr = mult * ta.atr(length) longStop = (useClose ? ta.highest(close, length) : ta.highest(length)) - atr longStopPrev = nz(longStop[1], longStop) longStop := close[1] > longStopPrev ? math.max(longStop, longStopPrev) : longStop shortStop = (useClose ? ta.lowest(close, length) : ta.lowest(length)) + atr shortStopPrev = nz(shortStop[1], shortStop) shortStop := close[1] < shortStopPrev ? math.min(shortStop, shortStopPrev) : shortStop var int dir = 1 dir := close > shortStopPrev ? 1 : close < longStopPrev ? -1 : dir // Risk-Reward Ratio riskRewardRatio = input.int(1, title="Risk-Reward Ratio", minval=1, maxval=10, step=1) // Calculate Take Profit and Stop Loss Levels takeProfitLevel = atr * riskRewardRatio stopLossLevel = atr // Entry Conditions longCondition = dir == 1 and dir[1] == -1 shortCondition = dir == -1 and dir[1] == 1 // Entry Signals if (longCondition) strategy.entry("Long", strategy.long, stop=close - stopLossLevel, limit=close + takeProfitLevel) if (shortCondition) strategy.entry("Short", strategy.short, stop=close + stopLossLevel, limit=close - takeProfitLevel) longStopPlot = plot(dir == 1 ? longStop : na, title='Long Stop', style=plot.style_linebr, linewidth=2, color=color.green) shortStopPlot = plot(dir == 1 ? na : shortStop, title='Short Stop', style=plot.style_linebr, linewidth=2, color=color.red) midPricePlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0, display=display.none, editable=false) fill(midPricePlot, longStopPlot, color=color.new(color.green, 90), title='Long State Filling') fill(midPricePlot, shortStopPlot, color=color.new(color.red, 90), title='Short State Filling') // Alerts if (dir != dir[1]) strategy.entry("Direction Change", strategy.long, comment="Chandelier Exit has changed direction!") if (longCondition) strategy.entry("Buy Signal", strategy.long, comment="Chandelier Exit Buy!") if (shortCondition) strategy.entry("Sell Signal", strategy.short, comment="Chandelier Exit Sell!")