यह रणनीति ट्रेंड फॉलो और इक्विलिड ब्रेकआउट ट्रेडिंग के लिए इचिमोकू संकेतक के आधार पर तैयार की गई है, जिसका उद्देश्य स्थिर मुनाफे के लिए मध्यम से दीर्घकालिक मूल्य रुझानों को पकड़ना है।
यह रणनीति मूल्य प्रवृत्ति और समर्थन/प्रतिरोध स्तरों को निर्धारित करने के लिए इचिमोकू की पांच लाइनों - टेनकन-सेन, किजुन-सेन, सेनको स्पैन ए, सेनको स्पैन बी और चिको स्पैन का उपयोग करती है। विशिष्ट प्रवेश नियम हैंः
उपरोक्त ट्रेडिंग संकेतों को अंतिम प्रवेश समय निर्धारित करने के लिए संयुक्त किया जाता है।
इस रणनीति के लाभों में निम्नलिखित शामिल हैंः
इस रणनीति के जोखिमों में शामिल हैंः
इन जोखिमों को मापदंडों को अनुकूलित करके, प्रवृत्ति परिवर्तन को निर्धारित करने के लिए अन्य संकेतकों के साथ संयोजन करके, और सख्त स्टॉप लॉस द्वारा संबोधित किया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं से और अनुकूलित किया जा सकता हैः
यह रणनीति इचिमोकू का लाभ उठाती है ताकि प्रवृत्ति के लिए मूल्य प्रवृत्ति और तरलता की स्थिति निर्धारित की जा सके, जो प्रभावी रूप से शोर को फ़िल्टर कर सकती है और छोटे ड्रॉडाउन के साथ मध्यम से दीर्घकालिक रुझानों को पकड़ सकती है। पैरामीटर ट्यूनिंग पर आगे के अनुकूलन, सहायक फ़िल्टर जोड़ने और प्रवृत्ति उलट संकेतों की पहचान करने से रणनीति के लाभ कारक में सुधार हो सकता है।
/*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=3 strategy("My Ichimoku Strat", overlay=true,default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=1000, currency=currency.EUR) // === BACKTEST RANGE === FromMonth = input(defval = 1, title = "From Month", minval = 1) FromDay = input(defval = 1, title = "From Day", minval = 1) FromYear = input(defval = 2017, 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) // === SERIES SETUP === //**** Inputs ******* KijunSenLag = input(6,title="KijunSen Lag",minval=1) //Kijun-sen //Support resistance line, buy signal when price crosses it KijunSen = sma((high+low)/2,26) buy2 = crossover(close,KijunSen) and (rising(KijunSen,KijunSenLag) or falling(KijunSen,KijunSenLag)) sell2= crossunder(close,KijunSen) and (rising(KijunSen,KijunSenLag) or falling(KijunSen,KijunSenLag)) //Tenkan-Sen TenkanSen = sma((high+low)/2,9) //Senkou Span A SenkouSpanA = (KijunSen + TenkanSen)/2 //Senkou Span B SenkouSpanB = sma((high+low)/2,52) //Cloud conditions : ignore buy if price is under the cloud // Huge cloud means safe support and resistance. Little cloud means danger. buy3 = close > SenkouSpanA and close > SenkouSpanB sell3 = close < SenkouSpanA and close < SenkouSpanB //Chikou Span //Buy signal : crossover(ChikouSpan,close) //Sell Signal : crossunder(ChikouSpan,close) ChikouSpan = close buy1=crossover(ChikouSpan,close[26]) sell1=crossunder(ChikouSpan,close[26]) plotshape(buy1,style=shape.diamond,color=lime,size=size.small) plotshape(sell1,style=shape.diamond,color=orange,size=size.small) //Alerts buyCompteur = -1 buyCompteur := nz(buyCompteur[1],-1) buyCompteur := buy2 or buy3 ? 1 : buyCompteur buyCompteur := buyCompteur > 0 ? buyCompteur + 1 : buyCompteur buyCompteur := sell2 or sell3 ? -1 : buyCompteur sellCompteur = -1 sellCompteur := nz(sellCompteur[1],-1) sellCompteur := sell2 or sell3 ? 1 : sellCompteur sellCompteur := sellCompteur > 0 ? sellCompteur + 1 : sellCompteur sellCompteur := buy2 or buy3 ? -1 : sellCompteur sell= sell2 and sell3 or (sell1 and buyCompteur <= 8) buy=buy2 and buy3 or (buy1 and sellCompteur <=8) plotchar(buy,char='B',size=size.small,color=lime) plotchar(sell,char='S',size=size.small,color=orange) //plots plot(KijunSen,title="Kijun-Sen",color=blue,linewidth=4) plot(TenkanSen,title="Tenkan-Sen",color=red,linewidth=2) cloudA = plot(SenkouSpanA,title="cloud A", color=lime,offset=26,linewidth=2) cloudB = plot(SenkouSpanB,title="cloud B", color=orange,offset=26,linewidth=2) plot(ChikouSpan,title="lag span",color=fuchsia, linewidth=2,offset=-26) //plot() fill(cloudA,cloudB,color=SenkouSpanA>SenkouSpanB?lime:orange) //plot(close,color=silver,linewidth=4) // === ALERTS === strategy.entry("L", strategy.long, when=(buy and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))) strategy.close("L", when=(sell and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))