এই কৌশলটি ট্রেন্ডের দিকনির্দেশ নির্ধারণ এবং প্রবণতা অনুসরণ করার জন্য হেইকেন আশি এবং ইচিমোকু কিনকো হিও সূচকগুলিকে একত্রিত করে। হেইকেন আশি মসৃণকরণ গোলমাল হ্রাস করে। ট্রেন্ডের শক্তি মূল্যায়নের জন্য রূপান্তর এবং বেস লাইনগুলির মতো একাধিক সংকেত ব্যবহার করে। সংমিশ্রণটি কৌশল স্থিতিশীলতা উন্নত করে।
হিকেন আশির বন্ধের মূল্য গণনা করুন এবং রূপান্তর লাইন, বেস লাইন ইত্যাদির মতো ইচিমোকু সূচকগুলি প্লট করুন। যখন বন্ধটি আগের দুই দিনের তুলনায় বেশি এবং ইচিমোকুর উপরের প্রান্ত এবং পিছনের লাইনের উপরে হয় তখন দীর্ঘ যান। যখন বন্ধটি আগের দুই দিনের তুলনায় কম এবং ইচিমোকুর নীচের প্রান্ত এবং পিছনের লাইনের নীচে হয় তখন সংক্ষিপ্ত যান। রূপান্তর এবং বেস লাইন ক্রসগুলিও গৌণ সংকেত সরবরাহ করে।
মসৃণতা, ধরে রাখার সময়কাল, ইচিমোকু পরামিতি ইত্যাদি সামঞ্জস্য করে ঝুঁকিগুলি নিয়ন্ত্রণ করা যেতে পারে।
এই কৌশলটি নিয়ন্ত্রিত ড্রাউনডাউনের সাথে প্রবণতার দিকনির্দেশ নির্ধারণের জন্য একাধিক সূচক ব্যবহার করে। টিউনিং পরামিতি ইত্যাদির মাধ্যমে পারফরম্যান্স আরও উন্নত করা যেতে পারে।
/*backtest start: 2023-08-18 00:00:00 end: 2023-09-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Heiken Ashi + Ichimoku Kinko Hyo Strategy", shorttitle="HaI", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1000, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0) hahigh = security(heikinashi(syminfo.tickerid), timeframe.period, high) halow = security(heikinashi(syminfo.tickerid), timeframe.period, low) TenkanSenPeriods = input(9, minval=1, title="Tenkan Sen Periods") KijunSenPeriods = input(24, minval=1, title="Kijun Sen Periods") SenkouSpanBPeriods = input(51, minval=1, title="Senkou Span B Periods") displacement = input(24, minval=1, title="Displacement") donchian(len) => avg(lowest(len), highest(len)) TenkanSen = donchian(TenkanSenPeriods) KijunSen = donchian(KijunSenPeriods) SenkouSpanA = avg(TenkanSen, KijunSen) SenkouSpanB = donchian(SenkouSpanBPeriods) SenkouSpanH = max(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1]) SenkouSpanL = min(SenkouSpanA[displacement - 1], SenkouSpanB[displacement - 1]) ChikouSpan = close[displacement-1] plot(TenkanSen, color=blue, title="Tenkan Sen", linewidth = 2) plot(KijunSen, color=maroon, title="Kijun Sen", linewidth = 3) plot(close, offset = -displacement, color=orange, title="Chikou Span", linewidth = 2) sa=plot (SenkouSpanA, offset = displacement, color=green, title="Senkou Span A", linewidth = 2) sb=plot (SenkouSpanB, offset = displacement, color=red, title="Senkou Span B", linewidth = 3) fill(sa, sb, color = SenkouSpanA > SenkouSpanB ? green : red) longCondition = hahigh > max(hahigh[1],hahigh[2]) and close>ChikouSpan and close>SenkouSpanH and (TenkanSen>=KijunSen or close>KijunSen) if (longCondition) strategy.entry("Long",strategy.long) shortCondition = halow < min(halow[1],halow[2]) and close<ChikouSpan and close<SenkouSpanL and (TenkanSen<=KijunSen or close<KijunSen) if (shortCondition) strategy.entry("Short",strategy.short) closelong = halow < min(halow[1],halow[2]) and (TenkanSen<KijunSen or close<TenkanSen or close<KijunSen or close<SenkouSpanH or close<ChikouSpan) if (closelong) strategy.close("Long") closeshort = hahigh > max(hahigh[1],hahigh[2]) and (TenkanSen>KijunSen or close>TenkanSen or close>KijunSen or close>SenkouSpanL or close>ChikouSpan) if (closeshort) strategy.close("Short")