وسائل لوڈ ہو رہے ہیں... لوڈنگ...

متحرک حرکت پذیر اوسط ٹریکنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-11-24 16:59:25
ٹیگز:

img

جائزہ

اس حکمت عملی کا بنیادی خیال رجحان کی پیروی کے لئے متحرک حرکت پذیر اوسط کا استعمال کرنا ، اسٹاپ نقصان اور منافع حاصل کرنا ، اور طویل / مختصر سگنل فیصلے کے لئے ہیکن آشی موم بتی کی تکنیک کو جوڑنا ہے۔ اے ٹی آر اشارے کا استعمال متحرک حرکت پذیر اوسط اور اسٹاپ نقصان کی پوزیشن کا حساب کرنے کے لئے کیا جاتا ہے۔

اصول

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

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

فوائد کا تجزیہ

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

خطرات اور حل

اس حکمت عملی کا بنیادی خطرہ یہ ہے کہ قیمت میں نمایاں طور پر فرق ہوسکتا ہے ، جب اسٹاپ نقصان کو نشانہ بنایا جاتا ہے تو غلط سگنل پیدا ہوجاتا ہے۔ نیز ، غیر مناسب حالت کی ترتیبات سے زیادہ کثرت سے تجارت ہوسکتی ہے۔

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

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

حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:

  1. پیرامیٹرز کے بہترین مجموعے تلاش کرنے کے لئے مختلف قسم کے اور دورانیے کے چلتے ہوئے اوسط کی جانچ کریں

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

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

  4. خطرہ انعام تناسب کو بہتر بنانے کے لئے سٹاپ نقصان / منافع حاصل کرنے کے اقدار کو ایڈجسٹ کریں

نتیجہ

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


/*backtest
start: 2022-11-23 00:00:00
end: 2023-11-05 05:20:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT","stocks":0}]
*/

//@version=5
strategy(title='UT Bot v5', overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
//CREDITS to HPotter for the orginal code. The guy trying to sell this as his own is a scammer lol. 
//Edited and converted to @version=5 by SeaSide420 for Paperina
// Inputs
AllowBuy = input(defval=true, title='Allow Buy?')
AllowSell = input(defval=false, title='Allow Sell?')
h = input(false, title='Signals from Heikin Ashi Candles')
//revclose = input(defval=true, title='Close when reverse signal?')
Price = input(defval=open, title='Price Source (recommended OPEN to avoid repainting)')
smoothing = input.string(title="Moving Average Type", defval="HMA", options=["SMA", "EMA", "WMA", "HMA"])
MA_Period = input(2, title='This changes the MAPeriod')
a = input.float(1, title='This changes the sensitivity',step=0.1)
c = input(11, title='ATR Period')
TakeProfit = input.int(defval=50000, title='Take Profit ($)', minval=1)
StopLoss = input.int(defval=50000, title='Stop Loss ($)', minval=1)
xATR = ta.atr(c)
nLoss = a * xATR
src = h ? request.security(ticker.heikinashi(syminfo.tickerid), timeframe.period, Price, lookahead=barmerge.lookahead_off) : Price
xATRTrailingStop = 0.0
iff_1 = src > nz(xATRTrailingStop[1], 0) ? src - nLoss : src + nLoss
iff_2 = src < nz(xATRTrailingStop[1], 0) and src[1] < nz(xATRTrailingStop[1], 0) ? math.min(nz(xATRTrailingStop[1]), src + nLoss) : iff_1
xATRTrailingStop := src > nz(xATRTrailingStop[1], 0) and src[1] > nz(xATRTrailingStop[1], 0) ? math.max(nz(xATRTrailingStop[1]), src - nLoss) : iff_2
pos = 0
iff_3 = src[1] > nz(xATRTrailingStop[1], 0) and src < nz(xATRTrailingStop[1], 0) ? -1 : nz(pos[1], 0)
pos := src[1] < nz(xATRTrailingStop[1], 0) and src > nz(xATRTrailingStop[1], 0) ? 1 : iff_3
xcolor = pos == -1 ? color.red : pos == 1 ? color.green : color.blue
ma_function(src, MA_Period) =>
    switch smoothing
        "SMA" => ta.sma(src, MA_Period)
        "EMA" => ta.ema(src, MA_Period)
        "WMA" => ta.wma(src, MA_Period)
        => ta.hma(src, MA_Period)
thema = ma_function(src, MA_Period)
above = ta.crossover(thema, xATRTrailingStop)
below = ta.crossover(xATRTrailingStop, thema)
buy = src > xATRTrailingStop and above
sell = src < xATRTrailingStop and below
barbuy = src > xATRTrailingStop
barsell = src < xATRTrailingStop
plot(thema,title="The M.A.",color=color.green,linewidth=2)
plot(xATRTrailingStop,title="The M.A.",color=color.red,linewidth=2)
plotshape(buy,  title = "Buy",  text = "Buy",  style = shape.labelup,   location = location.belowbar, color= color.green, textcolor = color.white, size = size.tiny)
plotshape(sell, title = "Sell", text = "Sell", style = shape.labeldown, location = location.abovebar, color= color.red,   textcolor = color.white, size = size.tiny)
barcolor(barbuy ? color.green : na)
barcolor(barsell ? color.red : na)
strategy.close_all(when=strategy.openprofit>TakeProfit,alert_message="Close- TakeProfit", comment = "TP")
strategy.close_all(when=strategy.openprofit<StopLoss-(StopLoss*2),alert_message="Close- StopLoss", comment = "SL")
strategy.close("buy", when =  sell and AllowSell==false , comment = "close buy")
strategy.close("sell", when =  buy and AllowBuy==false, comment = "close sell")
strategy.entry("buy", strategy.long, when = buy and AllowBuy)
strategy.entry("sell", strategy.short, when = sell and AllowSell)

مزید