
डबल डोनचियन चैनल ब्रेकआउट रणनीति एक डोनचियन चैनल पर आधारित एक ब्रेकआउट ट्रेडिंग रणनीति है। यह दो डोनचियन चैनलों का उपयोग करता है जो तेजी से और धीमी गति से हैं। यह एक मल्टीहेड और हेड ट्रेडिंग सिग्नल का निर्माण करता है। जब कीमत धीमी गति से टूट जाती है, तो यह अधिक या खाली हो जाती है, और जब कीमत फिर से तेजी से टूट जाती है, तो यह स्थिति को समाप्त कर देती है। यह रणनीति एक ही समय में स्टॉप और स्टॉप लॉस स्थितियां निर्धारित करती है।
डबल-डोनचियन चैनल तोड़फोड़ की रणनीति दो मापदंडों पर आधारित हैःधीमी गति से Donchian चैनल चक्रऔरफास्ट डोनचियन चैनल चक्र☞ रणनीति पहले दो डोनचियन मार्गों के अपर-रेल और डाउन-रेल की गणना करती है।
बहुमुखी प्रवेश संकेत हैकीमतों में तेजीऔरमूल्यह्रास से अधिक उतार-चढ़ाव◦ हवाई जहाज में प्रवेश करने का संकेतकीमतों में गिरावटऔरमूल्यह्रास से अधिक उतार-चढ़ाव。
मल्टी हेड स्टॉप लॉस ब्लीच सिग्नल है कीमत फिर सेब्रेकडाउन◦ शून्य बंद और ब्रीज सिग्नल के साथ कीमत फिर से शुरू होती हैब्रेक ऑन。
इस नीति को एक साथ सेट करेंथकावटबाहर निकलने की शर्तें. डिफ़ॉल्ट रूप से 2% की छूट की सीमा निर्धारित की जाती है, अर्थात, जब कीमत में 2% की वृद्धि होती है, तो आधे स्थान को बंद कर दिया जाता है।
डबल-डोनचियन गेटवे को तोड़ने की रणनीति के निम्नलिखित फायदे हैंः
दो-चैनल डिजाइन का उपयोग करके, लंबी और छोटी लाइनों के रुझान संकेतों को पकड़ने के लिए, अधिक सटीक प्रवेश प्राप्त करें।
अस्थिरता की स्थिति ने बाज़ार में बार-बार लेन-देन को रोक दिया।
स्टॉप और स्टॉप लॉस सेटिंग्स व्यापक हैं, जो लाभ के कुछ हिस्सों को लॉक कर सकती हैं, और नुकसान को कम कर सकती हैं।
रणनीति तर्क सरल और स्पष्ट है, इसे समझना और लागू करना आसान है।
विभिन्न प्रकारों और ट्रेडिंग वरीयताओं के लिए अनुकूलित पैरामीटर
डबल डोनचियन चैनल के माध्यम से प्रवेश करने की रणनीति के साथ कुछ जोखिम भी हैंः
दो-चैनल डिजाइन अधिक संवेदनशील है और गलत संकेत उत्पन्न करने के लिए आसान है। उचित रूप से चैनल रेंज का विस्तार किया जा सकता है या गलत संकेतों को कम करने के लिए उतार-चढ़ाव दर पैरामीटर को समायोजित किया जा सकता है।
चरम बाजार में, स्टॉप लॉस को बहुत बार ट्रिगर किया जा सकता है। ट्रेडों की संख्या पर एक सीमा निर्धारित की जा सकती है या स्टॉप लॉस को बढ़ाया जा सकता है।
एक निश्चित अनुपात स्टॉप अधिकतम लाभ को लॉक नहीं कर सकता है। स्टॉप की कीमत निर्धारित करने के लिए स्टॉप को गतिशील रूप से ट्रैक करने या मैन्युअल हस्तक्षेप पर विचार किया जा सकता है।
रिट्रेसमेंट के बाहर की वास्तविक स्थिति उम्मीदों के अनुरूप नहीं हो सकती है, इसे पहले से पर्याप्त सत्यापित किया जाना चाहिए, यदि आवश्यक हो तो पैरामीटर को समायोजित करें।
डबल डोनचियन चैनल को तोड़ने की रणनीति को निम्नलिखित तरीकों से अनुकूलित किया जा सकता हैः
अधिक चक्रों के संयोजनों का परीक्षण करें और सबसे अच्छा खोजें।
विभिन्न अस्थिरता दर गणना विधियों का प्रयास करें, जैसे कि एटीआर, सबसे स्थिर पैरामीटर खोजने के लिए।
प्रवृत्ति के अंत में रिबाउंड के नुकसान से बचने के लिए स्थिति खोलने की सीमा निर्धारित करें।
स्टॉप लॉस को गतिशील रूप से ट्रैक करने की कोशिश करें और एक उच्च एकल लाभ प्राप्त करें।
अन्य संकेतकों के साथ संयोजन में प्रवेश संकेतों को फ़िल्टर करना, निर्णय की सटीकता में सुधार करना। उदाहरण के लिए, संश्लेषित ट्रैफ़िक संकेतकों का संयोजन।
बेहतर जोखिम-लाभ अनुपात को नियंत्रित करने के लिए धन प्रबंधन रणनीतियों का अनुकूलन, जैसे कि निश्चित हिस्सेदारी, कैली सूत्र आदि।
डबल डोनचियन चैनल ब्रेकआउट रणनीति समग्र रूप से एक उत्कृष्ट ट्रेंड ट्रैकिंग रणनीति है। यह ट्रेंड पहचानने की क्षमता और रिवर्स प्रोटेक्शन की क्षमता को एक साथ जोड़ती है। पैरामीटर अनुकूलन और नियम सुधार के माध्यम से, यह अधिकांश किस्मों के लिए अनुकूल है, जो कई प्रकार के बाजारों में लाभदायक व्यापार कर सकता है। यह रणनीति सरल और व्यावहारिक है, जो एक व्यापारी को सीखने और लागू करने के लिए योग्य है।
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © omererkan
//@version=5
strategy(title="Double Donchian Channel Breakout", overlay=true, initial_capital = 1000, commission_value = 0.05, default_qty_value = 100, default_qty_type = strategy.percent_of_equity)
// Donchian Channels
slowLen = input.int(50, title="Slow Donchian", group = "Conditions")
fastLen = input.int(30, title="Fast Donchian", group = "Conditions")
// Volatility Calculated as a percentage
volatility = input.int(3, title="Volatility (%)", group = "Conditions")
// Long positions
long = input.bool(true, "Long Position On/Off", group = "Strategy")
longProfitPerc = input.float(2, title="Long TP1 (%)", group = "Strategy", minval=0.0, step=0.1) * 0.01
// Short positions
short = input.bool(true, "Short Position On/Off", group = "Strategy")
shortProfitPerc = input.float(2, title="Short TP1 (%)", group = "Strategy", minval=0.0, step=0.1) * 0.01
// First take profit point for positions
TP1Yuzde =input.int(50, title = "TP1 Position Amount (%)", group = "Strategy")
// Slow Donchian Calculated
ubSlow = ta.highest(high, slowLen)[1]
lbSlow = ta.lowest(low, slowLen)[1]
// Fast Donchian Calculated
ubFast = ta.highest(high, fastLen)[1]
lbFast = ta.lowest(low, fastLen)[1]
// Plot Donchian Channel for entries
plot(ubSlow, color=color.green, linewidth=2, title="Slow DoCh - Upperband")
plot(lbSlow, color=color.green, linewidth=2, title="Slow DoCh - Lowerband")
plot(ubFast, color=color.blue, linewidth=2, title="Fast DoCh - Upperband")
plot(lbFast, color=color.blue, linewidth=2, title="Fast DoCh - Lowerband")
// This calculation, the strategy does not open position in the horizontal market.
fark = (ubSlow - lbSlow) / lbSlow * 100
// Take profit levels
longExitPrice = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)
// Code long trading conditions
longCondition = ta.crossover(close, ubSlow) and fark > volatility
if longCondition and long == true
strategy.entry("Long", strategy.long)
// Code short trading conditions
shortCondition = ta.crossunder(close, lbSlow) and fark > volatility
if shortCondition and short == true
strategy.entry("Short", strategy.short)
// Determine long trading conditions
if strategy.position_size > 0 and ta.crossunder(close, lbFast)
strategy.close_all("Close All")
// Determine short trading conditions
if strategy.position_size < 0 and ta.crossover(close, ubFast)
strategy.close_all("Close All")
// Take Profit Long
if strategy.position_size > 0
strategy.exit("TP1", "Long", qty_percent = TP1Yuzde, limit = longExitPrice)
// Take Profit Short
if strategy.position_size < 0
strategy.exit("TP1", "Short", qty_percent = TP1Yuzde, limit = shortExitPrice)