اے ٹی آر رجحان معیاری انحراف چینل پر مبنی حکمت عملی کے بعد

مصنف:چاؤ ژانگ، تاریخ: 2024-01-05 16:34:27
ٹیگز:

img

جائزہ

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

تجارتی منطق

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

ATR Line = Prior ATR Line ± nLoss (nLoss = nATRMultip * ATR value)  

If close > ATR Line, adjust ATR Line up to close - nLoss
If close < ATR Line, adjust ATR Line down to close + nLoss

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

اے ٹی آر ٹریلنگ اسٹاپ کے علاوہ ، یہ حکمت عملی انٹری سگنل کا تعین کرنے کے لئے معیاری انحراف چینل کا بھی استعمال کرتی ہے۔ معیاری انحراف چینل حساب کتاب کا فارمولا یہ ہے:

Middle Line = ATR Trailing Stop Line   
Upper Band = Middle Line + n * Standard Deviation
Lower Band = Middle Line - n * Standard Deviation

جب قیمت درمیانی لائن کو توڑتی ہے تو اوپر کی طرف طویل سفر کریں۔ جب قیمت درمیانی لائن کو توڑتی ہے تو نیچے کی طرف مختصر سفر کریں۔

فوائد

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

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

خطرات اور حل

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

ایک اور خطرہ غیر مناسب معیاری انحراف چینل پیرامیٹرز ہے جس کی وجہ سے بہت زیادہ / کم انٹری فریکوئنسی ہوتی ہے۔ پیرامیٹرز کو زیادہ سے زیادہ تلاش کرنے کے لئے بہتر بنایا جاسکتا ہے۔

بہتر مواقع

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

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

  2. بہتر انٹری سگنل کے لئے معیاری انحراف چینل پیرامیٹرز کو بہتر بنائیں.

  3. فلٹرنگ کے لئے دیگر اشارے شامل کریں، جیسے چلتی اوسط، موم بتیوں کے پیٹرن وغیرہ، رجحان کی سمت کا فیصلہ کرنے اور منافع کو بہتر بنانے میں مدد کرنے کے لئے.

  4. داخلہ اور باہر نکلنے کی منطق کو بہتر بنائیں، مثال کے طور پر کھلی پوزیشنوں کو صرف موم بتی کے پیٹرن کی تصدیق کے بعد جب قیمت چینل بینڈ تک پہنچ جاتی ہے.

خلاصہ

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


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
strategy(title="Average True Range Strategy", overlay = true)
nATRPeriod = input(11) //Hur många perioder ATR är på
nATRMultip = input(0.5) //Hur många gånger nuvarande ATR multipliceras med
xATR = atr(nATRPeriod)
nLoss = nATRMultip * xATR
xATRTrailingStop =  iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), close - nLoss),
                     iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), close + nLoss), 
                      iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss)))
pos = iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), -1,
	   iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), 1, nz(pos[1], 0))) 

stdev3 = 14*stdev(xATR, nATRPeriod)
band1 = xATRTrailingStop+stdev3 //Översta stdev bandet
band2 = xATRTrailingStop-stdev3 //Nedersta stdev bandet


// Datum och tid
FromMonth = input(defval = 8, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 18, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2013, title = "From Year", minval = 2013)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 2020, title = "To Year", minval = 2017)

start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start 
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest slut
startTimeOk()  => true
initial_capital = 100000

take = close > xATRTrailingStop

if( startTimeOk() ) and (pos == 1)
//if (pos == 1) 
    strategy.entry("Long", strategy.long, comment = "KOP")
    strategy.exit("Long", when = take)
   
if( startTimeOk() ) and (pos == -1)
//if (pos == -1)
    strategy.entry("Short", strategy.short, comment = "SALJ")
   
barcolor(pos == -1 ? red: pos == 1 ? green : blue )
plot(xATRTrailingStop, color=red, title="ATR Trailing Stop") //Mittersta linjen som är triggerlinjen för köp/sälj
plot(band1, color=red)
plot(band2, color=blue)



مزید