
اس حکمت عملی کا نام “ATR رجحان ٹریکنگ حکمت عملی” ہے۔ یہ ایک ٹریڈنگ حکمت عملی ہے جو اوسطا حقیقی اتار چڑھاؤ کی حد ((ATR) پر مبنی اسٹاپ نقصان کی بنیاد پر اور معیاری فاصلے کے راستے کا استعمال کرتے ہوئے مارکیٹ میں داخلے کے وقت کا تعین کرتی ہے۔ یہ حکمت عملی اسٹاک انڈیکس ، غیر ملکی کرنسی ، اجناس وغیرہ جیسے واضح رجحانات والی مالیاتی مصنوعات پر لاگو ہوتی ہے۔
اس حکمت عملی میں اے ٹی آر اشارے کا استعمال کیا جاتا ہے تاکہ قیمت کو روک سکے۔ اے ٹی آر اشارے مارکیٹ میں اتار چڑھاؤ کی عکاسی کرتے ہیں ، جس سے روکنے کا فاصلہ متحرک طور پر طے کیا جاسکتا ہے۔ حکمت عملی اے ٹی آر کی مقدار کو اے ٹی آر کے دورانیے اور ضرب کو داخل کرکے حساب کرتی ہے ، اور پھر ضرب کو روکنے کے فاصلے کے طور پر ضرب دیتی ہے۔ خاص طور پر ، اے ٹی آر اسٹاپ لائن کے حساب کتاب کا فارمولا ہے:
ATR线 = 前一日ATR线 ± nLoss(nLoss = nATRMultip * ATR值)
若收盘价 > ATR线,ATR线上调至收盘价 - nLoss
若收盘价 < ATR线,ATR线下调至收盘价 + nLoss
اس طرح ، اے ٹی آر لائنوں کو قیمتوں میں اتار چڑھاو کے مطابق متحرک طور پر ایڈجسٹ کیا جاسکتا ہے ، جس سے رجحانات کی پیروی کی روک تھام ممکن ہوسکتی ہے۔
اے ٹی آر اسٹاپ نقصان کے علاوہ ، حکمت عملی اسٹینڈرڈ ڈیفینٹ چینل کا استعمال کرتے ہوئے مارکیٹ میں داخلے کے وقت کا تعین کرتی ہے۔ اسٹینڈرڈ ڈیفینٹ چینل کا حساب کتاب یہ ہے:
中线 = ATR止损线
上轨 = 中线 + n倍标准差
下轨 = 中线 - n倍标准差
جب قیمت نیچے سے اوپر کی طرف سے وسط لائن کو توڑتی ہے تو ، زیادہ کام کریں۔ جب قیمت اوپر سے نیچے کی طرف سے وسط لائن کو توڑتی ہے تو ، خالی کریں۔
اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ اے ٹی آر اشارے کو بطور نقصان کا آلہ استعمال کیا جاسکتا ہے ، جس سے مارکیٹ میں اتار چڑھاؤ کی حد کے مطابق نقصان کی فاصلے کو متحرک طور پر ایڈجسٹ کیا جاسکتا ہے ، رجحانات کو روکنے اور خطرے کو مؤثر طریقے سے کنٹرول کیا جاسکتا ہے۔
اس کے علاوہ، سٹینڈرڈ بیعانہ چینل کے ساتھ مارکیٹ میں آنے کے وقت کا تعین کرنے کے ساتھ، آپ کو قیمتوں میں معمولی اتار چڑھاؤ کی وجہ سے اکثر پوزیشن کھولنے سے بچنے سے بچنے سے بچنے کے لئے.
اس حکمت عملی کا بنیادی خطرہ یہ ہے کہ جب اسٹاپ فاصلہ بہت لمبا ہو تو خطرہ کو مؤثر طریقے سے کنٹرول نہیں کیا جاسکتا ہے۔ جب اسٹاپ فاصلہ ایک گھنٹہ سے زیادہ ہوتا ہے تو مارکیٹ کے شور سے متاثر ہوتا ہے۔ اس خطرے کے ل AT ، اے ٹی آر سائیکل اور اے ٹی آر ضرب کو ایڈجسٹ کیا جاسکتا ہے تاکہ بہترین پیرامیٹرز کا مجموعہ تلاش کیا جاسکے۔
ایک اور خطرہ یہ ہے کہ معیاری انحراف چینل پیرامیٹرز کو غلط طریقے سے ترتیب دیا گیا ہے ، جس کی وجہ سے پوزیشن کھولنے کی فریکوئنسی بہت زیادہ یا بہت کم ہوسکتی ہے۔ پیرامیٹرز کو بہتر بنانے کے ذریعے زیادہ سے زیادہ پیرامیٹرز تلاش کیے جاسکتے ہیں۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
اے ٹی آر سائیکل اور ضرب کو بہتر بنائیں۔ ان دونوں پیرامیٹرز کو ایڈجسٹ کرنے سے بہتر اسٹاپ نقصان کا اثر مل سکتا ہے۔
معیاری خرابی چینل پیرامیٹرز کو بہتر بنائیں۔ چینل پیرامیٹرز کو بہتر بنائیں ، بہتر مارکیٹ میں داخل ہونے کا اثر حاصل کریں۔
دوسرے اشارے شامل کریں فلٹر کریں۔ آپ کو منتقل اوسط ، K لائن شکل ، اور اسی طرح کے اشارے شامل کرنے کی اجازت دی جاسکتی ہے ، جو رجحان کی سمت کا تعین کرنے میں معاون ہے ، اور منافع کی شرح کو بہتر بناتا ہے۔
پوزیشن کھولنے اور پوزیشن کی منطق کو بہتر بنائیں۔ جب قیمت معیاری فاصلے کے راستے کو چھوتی ہے تو ، اس کی تصدیق کے لائن کی شکل کے بعد پوزیشن کھولنے کے لئے مقرر کیا جاسکتا ہے۔
یہ حکمت عملی اے ٹی آر اشارے کی بنیاد پر رجحان سے باخبر رہنے کی روک تھام کو انجام دیتی ہے ، اور معیاری فاصلے والے راستے کی مدد سے مارکیٹ میں داخلے کے وقت کا فیصلہ کرتی ہے۔ اس حکمت عملی کا فائدہ یہ ہے کہ اس میں روک تھام کے خطرے پر قابو پانے کا اثر اچھا ہے ، جو رجحان کی تجارت کے لئے موزوں ہے۔ خطرے اور اصلاح کی سمت کا بھی واضح تجزیہ کیا گیا ہے۔ یہ حکمت عملی مزید جانچ اور اصلاح کے قابل ہے ، جس کی اصل ٹریڈنگ قیمت ہے۔
/*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)