
یہ حکمت عملی ای-منی ایس اینڈ پی 500 فیوچر ((ای ایس) پر لاگو ایک تعاقب روکنے کی حکمت عملی ہے۔ اس میں 10 دن کا اے ٹی آر بطور حوالہ استعمال کیا جاتا ہے ، جس میں 3 گنا اے ٹی آر کو روکنے کی حد کے طور پر استعمال کیا جاتا ہے ، جس میں کثیر سر اور خالی سر کی روک تھام کی لائن قائم کی جاتی ہے۔ حکمت عملی اے ٹی آر لائن کی سمت میں تبدیلی کے ذریعے رجحان کا فیصلہ کرتی ہے ، اور رجحان کے موڑ کے نقطہ پر ایک انٹری سگنل پیدا کرتی ہے۔ ایک بار جب یہ داخل ہوتا ہے تو ، یہ اسٹاپ لائن کو حقیقی وقت میں ایڈجسٹ کرتا ہے ، جس سے اسٹاپ لائن قیمت کے ساتھ چلتی ہے ، منافع کی حفاظت ہوتی ہے۔
اس حکمت عملی میں hl2 کو بطور قیمت کا ذریعہ استعمال کیا گیا ہے۔ پہلے 10 دن کے اے ٹی آر کا حساب لگائیں اور صارف کو یہ انتخاب کرنے دیں کہ آیا اے ٹی آر کا حساب لگانے کے لئے ایس ایم اے کا استعمال کریں یا اے ٹی آر فنکشن کو بلٹ ان کریں۔ اے ٹی آر کا حساب لگانے کے بعد ، اوپر اور نیچے کی طرف تین گنا اے ٹی آر شامل کریں ، جس کی حد ہے۔ یہ دونوں حدیں اسٹاپ نقصان کی لکیر ہیں۔
رجحان کا تعین کرنے کا طریقہ یہ ہے کہ ، جب قیمت اوپری سرحد سے تجاوز کرتی ہے تو ، یہ ایک ہیڈ ہے؛ جب قیمت نیچے کی سرحد سے گرتی ہے تو ، یہ ایک ہیڈ ہے۔ جب قیمت دوبارہ رینج میں واپس آتی ہے تو ، رجحان کی تبدیلی کی تصدیق کی جاتی ہے۔ اس وقت ، اگر زیادہ سے زیادہ گھومنے سے ، ایک ہیڈ انٹری سگنل پیدا کریں۔ اگر زیادہ سے زیادہ گھومنے سے ، ایک ہیڈ انٹری سگنل پیدا کریں۔
داخلہ کے بعد ، کثیر سر اسٹاپ لائن کو اوپری سرحد کے نیچے 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)