बोलिंगर बैंड ब्रेकआउट ट्रेंड फ़ॉलोइंग रणनीति


निर्माण तिथि: 2023-09-22 14:31:17 अंत में संशोधित करें: 2023-09-22 14:31:17
कॉपी: 1 क्लिक्स: 681
1
ध्यान केंद्रित करना
1621
समर्थक

अवलोकन

यह रणनीति एक बुरिन बैंड संकेतक पर आधारित प्रवृत्ति ट्रैकिंग रणनीति है। यह बुरिन बैंड के नीचे के ब्रेक का उपयोग करके प्रवृत्ति की दिशा का आकलन करता है, और संबंधित दिशा में एक स्थिति खोलता है। जब कीमत पीछे हटने लगती है, तो गतिशील अंतराल के साथ ट्रैक किए गए स्टॉप का उपयोग करके स्थिति से बाहर निकलें और लाभ प्राप्त करें।

रणनीति सिद्धांत

इस रणनीति में बुलिन बैंड के संकेतकों का उपयोग किया जाता है ताकि प्रवृत्ति की दिशा का पता लगाया जा सके। बुलिन बैंड मूल्य के मानक अंतर की गणना करके एक उछाल और गिरावट का निर्माण करता है। जब कीमत उछाल को तोड़ती है, तो यह माना जाता है कि प्रवृत्ति ऊपर की ओर शुरू होती है; जब कीमत नीचे की ओर टूटती है, तो यह माना जाता है कि प्रवृत्ति नीचे की ओर शुरू होती है।

लेन-देन का तर्क इस प्रकार है:

  1. मध्य, ऊपरी और निचले रेल की गणना करें।

  2. जब कीमत ऊपर की पटरी से गुजरती है, तो अधिक ऑर्डर करें; जब कीमत नीचे की पटरी से गुजरती है, तो खाली ऑर्डर करें।

  3. स्टॉप ट्रैक का उपयोग जोखिम को नियंत्रित करने के लिए किया जाता है, जब कीमतों में गिरावट शुरू होती है तो स्टॉप को रोक दिया जाता है

  4. यह एक बार फिर से प्रवृत्ति में है जब यह ब्रिन बैंड की कक्षा में फिर से प्रवेश करता है।

ब्रिन बैंड का उपयोग प्रवृत्ति की दिशा का आकलन करने के लिए किया जाता है, और गतिशील ट्रैकिंग स्टॉपलॉस के साथ, जोखिम को प्रभावी ढंग से नियंत्रित किया जा सकता है।

श्रेष्ठता विश्लेषण

इस रणनीति के निम्नलिखित फायदे हैं:

  1. ब्रींग बैंड के साथ प्रवृत्तियों का आकलन करना आसान और प्रभावी है।

  2. ब्रेक-एंट्री और डायनामिक ट्रेलिंग स्टॉप लॉस का संयोजन, ट्रेंड कैप्चर और जोखिम नियंत्रण दोनों को ध्यान में रखते हुए।

  3. कोड संरचना स्पष्ट और संक्षिप्त है, इसे समझना और संशोधित करना आसान है।

  4. कम पैरामीटर, अनुकूलन के लिए आसान।

  5. विभिन्न किस्मों के लिए उपयुक्त, लचीला।

  6. यह एक अच्छा परिणाम है और लाभ के लिए एक बड़ा स्थान है।

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

इस रणनीति के मुख्य जोखिम हैंः

  1. ब्रिन बैंड केवल सांख्यिकीय विशेषताओं पर आधारित है, जो वक्र के अनुरूप होने का जोखिम है।

  2. इस तरह की घटनाओं के कारण, कुछ लोगों का मानना है कि इस तरह की घटनाओं के बीच कोई अंतर नहीं है।

  3. स्टॉप पॉइंट बहुत घने हैं और कीमतों में सामान्य उतार-चढ़ाव से प्रभावित हो सकते हैं।

  4. लेनदेन लागत के प्रभाव को ध्यान में नहीं रखा गया है।

  5. यह एक सीमित समय के लिए है, और यह एक ओवरफिट हो सकता है।

समाधान:

  1. ऑप्टिमाइज़ेशन पैरामीटर या अन्य संकेतक सत्यापन संकेतों को शामिल करें.

  2. भूकंप और मार्गों की पहचान में वृद्धि।

  3. एटीआर जैसे संकेतकों के आधार पर स्टॉपलॉस को गतिशील रूप से समायोजित करें।

  4. एक और शुल्क, स्लाइड प्वाइंट की गणना

  5. एक और समय सीमा, बहु-बाजार सत्यापन।

अनुकूलन दिशा

इस रणनीति को निम्नलिखित तरीकों से अनुकूलित किया जा सकता हैः

  1. विभिन्न संकेतकों के संयोजन का परीक्षण करना।

  2. प्रवृत्ति के उतार-चढ़ाव की पहचान करना।

  3. मशीन लर्निंग विधि को गतिशील रूप से अनुकूलित करने के लिए पैरामीटर का परिचय दें।

  4. स्टॉप लॉस रणनीति को अनुकूलित करें।

  5. लेन-देन की लागत के प्रभाव का आकलन और शामिल करना।

  6. पैरामीटर स्पेस ऑप्टिमाइज़ेशन के लिए सबसे अच्छा पैरामीटर सेटिंग्स ढूंढें

  7. मुद्रा प्रबंधन को बढ़ाएं ताकि स्थिति जोखिम को नियंत्रित किया जा सके।

संक्षेप

इस रणनीति के लिए ब्रीनिंग बैंड संकेतकों के माध्यम से प्रवृत्ति की दिशा का आकलन करने के लिए, और ट्रैक करने के लिए रोक जोखिम को नियंत्रित करने के लिए, समग्र व्यापार तर्क सरल और स्पष्ट है. रणनीति के लिए अच्छा प्रवृत्ति पकड़ने प्रभाव है, लेकिन अधिक तकनीकी संकेतकों, अनुकूलन पैरामीटर और जोड़ने लागत गणना आदि की शुरूआत के द्वारा सुधार किया जा सकता है रणनीति और अधिक स्थिर और विश्वसनीय है. कुल मिलाकर, इस रणनीति के एक सरल और व्यावहारिक प्रवृत्ति ट्रैक करने के लिए एक ब्रीनिंग बैंड आधारित व्यापार विचार प्रदान करता है.

रणनीति स्रोत कोड
/*backtest
start: 2022-09-15 00:00:00
end: 2023-09-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Bollinger Band Breakout", shorttitle = "BB Strategy",initial_capital=1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, commission_type = strategy.commission.percent, commission_value = 0.3, max_bars_back = 1000, overlay=true)

// Inputs //

sma = input(20,  minval=1)
mult   = input(1.2, minval=0.001, maxval=50)
src = input(close)

// alert msg  //

message_long_entry  = input("long entry")
message_short_entry = input("short entry")

// Calculations //

basis = sma(close, sma)
dev   = mult * stdev(close, sma)

upper = basis + dev
lower = basis - dev

// Backtest //
fromyear = input(2019, defval = 2019, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(1, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

leverage = input(1, "Leverage")

term = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))

// PLOT //

plot(basis, color = color.gray,  linewidth = 2)
lu = plot(upper, color = color.green, linewidth = 2)
ll = plot(lower, color = color.red,   linewidth = 2)

fill(lu, ll, color = color.gray)

// Signals //

long  = crossover(close, upper)
short = crossunder(close, lower)

// Strategy entry //
strategy.initial_capital = 50000
if (long and term)
    strategy.entry("long",  strategy.long, qty=strategy.initial_capital/close*leverage, when = long and barstate.isconfirmed, alert_message = message_long_entry)
    
if (short and term)
    strategy.entry("short",  strategy.short, qty=strategy.initial_capital/close*leverage, when = short and barstate.isconfirmed, alert_message = message_short_entry)

// strategy exit //

strategy.exit("long tsl", "long", loss = close*0.075 / syminfo.mintick, trail_points = close*0.05 / syminfo.mintick, trail_offset = close*0.005 / syminfo.mintick)
strategy.exit("short tsl", "short", loss = close*0.075 / syminfo.mintick, trail_points = close*0.05 / syminfo.mintick, trail_offset = close*0.005 / syminfo.mintick)