
یہ حکمت عملی ایک جامع تجارتی نظام ہے جو متعدد تکنیکی اشاریوں کو یکجا کرتا ہے، بشمول Ichimoku، RSI، MACD، HTF ڈائیورجینس اور تجزیاتی طریقوں کو متعدد جہتوں میں جیسے کہ ایکسپونینشل موونگ ایوریج (EMA) کراس اوور۔ حکمت عملی متعدد سگنل کنفرمیشنز کے ذریعے لین دین کی درستگی کو بہتر بناتی ہے، جبکہ تجارت کے مزید قابل اعتماد مواقع حاصل کرنے کے لیے مختلف اوقات میں مارکیٹ کی معلومات کا استعمال کرتی ہے۔
حکمت عملی کا بنیادی اصول کثیر پرت تکنیکی اشارے کے جامع تجزیہ کے ذریعے تجارتی سگنلز کی تصدیق کرنا ہے۔ سب سے پہلے، مارکیٹ کے مجموعی رجحان کا تعین کرنے کے لیے Ichimoku Kinko Hyo کے کلاؤڈ چارٹ جزو کا استعمال کریں، RSI اشارے کو یکجا کریں تاکہ مارکیٹ کی زیادہ خریدی ہوئی اور زیادہ فروخت شدہ حالت کا تعین کریں، رجحان کی حرکی توانائی کی تبدیلیوں کی نشاندہی کرنے کے لیے MACD اشارے کا استعمال کریں، اور کیپچر کریں۔ ہائی ٹائم پیریڈ کے RSI اور MACD ڈائیورژن کے ذریعے ممکنہ رجحانات۔ اس کے علاوہ، حکمت عملی EMA50 اور EMA100 کی کراس تصدیق کے ساتھ ساتھ EMA200 کو مرکزی رجحان کے فلٹر کے طور پر بھی متعارف کراتی ہے، اس طرح ایک کثیر سطحی لین دین کی تصدیق کا نظام تشکیل دیتا ہے۔
یہ حکمت عملی متعدد تکنیکی اشارے کے مربوط تعاون کے ذریعے نسبتاً مکمل تجارتی نظام بناتی ہے۔ حکمت عملی کا فائدہ اس کے کثیر جہتی سگنل کی تصدیق کے طریقہ کار میں ہے، لیکن اسے پیرامیٹر کی اصلاح اور مارکیٹ کی موافقت میں بھی چیلنجز کا سامنا ہے۔ تجویز کردہ اصلاحی سمت کے ذریعے، حکمت عملی سے توقع کی جاتی ہے کہ وہ اپنی مضبوطی کو برقرار رکھتے ہوئے مختلف مارکیٹ کے ماحول میں اپنی کارکردگی کو مزید بہتر بنائے گی۔
/*backtest
start: 2024-01-17 00:00:00
end: 2025-01-16 00:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/
//@version=6
strategy("Ichimoku + RSI + MACD + HTF Divergence + EMA Cross Strategy", overlay=true)
// تنظیمات تایمفریم بالاتر
htf_timeframe = input.timeframe("D", title="تایمفریم بالاتر")
// تنظیمات پارامترهای ایچیموکو
tenkan_period = input(9, title="Tenkan Sen Period")
kijun_period = input(26, title="Kijun Sen Period")
senkou_span_b_period = input(52, title="Senkou Span B Period")
displacement = input(26, title="Displacement")
// محاسبه خطوط ایچیموکو
tenkan_sen = (ta.highest(high, tenkan_period) + ta.lowest(low, tenkan_period)) / 2
kijun_sen = (ta.highest(high, kijun_period) + ta.lowest(low, kijun_period)) / 2
senkou_span_a = (tenkan_sen + kijun_sen) / 2
senkou_span_b = (ta.highest(high, senkou_span_b_period) + ta.lowest(low, senkou_span_b_period)) / 2
chikou_span = close // قیمت بسته شدن فعلی
// رسم خطوط ایچیموکو
plot(tenkan_sen, color=color.blue, title="Tenkan Sen")
plot(kijun_sen, color=color.red, title="Kijun Sen")
plot(senkou_span_a, offset=displacement, color=color.green, title="Senkou Span A")
plot(senkou_span_b, offset=displacement, color=color.orange, title="Senkou Span B")
plot(chikou_span, offset=-displacement, color=color.purple, title="Chikou Span")
// رنگآمیزی ابر ایچیموکو
fill(plot(senkou_span_a, offset=displacement, color=color.green, title="Senkou Span A"), plot(senkou_span_b, offset=displacement, color=color.orange, title="Senkou Span B"), color=senkou_span_a > senkou_span_b ? color.new(color.green, 90) : color.new(color.red, 90), title="Cloud")
// تنظیمات RSI
rsi_length = input(14, title="RSI Length")
rsi_overbought = input(70, title="RSI Overbought Level")
rsi_oversold = input(30, title="RSI Oversold Level")
// محاسبه RSI
rsi_value = ta.rsi(close, rsi_length)
// تنظیمات MACD
fast_length = input(12, title="MACD Fast Length")
slow_length = input(26, title="MACD Slow Length")
signal_smoothing = input(9, title="MACD Signal Smoothing")
// محاسبه MACD
[macd_line, signal_line, hist_line] = ta.macd(close, fast_length, slow_length, signal_smoothing)
// شناسایی واگراییها در تایمفریم بالاتر
f_find_divergence(src, lower, upper) =>
var int divergence = na // تعریف نوع متغیر بهصورت صریح
if (src >= upper and src[1] < upper)
divergence := 1 // واگرایی نزولی
else if (src <= lower and src[1] > lower)
divergence := -1 // واگرایی صعودی
divergence
// محاسبه RSI و MACD در تایمفریم بالاتر
htf_rsi_value = request.security(syminfo.tickerid, htf_timeframe, rsi_value)
htf_macd_line = request.security(syminfo.tickerid, htf_timeframe, macd_line)
// شناسایی واگراییها در تایمفریم بالاتر
htf_rsi_divergence = f_find_divergence(htf_rsi_value, rsi_oversold, rsi_overbought)
htf_macd_divergence = f_find_divergence(htf_macd_line, 0, 0)
// فیلتر روند با EMA 200
ema_200 = ta.ema(close, 200)
// اضافه کردن EMA 50 و 100
ema_50 = ta.ema(close, 50)
ema_100 = ta.ema(close, 100)
// کراسهای EMA
ema_cross_up = ta.crossover(ema_50, ema_100) // کراس صعودی EMA 50 و 100
ema_cross_down = ta.crossunder(ema_50, ema_100) // کراس نزولی EMA 50 و 100
// شرایط ورود و خروج
long_condition = (close > senkou_span_a and close > senkou_span_b) and // قیمت بالای ابر
(rsi_value > 50) and // RSI بالای 50
(macd_line > signal_line) and // MACD خط سیگنال را قطع کرده
(htf_rsi_divergence == -1 or htf_macd_divergence == -1) and // واگرایی صعودی در تایمفریم بالاتر
(close > ema_200) and // قیمت بالای EMA 200
(ema_cross_up) // کراس صعودی EMA 50 و 100
short_condition = (close < senkou_span_a and close < senkou_span_b) and // قیمت زیر ابر
(rsi_value < 50) and // RSI زیر 50
(macd_line < signal_line) and // MACD خط سیگنال را قطع کرده
(htf_rsi_divergence == 1 or htf_macd_divergence == 1) and // واگرایی نزولی در تایمفریم بالاتر
(close < ema_200) and // قیمت زیر EMA 200
(ema_cross_down) // کراس نزولی EMA 50 و 100
// نمایش نقاط ورود در چارت
plotshape(series=long_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", size=size.small)
plotshape(series=short_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", size=size.small)
// اجرای استراتژی
if (long_condition)
strategy.entry("Long", strategy.long)
if (short_condition)
strategy.entry("Short", strategy.short)