MACD پر مبنی کثیر ٹائم فریم ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-01-12 11:46:59
ٹیگز:

img

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

حکمت عملی کا اصول: یہ حکمت عملی رجحان کی سمت کا تعین کرنے کے لئے ایم اے سی ڈی فرق لائن اور سگنل لائن کے مابین کراس اوورز کا استعمال کرتی ہے۔ خاص طور پر ، یہ اعلی ٹائم فریموں (ڈیفالٹ 60 منٹ) میں ایم اے سی ڈی فرق اور سگنل لائنوں کا حساب لگاتی ہے۔ جب فرق لائن سگنل لائن سے اوپر عبور کرتی ہے تو ، خرید کا سگنل تیار ہوتا ہے۔ جب نیچے عبور ہوتا ہے تو ، مجموعی رجحان کی سمت کی تصدیق کے لئے فروخت کا سگنل تیار ہوتا ہے۔

اس کے بعد حکمت عملی کم ٹائم فریم (موجودہ مدت) میں ایم اے سی ڈی کا حساب لگاتی ہے اور جب فرق اور سگنل لائنوں کے مابین کراس اوور ہوتے ہیں تو پوزیشنوں میں داخل ہوتی ہے۔ لہذا ٹرینڈ کی سمت کا فیصلہ کرنے کے لئے اعلی ٹائم فریم استعمال کیے جاتے ہیں اور مخصوص انٹری پوائنٹس تلاش کرنے کے لئے کم استعمال ہوتے ہیں۔

اس حکمت عملی میں رجحان کا اندازہ کرنے میں مدد کے لئے ایم اے سی ڈی ہسٹوگرام کا رنگ تبدیل کرنا بھی استعمال کیا جاتا ہے۔ سبز سلاخیں ایک اپ ٹرینڈ کی نشاندہی کرتی ہیں جبکہ سرخ سلاخیں ایک ڈاؤن ٹرینڈ کی نشاندہی کرتی ہیں۔

فائدہ تجزیہ:

  1. ملٹی ٹائم فریم ڈیزائن اعلی TF میں رجحان کی تصدیق کرتا ہے اور کم TF میں اندراجات تلاش کرتا ہے، نظام کی کارکردگی کو بہتر بناتا ہے.

  2. داخلہ اور باہر نکلنے کا تعین کرنے کے لئے MACD کراس اوور کا استعمال کرتا ہے، قابل اعتماد سگنل کے لئے بہتر پیرامیٹرز.

  3. ہسٹوگرام کا رنگ موجودہ رجحان کی حیثیت کا تعین کرنے میں مدد کرتا ہے ، فیصلے کی درستگی کو بہتر بناتا ہے۔

  4. خود بخود رجحانات کو ٹریک کرتا ہے، جذباتی غلطیوں کو کم کرتا ہے۔

خطرے کا تجزیہ:

  1. درمیانی اور طویل مدتی رجحانات کے لئے رجحان کی پیروی کرنے والے اشارے کے طور پر، ایم اے سی ڈی مختصر مدت میں غلط سگنل پیدا کرسکتا ہے جس سے غیر ضروری نقصانات ہوتے ہیں۔

  2. ملٹی ٹائم فریم حکمت عملیوں کو بہتر بنانے اور جانچنے میں مشکل ہے کیونکہ متعدد ادوار کو بیک وقت غور کرنے کی ضرورت ہے۔

  3. کوئی سٹاپ نقصان مقرر نہیں کیا گیا ہے جس سے بڑے نقصان کا خطرہ پیدا ہوتا ہے۔

اصلاح کی ہدایات:

  1. بہترین مجموعے تلاش کرنے کے لئے MACD پیرامیٹرز کو بہتر بنائیں.

  2. زیادہ سے زیادہ نقصان کو محدود کرنے کے لئے سٹاپ نقصان شامل کریں.

  3. سگنل کے معیار کو بہتر بنانے کے لئے دیگر فلٹرز کا جائزہ لیں.

  4. بہترین میچ تلاش کرنے کے لیے مختلف ٹائم فریم کے مجموعے آزمائیں۔

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


/*backtest
start: 2023-12-12 00:00:00
end: 2024-01-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@author : SudeepBisht
//@version=2
strategy(title="SB_CM_MacD_Ult_MTF", shorttitle="SB_CM_Ult_MacD_MTF")
source = close
useCurrentRes = input(true, title="Use Current Chart Resolution?")
resCustom = input(title="Use Different Timeframe? Uncheck Box Above",  defval="60")
smd = input(true, title="Show MacD & Signal Line? Also Turn Off Dots Below")
sd = input(true, title="Show Dots When MacD Crosses Signal Line?")
sh = input(true, title="Show Histogram?")
macd_colorChange = input(true,title="Change MacD Line Color-Signal Line Cross?")
hist_colorChange = input(true,title="MacD Histogram 4 Colors?")

res = useCurrentRes ? timeframe.period : resCustom

fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)

fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)

macd = fastMA - slowMA
signal = sma(macd, signalLength)
hist = macd - signal

outMacD = request.security(syminfo.tickerid, res, macd)
outSignal = request.security(syminfo.tickerid, res, signal)
outHist = request.security(syminfo.tickerid, res, hist)

histA_IsUp = outHist > outHist[1] and outHist > 0
histA_IsDown = outHist < outHist[1] and outHist > 0
histB_IsDown = outHist < outHist[1] and outHist <= 0
histB_IsUp = outHist > outHist[1] and outHist <= 0

//MacD Color Definitions
macd_IsAbove = outMacD >= outSignal
macd_IsBelow = outMacD < outSignal

plot_color = hist_colorChange ? histA_IsUp ? aqua : histA_IsDown ? blue : histB_IsDown ? red : histB_IsUp ? maroon :yellow :gray
macd_color = macd_colorChange ? macd_IsAbove ? lime : red : red
signal_color = macd_colorChange ? macd_IsAbove ? yellow : yellow : lime

circleYPosition = outSignal
 
plot(smd and outMacD ? outMacD : na, title="MACD", color=macd_color, linewidth=4)
plot(smd and outSignal ? outSignal : na, title="Signal Line", color=signal_color, style=line ,linewidth=2)
plot(sh and outHist ? outHist : na, title="Histogram", color=plot_color, style=histogram, linewidth=4)
plot(sd and cross(outMacD, outSignal) ? circleYPosition : na, title="Cross", style=circles, linewidth=4, color=macd_color)
// hline(0, '0 Line', linestyle=solid, linewidth=2, color=white)

macd_chk=smd and outMacD ? outMacD : na
checker=smd and outSignal ? outSignal : na
if (crossover(macd_chk,checker))
    strategy.entry("BBandLE", strategy.long, comment="BBandLE")

if (crossunder(macd_chk, checker))
    strategy.entry("BBandSE", strategy.short, comment="BBandSE")


مزید