এই কৌশলটি প্রবণতা অনুসরণ এবং ভারসাম্য ব্রেকআউট ট্রেডিংয়ের জন্য ইচিমোকু সূচকের উপর ভিত্তি করে ডিজাইন করা হয়েছে, যার লক্ষ্য স্থিতিশীল মুনাফার জন্য মাঝারি থেকে দীর্ঘমেয়াদী মূল্য প্রবণতা ক্যাপচার করা।
কৌশলটি মূল্যের প্রবণতা এবং সমর্থন / প্রতিরোধের স্তর নির্ধারণের জন্য ইচিমোকুর পাঁচটি লাইন - টেনকান-সেন, কিজুন-সেন, সেনকু স্প্যান এ, সেনকু স্প্যান বি এবং চিকু স্প্যান ব্যবহার করে। নির্দিষ্ট প্রবেশের নিয়মগুলি হলঃ
উপরের ট্রেডিং সিগন্যালগুলি চূড়ান্ত প্রবেশের সময় নির্ধারণের জন্য একত্রিত করা হয়।
এই কৌশলটির সুবিধাগুলির মধ্যে রয়েছেঃ
এই কৌশলের ঝুঁকিগুলি নিম্নলিখিত বিষয়গুলির সাথে জড়িতঃ
এই ঝুঁকিগুলি প্যারামিটারগুলি অপ্টিমাইজ করে, প্রবণতা পরিবর্তন নির্ধারণের জন্য অন্যান্য সূচকগুলির সাথে একত্রিত করে এবং কঠোর স্টপ লস দ্বারা মোকাবেলা করা যেতে পারে।
কৌশলটি নিম্নলিখিত দিকগুলি থেকে আরও অনুকূলিত করা যেতে পারেঃ
এই কৌশলটি প্রবণতা অনুসরণের জন্য মূল্যের প্রবণতা এবং তরলতা শর্ত নির্ধারণের জন্য ইচিমোকুকে ব্যবহার করে, যা কার্যকরভাবে গোলমাল ফিল্টার করতে পারে এবং ছোট ড্রডাউন সহ মাঝারি থেকে দীর্ঘমেয়াদী প্রবণতা ক্যাপচার করতে পারে। প্যারামিটার টিউনিং, অক্জিলিয়ারী ফিল্টার যুক্ত করা এবং প্রবণতা বিপরীত সংকেত সনাক্তকরণের উপর আরও অপ্টিমাইজেশন কৌশল
/*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))))