बोलिंगर बैंड अद्भुत ऑसिलेटर ब्रेकआउट ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांक: 2023-12-12 17:12:35
टैगः

img

अवलोकन

यह रणनीति एक ब्रेकआउट ट्रेडिंग मॉडल को लागू करने के लिए बोलिंगर बैंड्स संकेतक और भयानक ऑसिलेटर (एओ) संकेतक को जोड़ती है। यह एओ संकेतक के दिशात्मक संकेतों के साथ-साथ तेजी से ईएमए बीबी चैनल के माध्यम से तोड़ने पर खरीद और बिक्री संकेत उत्पन्न करता है।

रणनीति तर्क

  1. मूल्य चैनल निर्धारित करने के लिए बोलिंगर बैंड के मध्य, ऊपरी और निचले बैंड का प्रयोग करें।
  2. एक चैनल ब्रेकआउट का न्याय करें जब तेज ईएमए मध्य बैंड को पार करता है।
  3. एओ संकेतक ऊपर की ओर या नीचे की ओर रुझान की दिशा निर्धारित करता है।
  4. जब तेज ईएमए मध्य बैंड के माध्यम से ऊपर की ओर टूट जाता है और एओ सकारात्मक होता है, तो एक खरीद संकेत उत्पन्न होता है।
  5. जब तेज ईएमए मध्य बैंड के माध्यम से नीचे की ओर टूट जाता है और एओ नकारात्मक होता है, तो एक बिक्री संकेत उत्पन्न होता है।

लाभ विश्लेषण

  1. बीबी चैनल गलत संकेतों से बचता है।
  2. एओ संकेतक संकेतों की सटीकता में सुधार करता है।
  3. प्रवृत्ति की शुरुआत में अधिक लाभ प्राप्त करता है।

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

  1. गलत बीबी पैरामीटर बहुत चौड़ी या बहुत संकीर्ण चैनल का कारण बन सकता है।
  2. एओ मापदंड सटीकता को प्रभावित करते हैं।
  3. ब्रेकआउट सिग्नल गलत ब्रेकआउट हो सकता है।

समाधान

  1. सर्वोत्तम संयोजन खोजने के लिए बीबी और एओ के मापदंडों का अनुकूलन करें।
  2. झूठे ब्रेकआउट से बचने के लिए ताकत की स्थिति जोड़ें.
  3. विश्वसनीयता सुनिश्चित करने के लिए अन्य संकेतकों के साथ संयोजन करें।

अनुकूलन दिशाएँ

  1. उपयुक्त चैनल रेंज खोजने के लिए बीबी मापदंडों का अनुकूलन करें.
  2. सटीकता में सुधार के लिए दीर्घकालिक और अल्पकालिक अवधि के आरओ को अनुकूलित करें।
  3. ब्रेकआउट विश्वसनीयता सुनिश्चित करने के लिए वॉल्यूम या अन्य फ़िल्टर जोड़ें।
  4. झूठी ब्रेकआउट दर को कम करने के लिए ताकत की स्थिति को अनुकूलित करें।

निष्कर्ष

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


/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

strategy(shorttitle="BB+AO STRAT", title="BB+AO STRAT", overlay=true)


// === BACKTEST RANGE ===
FromMonth = input(defval = 6, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2018, title = "From Year", minval = 2014)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 2014)

// Bollinger Bands Inputs
bb_use_ema = input(false, title="Use EMA for Bollinger Band")
bb_length = input(5, minval=1, title="Bollinger Length")
bb_source = input(close, title="Bollinger Source")
bb_mult = input(2.0, title="Base Multiplier", minval=0.5, maxval=10)
// EMA inputs
fast_ma_len = input(2, title="Fast EMA length", minval=2)
// Awesome Inputs
nLengthSlow = input(34, minval=1, title="Awesome Length Slow")
nLengthFast = input(5, minval=1, title="Awesome Length Fast")




// Breakout Indicator Inputs
bb_basis = bb_use_ema ? ema(bb_source, bb_length) : sma(bb_source, bb_length)
fast_ma  = ema(bb_source, fast_ma_len)

// Deviation

dev = stdev(bb_source, bb_length)
bb_dev_inner = bb_mult * dev

// Upper bands
inner_high = bb_basis + bb_dev_inner
// Lower Bands
inner_low = bb_basis - bb_dev_inner

// Calculate Awesome Oscillator
xSMA1_hl2 = sma(hl2, nLengthFast)
xSMA2_hl2 = sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
// Calculate direction of AO
AO = xSMA1_SMA2>=0? xSMA1_SMA2 > xSMA1_SMA2[1] ? 1 : 2 : xSMA1_SMA2 > xSMA1_SMA2[1] ? -1 : -2



// === PLOTTING ===

// plot BB basis
plot(bb_basis, title="Basis Line", color=red, transp=10, linewidth=2)
// plot BB upper and lower bands
ubi = plot(inner_high, title="Upper Band Inner", color=blue, transp=10, linewidth=1)
lbi = plot(inner_low, title="Lower Band Inner", color=blue, transp=10, linewidth=1)
// center BB channel fill
fill(ubi, lbi, title="Center Channel Fill", color=silver, transp=90)

// plot fast ma
plot(fast_ma, title="Fast EMA", color=black, transp=10, linewidth=2)

// Calc breakouts
break_down =   crossunder(fast_ma, bb_basis) and close < bb_basis and abs(AO)==2
break_up   =  crossover(fast_ma, bb_basis) and close > bb_basis and abs(AO)==1

// Show Break Alerts
plotshape(break_down, title="Breakout Down", style=shape.arrowdown, location=location.abovebar, size=size.auto, text="Sell", color=red, transp=0)
plotshape(break_up, title="Breakout Up", style=shape.arrowup, location=location.belowbar, size=size.auto, text="Buy", color=green, transp=0)
// === ALERTS ===



strategy.entry("L", strategy.long, when=(break_up and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))


strategy.close("L", when=(break_down and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))

// === /PLOTTING ===
barcolor(AO == 2 ? red: AO == 1 ? green : blue )



// eof

अधिक