
এই কৌশলটি সংশোধিত হুল মুভিং এভারেজ ((HMA) এবং একনজরে ভারসাম্য ((Ichimoku Kinko Hyo) দুটি প্রযুক্তিগত সূচককে সংযুক্ত করে, যা বাজারের মাঝারি এবং দীর্ঘমেয়াদী প্রবণতা ক্যাপচার করার জন্য। কৌশলটির মূল ধারণাটি হ’ল এইচএমএ এবং একনজরে ভারসাম্য বজায় রাখার বেঞ্চমার্ক লাইন ((কিজুন সেন) এর ক্রস সিগন্যাল ব্যবহার করা, যখন একনজরে ভারসাম্য বজায় রাখার মেঘ ((কুমো) এর সাথে মিলিত হয় ফিল্টার শর্ত হিসাবে, যাতে বাজারের প্রবণতা দিকটি বিচার করতে এবং ট্রেড করতে পারে।
এই কৌশলটি সংশোধিত হুল মুভিং এভারেজ এবং প্রথম দৃষ্টিভঙ্গির সমীকরণের সাথে একত্রিত হয়ে একটি অপেক্ষাকৃত স্থিতিশীল প্রবণতা-ট্র্যাকিং ট্রেডিং সিস্টেম তৈরি করে। কৌশলটির লজিকটি পরিষ্কার এবং বাস্তবায়নের জন্য সহজ, তবে এটির কিছু সুবিধা রয়েছে। তবে, কৌশলটির কার্যকারিতা এখনও বাজার পরিস্থিতি এবং প্যারামিটার সেটিংয়ের দ্বারা প্রভাবিত হয় এবং আরও অপ্টিমাইজেশন এবং উন্নতির প্রয়োজন। বাস্তব প্রয়োগে, কৌশলটি নির্দিষ্ট বাজার বৈশিষ্ট্য এবং ঝুঁকি পছন্দগুলির সাথে সংযুক্ত করা উচিত, যাতে আরও ভাল ব্যবসায়ের ফলাফল অর্জনের জন্য যথাযথভাবে সামঞ্জস্য করা এবং পরিচালনা করা উচিত।
/*backtest
start: 2024-04-20 00:00:00
end: 2024-04-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Hull MA_X + Ichimoku Kinko Hyo Strategy", shorttitle="HMX+IKHS", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding=0)
// Hull Moving Average Parameters
keh = input(12, title="Double HullMA")
n2ma = 2 * wma(close, round(keh/2)) - wma(close, keh)
sqn = round(sqrt(keh))
hullMA = wma(n2ma, sqn)
// Ichimoku Kinko Hyo Parameters
tenkanSenPeriods = input(9, title="Tenkan Sen Periods")
kijunSenPeriods = input(26, title="Kijun Sen Periods")
senkouSpanBPeriods = input(52, title="Senkou Span B Periods")
displacement = input(26, title="Displacement")
// Ichimoku Calculations
highestHigh = highest(high, max(tenkanSenPeriods, kijunSenPeriods))
lowestLow = lowest(low, max(tenkanSenPeriods, kijunSenPeriods))
tenkanSen = (highest(high, tenkanSenPeriods) + lowest(low, tenkanSenPeriods)) / 2
kijunSen = (highestHigh + lowestLow) / 2
senkouSpanA = ((tenkanSen + kijunSen) / 2)
senkouSpanB = (highest(high, senkouSpanBPeriods) + lowest(low, senkouSpanBPeriods)) / 2
// Plot Ichimoku
p1 = plot(tenkanSen, color=color.blue, title="Tenkan Sen")
p2 = plot(kijunSen, color=color.red, title="Kijun Sen")
p3 = plot(senkouSpanA, color=color.green, title="Senkou Span A", offset=displacement)
p4 = plot(senkouSpanB, color=color.orange, title="Senkou Span B", offset=displacement)
fill(p3, p4, color=color.gray, title="Kumo Shadow")
// Trading Logic
longCondition = crossover(hullMA, kijunSen) and close > senkouSpanA[displacement] and close > senkouSpanB[displacement]
shortCondition = crossunder(hullMA, kijunSen) and close < senkouSpanA[displacement] and close < senkouSpanB[displacement]
// Strategy Execution
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// Exit Logic - Exit if HullMA crosses KijunSen in the opposite direction
exitLongCondition = crossunder(hullMA, kijunSen)
exitShortCondition = crossover(hullMA, kijunSen)
if (exitLongCondition)
strategy.close("Long")
if (exitShortCondition)
strategy.close("Short")