یہ حکمت عملی ای منی ایس اینڈ پی 500 فیوچر (ای ایس) پر لاگو ہونے والی ٹریلنگ اسٹاپ حکمت عملی ہے۔ یہ 10 دن کی اے ٹی آر کو بطور حوالہ استعمال کرتی ہے اور طویل اور مختصر اسٹاپ لائنوں کی وضاحت کے لئے اسٹاپ نقصان کی حد کو 3 گنا اے ٹی آر پر مقرر کرتی ہے۔ یہ حکمت عملی اے ٹی آر لائنوں کی سمت کی تبدیلی کے ذریعہ رجحان کا فیصلہ کرتی ہے اور رجحان کے موڑ کے مقامات پر انٹری سگنل تیار کرتی ہے۔ ایک بار داخل ہونے کے بعد ، یہ منافع کی حفاظت کرتے ہوئے ، قیمت کی نقل و حرکت کی پیروی کرنے کے لئے حقیقی وقت میں اسٹاپ نقصان کی لائنوں کو ایڈجسٹ کرے گی۔
یہ حکمت عملی قیمت کے ذریعہ hl2 استعمال کرتی ہے۔ پہلے یہ 10 دن کی ATR کا حساب لگاتی ہے ، اور صارف کو ATR کا حساب لگانے کے لئے SMA طریقہ یا بلٹ ان ATR فنکشن کا استعمال کرنے کے درمیان انتخاب کرنے دیتی ہے۔ ATR حاصل کرنے کے بعد ، یہ حد بنانے کے لئے 3 بار ATR اوپر اور نیچے جوڑتا ہے۔ دو حد کی لائنیں اسٹاپ نقصان کی لائنیں ہیں۔
رجحان کا اندازہ کرنے کا طریقہ یہ ہے کہ جب قیمت اوپری حد سے تجاوز کرتی ہے تو ، یہ لمبی ہوتی ہے۔ جب قیمت نیچے کی حد کو توڑتی ہے تو ، یہ مختصر ہوتی ہے۔ جب قیمت رینج میں واپس آجاتی ہے تو ، اس سے رجحان کی تبدیلی کی تصدیق ہوتی ہے۔ اس وقت ، اگر مختصر سے لمبی طرف موڑ دیا جائے تو ، یہ ایک لمبا انٹری سگنل پیدا کرے گا۔ اگر لمبی سے مختصر کی طرف موڑ دیا جائے تو ، یہ ایک مختصر انٹری سگنل پیدا کرے گا۔
داخل ہونے کے بعد، طویل سٹاپ نقصان لائن کو اوپر کی حد مائنس 1 ٹک پر مقرر کیا جاتا ہے، اور مختصر سٹاپ نقصان لائن کو نیچے کی حد کے علاوہ 1 ٹک پر مقرر کیا جاتا ہے، منافع کی حفاظت کے لئے پیچھے.
عام طور پر ، یہ ایک مضبوط رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ اسٹاپ نقصان کی حد کا تعین کرنے کا مسئلہ حل کرتی ہے اور اے ٹی آر کی بنیاد پر متحرک طور پر اسٹاپ کو ایڈجسٹ کرکے خطرات کو کم کرتی ہے۔ اسی وقت ، ٹریلنگ اسٹاپ منافع میں مقفل ہوتے ہیں۔ لیکن اب بھی اے ٹی آر کی مدت ، اسٹاپ الگورتھم وغیرہ جیسے پیرامیٹرز کو بہتر بنانے کی گنجائش ہے۔ مزید جانچ اور ٹیوننگ کے ساتھ ، یہ حکمت عملی اعلی استحکام کے ساتھ رجحان کی پیروی کرنے والی حکمت عملی بن سکتی ہے۔
/*backtest start: 2023-01-05 00:00:00 end: 2024-01-11 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("ATR Based Trailing Stop Strategy on ES! [v4]", overlay=true) // Given ATR study Periods = input(title="ATR Period", type=input.integer, defval=10) src = input(hl2, title="Source") Multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3.0) changeATR = input(title="Change ATR Calculation Method ?", type=input.bool, defval=true) atr2 = sma(tr, Periods) atr = changeATR ? atr(Periods) : atr2 up = src - (Multiplier * atr) up1 = nz(up[1], up) up := close[1] > up1 ? max(up, up1) : up dn = src + (Multiplier * atr) dn1 = nz(dn[1], dn) dn := close[1] < dn1 ? min(dn, dn1) : dn trend = 1 trend := nz(trend[1], trend) trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend // Entry logic based on trend change longCondition = trend == 1 and trend[1] == -1 shortCondition = trend == -1 and trend[1] == 1 if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Trailing stop loss logic // For long positions, trail 1 point below the up plot longStopPrice = up - 1 // For short positions, trail 1 point above the dn plot shortStopPrice = dn + 1 strategy.exit("Trailing Stop Long", "Long", trail_offset=longStopPrice) strategy.exit("Trailing Stop Short", "Short", trail_offset=shortStopPrice)