یہ حکمت عملی
حکمت عملی اسٹاپ نقصان کی قیمت مقرر کرنے کے لئے اے ٹی آر اشارے کا استعمال کرتی ہے۔ اے ٹی آر مارکیٹ کی اتار چڑھاؤ کی عکاسی کرتا ہے اور متحرک طور پر اسٹاپ نقصان کا فاصلہ طے کرنے کے لئے استعمال کیا جاسکتا ہے۔ حکمت عملی صارف کے ان پٹ اے ٹی آر مدت اور ضارب کی بنیاد پر اے ٹی آر ویلیو کا حساب لگاتی ہے ، اور ضارب سے ضرب شدہ اے ٹی آر ویلیو کو اسٹاپ نقصان کے فاصلے کے طور پر استعمال کرتی ہے۔ خاص طور پر ، اے ٹی آر ٹریلنگ اسٹاپ حساب کتاب کا فارمولا یہ ہے:
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 ، بہترین پیرامیٹر مجموعہ تلاش کرنے کے لئے اے ٹی آر مدت اور ضرب کو بہتر بنایا جاسکتا ہے۔
ایک اور خطرہ غیر مناسب معیاری انحراف چینل پیرامیٹرز ہے جس کی وجہ سے بہت زیادہ / کم انٹری فریکوئنسی ہوتی ہے۔ پیرامیٹرز کو زیادہ سے زیادہ تلاش کرنے کے لئے بہتر بنایا جاسکتا ہے۔
حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
بہتر سٹاپ نقصان اثر حاصل کرنے کے لئے ATR مدت اور ضارب کو بہتر بنائیں.
بہتر انٹری سگنل کے لئے معیاری انحراف چینل پیرامیٹرز کو بہتر بنائیں.
فلٹرنگ کے لئے دیگر اشارے شامل کریں، جیسے چلتی اوسط، موم بتیوں کے پیٹرن وغیرہ، رجحان کی سمت کا فیصلہ کرنے اور منافع کو بہتر بنانے میں مدد کرنے کے لئے.
داخلہ اور باہر نکلنے کی منطق کو بہتر بنائیں، مثال کے طور پر کھلی پوزیشنوں کو صرف موم بتی کے پیٹرن کی تصدیق کے بعد جب قیمت چینل بینڈ تک پہنچ جاتی ہے.
یہ حکمت عملی اے ٹی آر اشارے کی بنیاد پر سٹاپ نقصان کے بعد رجحان کو حاصل کرتی ہے اور انٹری سگنلز کے لئے معیاری انحراف چینل کا استعمال کرتی ہے۔ اس کے فوائد رجحان کی تجارت کے لئے اچھی رسک کنٹرول کی صلاحیت میں ہیں۔ خطرات اور بہتری کا بھی واضح تجزیہ کیا جاتا ہے۔ یہ حکمت عملی مزید جانچ اور اصلاح کے قابل ہے اور اس کی عملی تجارتی قدر ہے۔
/*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)