متعدد ٹائم فریم ٹرینڈ فالونگ ٹریڈنگ سسٹم (MTF-ATR-MACD)

EMA RSI ATR MACD MTF SL TP
تخلیق کی تاریخ: 2024-11-25 14:42:33 آخر میں ترمیم کریں: 2024-11-25 14:42:33
کاپی: 4 کلکس کی تعداد: 540
1
پر توجہ دیں
1617
پیروکار

متعدد ٹائم فریم ٹرینڈ فالونگ ٹریڈنگ سسٹم (MTF-ATR-MACD)

جائزہ

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

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

اس حکمت عملی میں ٹریڈنگ کے فیصلوں کے لیے ایک سے زیادہ سطحوں کی توثیق کا طریقہ کار استعمال کیا گیا ہے۔

  1. رجحانات کی شناخت کی پرت: رجحانات کی تبدیلیوں کو پکڑنے کے لئے 9 اور 21 ای ایم اے کے کراس کا استعمال کریں
  2. متحرک تصدیق کی پرت: MACD اشارے ((12 ، 26 ، 9) کے ذریعہ کراس اور سمت کی تصدیق کی گئی رجحان کی حرکیات
  3. زیادہ خریدنے اور زیادہ فروخت کرنے کا فلٹر: 7030 کی سطح پر فلٹر کرنے کے لئے RSI ((14) کا استعمال کریں
  4. اعلی ٹائم فریم کی تصدیق: اختیاری طور پر یومیہ لائن کی سطح ای ایم اے کو رجحان فلٹر کے طور پر استعمال کریں
  5. رسک مینجمنٹ: 1.5x اے ٹی آر کو اسٹاپ نقصان کے طور پر استعمال کریں اور 2x اے ٹی آر کو منافع بخش اہداف کے طور پر ترتیب دیں

نظام متعدد شرائط کو پورا کرنے کے بعد ہی پوزیشن کھولتا ہے: ای ایم اے کی کراسنگ ، آر ایس آئی حد سے کم ، میکڈ سمت درست ہے اور اعلی ٹائم فریم رجحان کی تصدیق .

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

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

اسٹریٹجک رسک

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

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

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

خلاصہ کریں۔

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

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

//@version=5 
strategy("Trend Following with ATR, MTF Confirmation, and MACD", overlay=true)

// Parameters
emaShortPeriod = input.int(9, title="Short EMA Period", minval=1)
emaLongPeriod = input.int(21, title="Long EMA Period", minval=1)
rsiPeriod = input.int(14, title="RSI Period", minval=1)
rsiOverbought = input.int(70, title="RSI Overbought", minval=50)
rsiOversold = input.int(30, title="RSI Oversold", minval=1)
atrPeriod = input.int(14, title="ATR Period", minval=1)
atrMultiplier = input.float(1.5, title="ATR Multiplier", minval=0.1)
takeProfitATRMultiplier = input.float(2.0, title="Take Profit ATR Multiplier", minval=0.1)

// Multi-timeframe settings
htfEMAEnabled = input.bool(true, title="Use Higher Timeframe EMA Confirmation?", inline="htf")
htfEMATimeframe = input.timeframe("D", title="Higher Timeframe", inline="htf")

// MACD Parameters
macdShortPeriod = input.int(12, title="MACD Short Period", minval=1)
macdLongPeriod = input.int(26, title="MACD Long Period", minval=1)
macdSignalPeriod = input.int(9, title="MACD Signal Period", minval=1)

// Select trade direction
tradeDirection = input.string("Both", title="Trade Direction", options=["Both", "Long", "Short"])

// Calculating indicators
emaShort = ta.ema(close, emaShortPeriod)
emaLong = ta.ema(close, emaLongPeriod)
rsiValue = ta.rsi(close, rsiPeriod)
atrValue = ta.atr(atrPeriod)

// Calculate MACD
[macdLine, macdSignalLine, _] = ta.macd(close, macdShortPeriod, macdLongPeriod, macdSignalPeriod)

// Higher timeframe EMA confirmation
htfEMALong = request.security(syminfo.tickerid, htfEMATimeframe, ta.ema(close, emaLongPeriod))

// Trading conditions
longCondition = ta.crossover(emaShort, emaLong) and rsiValue < rsiOverbought and (not htfEMAEnabled or close > htfEMALong) and macdLine > macdSignalLine
shortCondition = ta.crossunder(emaShort, emaLong) and rsiValue > rsiOversold and (not htfEMAEnabled or close < htfEMALong) and macdLine < macdSignalLine

// Plotting EMAs
plot(emaShort, title="EMA Short", color=color.green)
plot(emaLong, title="EMA Long", color=color.red)

// Plotting MACD
hline(0, "Zero Line", color=color.gray)
plot(macdLine - macdSignalLine, title="MACD Histogram", color=color.green, style=plot.style_histogram)
plot(macdLine, title="MACD Line", color=color.blue)
plot(macdSignalLine, title="MACD Signal Line", color=color.red)

// Trailing Stop-Loss and Take-Profit levels
var float trailStopLoss = na
var float trailTakeProfit = na

if (strategy.position_size > 0) // Long Position
    trailStopLoss := na(trailStopLoss) ? close - atrValue * atrMultiplier : math.max(trailStopLoss, close - atrValue * atrMultiplier)
    trailTakeProfit := close + atrValue * takeProfitATRMultiplier
    strategy.exit("Exit Long", "Long", stop=trailStopLoss, limit=trailTakeProfit, when=shortCondition)

if (strategy.position_size < 0) // Short Position
    trailStopLoss := na(trailStopLoss) ? close + atrValue * atrMultiplier : math.min(trailStopLoss, close + atrValue * atrMultiplier)
    trailTakeProfit := close - atrValue * takeProfitATRMultiplier
    strategy.exit("Exit Short", "Short", stop=trailStopLoss, limit=trailTakeProfit, when=longCondition)

// Strategy Entry
if (longCondition and (tradeDirection == "Both" or tradeDirection == "Long"))
    strategy.entry("Long", strategy.long)
    
if (shortCondition and (tradeDirection == "Both" or tradeDirection == "Short"))
    strategy.entry("Short", strategy.short)

// Plotting Buy/Sell signals
plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")

// Plotting Trailing Stop-Loss and Take-Profit levels
plot(strategy.position_size > 0 ? trailStopLoss : na, title="Long Trailing Stop Loss", color=color.red, linewidth=2, style=plot.style_line)
plot(strategy.position_size < 0 ? trailStopLoss : na, title="Short Trailing Stop Loss", color=color.green, linewidth=2, style=plot.style_line)
plot(strategy.position_size > 0 ? trailTakeProfit : na, title="Long Take Profit", color=color.blue, linewidth=2, style=plot.style_line)
plot(strategy.position_size < 0 ? trailTakeProfit : na, title="Short Take Profit", color=color.orange, linewidth=2, style=plot.style_line)