
यह रणनीति 8 अलग-अलग चक्रों की सूचकांक चलती औसत का उपयोग करती है और प्रमुख ट्रेडिंग सिग्नल के रूप में Ichimoku क्लाउड ग्राफ का उपयोग करती है, जो 1 घंटे, 4 घंटे या डेली टाइम फ्रेम के तहत प्रभावी रूप से चल सकती है।
इस रणनीति के मुख्य सिद्धांत दो भागों पर आधारित हैंः
इस रणनीति में 8 अलग-अलग चक्रों के ईएमए का उपयोग किया जाता है, जो 5 वीं, 11 वीं, 15 वीं, 18 वीं, 21 वीं, 24 वीं, 28 वीं और 34 वीं लाइन हैं। इन 8 ईएमए को ऑक्टा-ईएमए कहा जाता है। जब एक छोटी अवधि का ईएमए एक लंबी अवधि के ईएमए के ऊपर होता है, तो यह एक ओवरहेड प्रवृत्ति को दर्शाता है।
इचिमोकू क्लाउड चार्ट में रूपांतरण लाइन, बेंचमार्क लाइन, विलंब लाइन और अग्रणी लाइन ए / बी शामिल हैं। क्लाउड चार्ट मुख्य रूप से प्रवृत्ति की दिशा का निर्धारण करता है और समर्थन प्रतिरोध प्रदान करता है। जब कीमतें क्लाउड चार्ट के ऊपर होती हैं तो यह एक बहुमुखी प्रवृत्ति होती है, और क्लाउड चार्ट के नीचे एक शून्य प्रवृत्ति होती है।
इस रणनीति के लिए ट्रेडिंग सिग्नल उपरोक्त दो प्रमुख घटकों से आते हैं। जब 8 ईएमए सभी बहु-सिरिया में होते हैं (लघु ईएमए लंबे ईएमए के ऊपर) और कीमत इचिमोकु के क्लाउड ग्राफ से अधिक होती है, तो एक खरीद संकेत उत्पन्न होता है। जब ईएमए सरणी खाली सिर पर जाती है (लघु ईएमए लंबे ईएमए के नीचे) तो एक बेचने का संकेत उत्पन्न होता है।
इस रणनीति के मुख्य फायदे हैंः
इस रणनीति में कुछ जोखिम भी हैं:
उपरोक्त जोखिमों के लिए, ईएमए मापदंडों को समायोजित करके या प्रवेश की शर्तों को अनुकूलित करके जोखिम को कम किया जा सकता है, या अन्य संकेतकों को सहायक के रूप में जोड़ा जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
Octa-EMA और Ichimoku क्लाउड चार्टिंग ट्रेडिंग रणनीति एक समग्र रूप से एक अधिक स्थिर और विश्वसनीय प्रवृत्ति ट्रैकिंग रणनीति है। यह ईएमए संयोजन निर्णय प्रवृत्ति और Ichimoku फ़िल्टर सिग्नल का उपयोग करता है, जो पैरामीटर अनुकूलन के बाद कम गलतफहमी दर प्राप्त करता है। यह रणनीति स्टॉक इंडेक्स, विदेशी मुद्रा, कीमती धातु और अन्य किस्मों में व्यापक रूप से लागू की जा सकती है, और कई समय चक्रों में भी चल सकती है। यदि स्टॉपलॉस और सहायक संकेतकों के साथ संयोजन किया जा सकता है, तो रणनीति की जीत और लाभप्रदता को और बढ़ाया जा सकता है।
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//Fukuiz
strategy(title='Fukuiz Octa-EMA + Ichimoku', shorttitle='Fuku octa strategy', overlay=true, process_orders_on_close=true,
default_qty_type= strategy.cash , default_qty_value=1000, currency=currency.USD, initial_capital=10000 ,commission_type = strategy.commission.percent,commission_value=0.25)
//OCTA EMA ##################################################
// Functions
f_emaRibbon(_src, _e1, _e2, _e3, _e4, _e5, _e6, _e7, _e8) =>
_ema1 = ta.ema(_src, _e1)
_ema2 = ta.ema(_src, _e2)
_ema3 = ta.ema(_src, _e3)
_ema4 = ta.ema(_src, _e4)
_ema5 = ta.ema(_src, _e5)
_ema6 = ta.ema(_src, _e6)
_ema7 = ta.ema(_src, _e7)
_ema8 = ta.ema(_src, _e8)
[_ema1, _ema2, _ema3, _ema4, _ema5, _ema6, _ema7, _ema8]
showRibbon = input(true, 'Show Ribbon (EMA)')
ema1Len = input(5, title='EMA 1 Length')
ema2Len = input(11, title='EMA 2 Length')
ema3Len = input(15, title='EMA 3 Length')
ema4Len = input(18, title='EMA 4 Length')
ema5Len = input(21, title='EMA 5 Length')
ema6Len = input(24, title='EMA 6 Length')
ema7Len = input(28, title='EMA 7 Length')
ema8Len = input(34, title='EMA 8 Length')
[ema1, ema2, ema3, ema4, ema5, ema6, ema7, ema8] = f_emaRibbon(close, ema1Len, ema2Len, ema3Len, ema4Len, ema5Len, ema6Len, ema7Len, ema8Len)
//Plot
ribbonDir = ema8 < ema2
p1 = plot(ema1, color=showRibbon ? ribbonDir ? #1573d4 : color.new(#5d606b, 15) : na, linewidth=2, title='EMA 1')
p2 = plot(ema2, color=showRibbon ? ribbonDir ? #3096ff : color.new(#5d606b, 15) : na, linewidth=2, title='EMA 2')
plot(ema3, color=showRibbon ? ribbonDir ? #57abff : color.new(#5d606b, 15) : na, linewidth=2, title='EMA 3')
plot(ema4, color=showRibbon ? ribbonDir ? #85c2ff : color.new(#5d606b, 15) : na, linewidth=2, title='EMA 4')
plot(ema5, color=showRibbon ? ribbonDir ? #9bcdff : color.new(#5d606b, 30) : na, linewidth=2, title='EMA 5')
plot(ema6, color=showRibbon ? ribbonDir ? #b3d9ff : color.new(#5d606b, 30) : na, linewidth=2, title='EMA 6')
plot(ema7, color=showRibbon ? ribbonDir ? #c9e5ff : color.new(#5d606b, 30) : na, linewidth=2, title='EMA 7')
p8 = plot(ema8, color=showRibbon ? ribbonDir ? #dfecfb : color.new(#5d606b, 30) : na, linewidth=2, title='EMA 8')
fill(p1, p2, color.new(#1573d4, 85))
fill(p2, p8, color.new(#1573d4, 85))
//ichimoku##################################################
//color
colorblue = #3300CC
colorred = #993300
colorwhite = #FFFFFF
colorgreen = #CCCC33
colorpink = #CC6699
colorpurple = #6633FF
//switch
switch1 = input(false, title='Chikou')
switch2 = input(false, title='Tenkan')
switch3 = input(false, title='Kijun')
middleDonchian(Length) =>
lower = ta.lowest(Length)
upper = ta.highest(Length)
math.avg(upper, lower)
//Functions
conversionPeriods = input.int(9, minval=1)
basePeriods = input.int(26, minval=1)
laggingSpan2Periods = input.int(52, minval=1)
displacement = input.int(26, minval=1)
Tenkan = middleDonchian(conversionPeriods)
Kijun = middleDonchian(basePeriods)
xChikou = close
SenkouA = middleDonchian(laggingSpan2Periods)
SenkouB = (Tenkan[basePeriods] + Kijun[basePeriods]) / 2
//Plot
A = plot(SenkouA[displacement], color=color.new(colorpurple, 0), title='SenkouA')
B = plot(SenkouB, color=color.new(colorgreen, 0), title='SenkouB')
plot(switch1 ? xChikou : na, color=color.new(colorpink, 0), title='Chikou', offset=-displacement)
plot(switch2 ? Tenkan : na, color=color.new(colorred, 0), title='Tenkan')
plot(switch3 ? Kijun : na, color=color.new(colorblue, 0), title='Kijun')
fill(A, B, color=color.new(colorgreen, 90), title='Ichimoku Cloud')
//Buy and Sell signals
fukuiz = math.avg(ema2, ema8)
white = ema2 > ema8
gray = ema2 < ema8
buycond = white and white[1] == 0
sellcond = gray and gray[1] == 0
bullish = ta.barssince(buycond) < ta.barssince(sellcond)
bearish = ta.barssince(sellcond) < ta.barssince(buycond)
buy = bearish[1] and buycond and fukuiz > SenkouA[displacement] and fukuiz > SenkouB
sell = bullish[1] and sellcond and fukuiz > SenkouA[displacement] and fukuiz > SenkouB
sell2=ema2 < ema8
buy2 = white and fukuiz > SenkouA[displacement] and fukuiz > SenkouB
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
//Back test
startYear = input.int(defval=2017, title='Start Year', minval=2000, maxval=3000)
startMonth = input.int(defval=1, title='Start Month', minval=1, maxval=12)
startDay = input.int(defval=1, title='Start Day', minval=1, maxval=31)
endYear = input.int(defval=2023, title='End Year', minval=2000 ,maxval=3000)
endMonth = input.int(defval=12, title='End Month', minval=1, maxval=12)
endDay = input.int(defval=31, title='End Day', minval=1, maxval=31)
start = timestamp(startYear, startMonth, startDay, 00, 00)
end = timestamp(endYear, endMonth, endDay, 23, 59)
period() => time >= start and time <= end ? true : false
if buy2
strategy.entry(id='long', direction=strategy.long, when=period(), comment='BUY')
if sell2
strategy.close(id='long', when=period(), comment='SELL')