ملٹی ٹائم پیریڈ سپر ٹرینڈ ٹرینڈ ٹریڈنگ حکمت عملی کا متحرک مجموعہ الگورتھم

ATR MTF EMA RSI
تخلیق کی تاریخ: 2025-01-06 16:38:12 آخر میں ترمیم کریں: 2025-01-06 16:38:12
کاپی: 2 کلکس کی تعداد: 482
1
پر توجہ دیں
1617
پیروکار

ملٹی ٹائم پیریڈ سپر ٹرینڈ ٹرینڈ ٹریڈنگ حکمت عملی کا متحرک مجموعہ الگورتھم

جائزہ

حکمت عملی ملٹی ٹائم فریم سپر ٹرینڈ اشارے پر مبنی نظام کی پیروی کرنے والا ایک موافق رجحان ہے۔ یہ تین مختلف ادوار سے Supertrend سگنلز کو یکجا کر کے ایک جامع رجحان کی شناخت کا فریم ورک بناتا ہے: 15 منٹ، 5 منٹ اور 2 منٹ۔ حکمت عملی وقت کے فلٹرز کا استعمال کرتی ہے تاکہ یہ یقینی بنایا جا سکے کہ یہ صرف انتہائی فعال تجارتی اوقات کے دوران چلتا ہے، اور رات بھر کے خطرے سے بچنے کے لیے دن کے اختتام پر پوزیشنیں خود بخود بند ہو جاتی ہیں۔

حکمت عملی کا اصول

حکمت عملی کا بنیادی مقصد متعدد اوقات میں رجحان کی مستقل مزاجی کے ذریعے تجارتی سگنلز کی تصدیق کرنا ہے۔ خاص طور پر:

  1. سپر ٹرینڈ لائن کا حساب ATR پیریڈ اور ضرب عنصر کا استعمال کرتے ہوئے ہر ٹائم پیریڈ کے لیے کیا جاتا ہے۔
  2. تینوں ٹائم فریموں (قیمت سپر ٹرینڈ لائن سے اوپر ہے) پر تیزی کے اشارے ظاہر ہونے پر خرید کو متحرک کیا جاتا ہے۔
  3. فروخت اس وقت شروع ہوتی ہے جب قیمت 5 منٹ کی سپر ٹرینڈ لائن سے نیچے آجاتی ہے یا تجارتی دن کے اختتام پر پہنچ جاتی ہے۔
  4. ٹائم زون اور ٹریڈنگ سیشن فلٹر (پہلے سے طے شدہ 09:30-15:30) ترتیب دے کر تجارتی اوقات کو کنٹرول کریں۔

اسٹریٹجک فوائد

  1. کثیر جہتی رجحان کی تصدیق سگنل کی وشوسنییتا کو بہتر بناتی ہے اور مؤثر طریقے سے غلط کامیابیوں کے خطرے کو کم کرتی ہے۔
  2. اڈاپٹیو سپر ٹرینڈ پیرامیٹر سیٹنگز حکمت عملی کو مختلف مارکیٹ کے اتار چڑھاؤ کے ماحول کے مطابق ڈھالنے کے قابل بناتی ہیں۔
  3. سخت ٹائم مینجمنٹ میکانزم غیر موثر تجارتی ادوار سے مداخلت سے بچتا ہے۔
  4. واضح بصری انٹرفیس ہر وقت کے رجحان کی حیثیت کو ظاہر کرتا ہے۔
  5. لچکدار پوزیشن مینجمنٹ سسٹم فیصد کنفیگریشن کو سپورٹ کرتا ہے۔

اسٹریٹجک رسک

  1. ایک طرف اور اتار چڑھاؤ والے بازار میں، بہت زیادہ تجارتی سگنلز پیدا ہو سکتے ہیں، جس سے لین دین کی لاگت میں اضافہ ہو سکتا ہے۔
  2. متعدد فلٹرنگ حالات کے نتیجے میں کچھ ممکنہ طور پر منافع بخش مواقع ضائع ہو سکتے ہیں۔
  3. پیرامیٹر کی اصلاح پر منحصر ہے، اور مارکیٹ کے مختلف ماحول میں پیرامیٹر ایڈجسٹمنٹ کی ضرورت پڑ سکتی ہے۔
  4. کمپیوٹیشنل پیچیدگی زیادہ ہے اور پروگرام پر عمل درآمد کی کارکردگی میں مسائل ہو سکتے ہیں۔

حکمت عملی کی اصلاح کی سمت

  1. مارکیٹ کے حالات کے مطابق سپر ٹرینڈ پیرامیٹرز کو متحرک طور پر ایڈجسٹ کرنے کے لیے ایک اتار چڑھاؤ کے موافق میکانزم متعارف کروائیں۔
  2. رجحان کے فیصلے کی درستگی کو بہتر بنانے کے لیے حجم کی تصدیق کے اشارے شامل کریں۔
  3. بہترین تجارتی اوقات کی خود بخود شناخت کرنے کے لیے ذہین ٹائم فلٹرنگ الگورتھم تیار کریں۔
  4. زیادہ نفیس رسک کنٹرول حاصل کرنے کے لیے پوزیشن مینجمنٹ الگورتھم کو بہتر بنائیں۔
  5. مارکیٹ کے ماحول کی درجہ بندی کا ماڈیول شامل کریں اور مختلف مارکیٹ کی خصوصیات کی بنیاد پر مختلف حکمت عملیوں کو اپنایں۔

خلاصہ کریں۔

یہ حکمت عملی ملٹی ٹائم پیریڈ ٹرینڈ تجزیہ اور ایک سخت رسک کنٹرول سسٹم کے ذریعے ایک مضبوط تجارتی نظام تیار کرتی ہے۔ اگرچہ اصلاح کے لیے کچھ گنجائش موجود ہے، لیکن اس کی بنیادی منطق ٹھوس اور مزید ترقی اور حقیقی دنیا کے اطلاق کے لیے موزوں ہے۔ نظام کا ماڈیولر ڈیزائن مستقبل میں توسیع کے لیے ایک اچھی بنیاد بھی فراہم کرتا ہے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Multi-Timeframe Supertrend Strategy", 
         overlay=true, 
         shorttitle="MTF Supertrend TF", 
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=100, 
         initial_capital=50000, 
         currency=currency.USD)

// === Input Parameters === //
atrPeriod = input.int(title="ATR Period", defval=10, minval=1)
factor = input.float(title="Factor", defval=3.0, step=0.1)

// === Time Filter Parameters === //
// Define the trading session using input.session
// Format: "HHMM-HHMM", e.g., "0930-1530"
sessionInput = input("0930-1530", title="Trading Session")

// Specify the timezone (e.g., "Europe/Istanbul")
// Refer to the list of supported timezones: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
timezoneInput = input.string("Europe/Istanbul", title="Timezone", tooltip="Specify a valid IANA timezone (e.g., 'Europe/Istanbul', 'America/New_York').")

// === Calculate Supertrend for Different Timeframes === //
symbol = syminfo.tickerid

// 15-Minute Supertrend
[st_15m, dir_15m] = request.security(symbol, "15", ta.supertrend(factor, atrPeriod), lookahead=barmerge.lookahead_off)

// 5-Minute Supertrend
[st_5m, dir_5m] = request.security(symbol, "5", ta.supertrend(factor, atrPeriod), lookahead=barmerge.lookahead_off)

// 2-Minute Supertrend
[st_2m, dir_2m] = request.security(symbol, "2", ta.supertrend(factor, atrPeriod), lookahead=barmerge.lookahead_off)

// === Current Timeframe Supertrend === //
[st_current, dir_current] = ta.supertrend(factor, atrPeriod)

// === Time Filter: Check if Current Bar is Within the Trading Session === //
in_session = true

// === Define Trend Directions Based on Supertrend === //
is_up_15m = close > st_15m
is_up_5m  = close > st_5m
is_up_2m  = close > st_2m
is_up_current = close > st_current

// === Buy Condition === //
buyCondition = is_up_15m and is_up_5m and is_up_2m and is_up_current and in_session and strategy.position_size == 0

// === Sell Conditions === //
// 1. Price falls below the 5-minute Supertrend during trading session
sellCondition1 = close < st_5m

// 2. End of Trading Day: Sell at the close of the trading session
is_new_day = ta.change(time("D"))
sellCondition2 = not in_session and is_new_day

// Combined Sell Condition: Only if in Position
sellSignal = (sellCondition1 and in_session) or sellCondition2
sellCondition = sellSignal and strategy.position_size > 0

// === Execute Trades === //
if (buyCondition)
    strategy.entry("Buy", strategy.long)

if (sellCondition)
    strategy.close("Buy")

// === Plot Supertrend Lines === //
// Plotting current timeframe Supertrend
plot(st_current, title="Current TF Supertrend", color=is_up_current ? color.green : color.red, linewidth=2, style=plot.style_line)

// Plotting higher timeframe Supertrend lines
plot(st_15m, title="15m Supertrend", color=is_up_15m ? color.green : color.red, linewidth=1, style=plot.style_line)
plot(st_5m, title="5m Supertrend", color=is_up_5m ? color.green : color.red, linewidth=1, style=plot.style_line)
plot(st_2m, title="2m Supertrend", color=is_up_2m ? color.green : color.red, linewidth=1, style=plot.style_line)

// === Plot Buy and Sell Signals === //
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, 
          color=color.green, style=shape.labelup, text="BUY", size=size.small)

plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, 
          color=color.red, style=shape.labeldown, text="SELL", size=size.small)

// === Optional: Background Color to Indicate Position === //
bgcolor(strategy.position_size > 0 ? color.new(color.green, 90) : na, title="In Position Background")

// === Alerts === //
// Create alerts for Buy and Sell signals
alertcondition(buyCondition, title="Buy Alert", message="Buy signal generated by MTF Supertrend Strategy with Time Filter.")
alertcondition(sellCondition, title="Sell Alert", message="Sell signal generated by MTF Supertrend Strategy with Time Filter.")