
اس حکمت عملی میں ایک ترمیم شدہ ہل منتقل اوسط ((HMA) اور ایک نظر میں توازن ((Ichimoku Kinko Hyo) کے دو تکنیکی اشارے شامل ہیں ، جس کا مقصد مارکیٹ میں درمیانی اور طویل مدتی رجحانات کو پکڑنا ہے۔ حکمت عملی کا بنیادی نظریہ یہ ہے کہ HMA اور ایک نظر میں توازن میں بیس لائن ((Kijun Sen) کے کراس سگنل کا استعمال کیا جائے ، جبکہ ایک نظر میں توازن والے بادل ((Kumo) کو بطور فلٹرنگ شرط استعمال کیا جائے تاکہ مارکیٹ کی رجحان کی سمت کا فیصلہ کیا جاسکے اور تجارت کی جائے۔
اس حکمت عملی میں ترمیم شدہ ہل چلنے والی اوسط اور ایک نظر میں توازن کے ساتھ مل کر ، ایک نسبتا stable مستحکم رجحان سے باخبر رہنے والے تجارتی نظام کی تشکیل کی گئی ہے۔ حکمت عملی کی منطق واضح ہے ، اس پر عمل درآمد کرنا آسان ہے ، اور اس کے ساتھ ساتھ اس کے کچھ فوائد بھی ہیں۔ تاہم ، حکمت عملی کی کارکردگی اب بھی مارکیٹ کے حالات اور پیرامیٹرز کی ترتیب سے متاثر ہے ، جس میں مزید اصلاح اور بہتری کی ضرورت ہے۔ عملی استعمال میں ، حکمت عملی کو مارکیٹ کی مخصوص خصوصیات اور خطرے کی ترجیحات کے ساتھ مل کر مناسب ایڈجسٹ اور انتظام کیا جانا چاہئے تاکہ بہتر تجارتی نتائج حاصل کیے جاسکیں۔
/*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")