فالو لائن حکمت عملی بولنگر بینڈ اور اوسط حقیقی رینج (اے ٹی آر) پر مبنی رجحان ٹریکنگ کی حکمت عملی ہے۔ جب قیمت بولنگر بینڈ کے اوپری بینڈ سے اوپر ہوتی ہے تو اسے اوپر منتقل کرکے اور جب قیمت بولنگر بینڈ کے نچلے بینڈ سے نیچے ہوتی ہے تو اسے نیچے منتقل کرکے رجحان کو ٹریک کرنے کے لئے رجحان فیصلے کی لائن کو متحرک طور پر ایڈجسٹ کرتی ہے۔
حکمت عملی سب سے پہلے بولنگر بینڈ کے اوپری اور نچلے بینڈ کے ساتھ ساتھ اوسط حقیقی رینج کا حساب لگاتی ہے۔ پھر یہ فیصلہ کرتی ہے کہ کیا قیمت بولنگر بینڈ کے اوپری بینڈ سے اوپر یا نچلے بینڈ سے نیچے ٹوٹتی ہے۔
جب قیمت اوپری بینڈ سے تجاوز کرتی ہے ، اگر اے ٹی آر فلٹر فعال ہے تو ، رجحان لائن کو کم سے کم قیمت سے کم اے ٹی آر پر مقرر کیا جاتا ہے۔ اگر اے ٹی آر فلٹر غیر فعال ہے تو ، رجحان لائن براہ راست کم سے کم قیمت پر مقرر کی جاتی ہے۔
جب قیمت نچلے بینڈ سے نیچے ہوتی ہے ، اگر اے ٹی آر فلٹر فعال ہے تو ، رجحان لائن اعلی ترین قیمت کے علاوہ اے ٹی آر پر مقرر کی جاتی ہے۔ اگر اے ٹی آر فلٹر غیر فعال ہے تو ، رجحان لائن براہ راست اعلی ترین قیمت پر مقرر کی جاتی ہے۔
اس طرح، رجحان فیصلے کی لائن کو رجحان کو ٹریک کرنے کے لئے بولنگر بینڈ کی قیمت کے وقفے پر مبنی متحرک طور پر ایڈجسٹ کیا جا سکتا ہے.
جب موجودہ رجحان کی لکیر پچھلی سے زیادہ ہوتی ہے تو ، یہ ایک بڑھتی ہوئی رجحان کی نشاندہی کرتی ہے۔ جب موجودہ رجحان کی لکیر پچھلی سے کم ہوتی ہے تو ، یہ نیچے کی رجحان کی نشاندہی کرتی ہے۔
اس کے بعد ٹریڈنگ سگنل تیار کیے جا سکتے ہیں جس کی بنیاد پر یہ فیصلہ کیا جا سکتا ہے کہ ٹریڈنگ طویل یا مختصر ہوگی۔
پیرامیٹر ٹوننگ کے ذریعے کچھ خطرات کو کم کیا جاسکتا ہے ، اسٹاپ نقصان متعارف کرایا جاسکتا ہے۔ بریک آؤٹ کی موزونیت کو بہتر بنانے کے لئے سگنل فلٹرنگ کے لئے دوسرے اشارے کے ساتھ بھی مل سکتا ہے۔
فالو لائن حکمت عملی کا مقصد اتار چڑھاؤ والی منڈیوں میں قیمت کے رجحانات کو پکڑنا ہے۔ یہ ایک موثر رجحان ٹریکنگ حکمت عملی ہے۔ پیرامیٹرز کی مناسب ترتیب اور اصلاحات سے مہذب منافع مل سکتا ہے۔ تاہم ، خطرات کو اسٹاپ نقصان اور جھوٹے بریکآؤٹس کو روکنے کے ذریعے سنبھالنے کی ضرورت ہے۔ منافع بخش کو مزید بہتر بنانے کے لئے اس حکمت عملی کو دوسرے اشارے یا حکمت عملیوں کے ساتھ جوڑنے کی سفارش کی جاتی ہے۔
/*backtest start: 2023-11-23 00:00:00 end: 2023-11-30 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // © Dreadblitz //@version=4 // // ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ // strategy(title = " Strategy Follow Line Indicator ", shorttitle = "S-FLI", overlay = true, precision = 8, calc_on_order_fills = true, calc_on_every_tick = true, backtest_fill_limits_assumption = 0, default_qty_type = strategy.fixed, default_qty_value = 2, initial_capital = 10000, pyramiding=1, currency = currency.USD, linktoseries = true) // // ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ // backTestSectionFrom = input(title = "═══════════════ From ═══════════════", defval = true, type = input.bool) FromMonth = input(defval = 1, title = "Month", minval = 1) FromDay = input(defval = 1, title = "Day", minval = 1) FromYear = input(defval = 2014, title = "Year", minval = 2000) backTestSectionTo = input(title = "════════════════ To ════════════════", defval = true, type = input.bool) ToMonth = input(defval = 31, title = "Month", minval = 1) ToDay = input(defval = 12, title = "Day", minval = 1) ToYear = input(defval = 9999, title = "Year", minval = 2000) Config = input(title = "══════════════ Config ══════════════", defval = true, type = input.bool) BBperiod = input(defval = 21, title = "BB Period", type = input.integer, minval = 1) BBdeviations = input(defval = 1.00, title = "BB Deviations", type = input.float, minval = 0.1, step=0.05) UseATRfilter = input(defval = true, title = "ATR Filter", type = input.bool) ATRperiod = input(defval = 5, title = "ATR Period", type = input.integer, minval = 1) hl = input(defval = false, title = "Hide Labels", type = input.bool) backTestPeriod() => true // // // ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ // BBUpper=sma (close,BBperiod)+stdev(close, BBperiod)*BBdeviations BBLower=sma (close,BBperiod)-stdev(close, BBperiod)*BBdeviations // TrendLine = 0.0 iTrend = 0.0 buy = 0.0 sell = 0.0 // BBSignal = close>BBUpper? 1 : close<BBLower? -1 : 0 // if BBSignal == 1 and UseATRfilter == 1 TrendLine:=low-atr(ATRperiod) if TrendLine<TrendLine[1] TrendLine:=TrendLine[1] if BBSignal == -1 and UseATRfilter == 1 TrendLine:=high+atr(ATRperiod) if TrendLine>TrendLine[1] TrendLine:=TrendLine[1] if BBSignal == 0 and UseATRfilter == 1 TrendLine:=TrendLine[1] // if BBSignal == 1 and UseATRfilter == 0 TrendLine:=low if TrendLine<TrendLine[1] TrendLine:=TrendLine[1] if BBSignal == -1 and UseATRfilter == 0 TrendLine:=high if TrendLine>TrendLine[1] TrendLine:=TrendLine[1] if BBSignal == 0 and UseATRfilter == 0 TrendLine:=TrendLine[1] // iTrend:=iTrend[1] if TrendLine>TrendLine[1] iTrend:=1 if TrendLine<TrendLine[1] iTrend:=-1 // buy:=iTrend[1]==-1 and iTrend==1 ? 1 : na sell:=iTrend[1]==1 and iTrend==-1? 1 : na // plot(TrendLine, color=iTrend > 0?color.blue:color.red ,style=plot.style_line,linewidth=2,transp=0,title="Trend Line") plotshape(buy == 1 and hl == false? TrendLine-atr(8) :na, text='💣', style= shape.labelup, location=location.absolute, color=color.blue, textcolor=color.white, offset=0, transp=0,size=size.auto) plotshape(sell == 1 and hl == false ?TrendLine+atr(8):na, text='🔨', style=shape.labeldown, location=location.absolute, color=color.red, textcolor=color.white, offset=0, transp=0,size=size.auto) // Strategy Entry if (backTestPeriod()) strategy.entry("long", true, 1, when = buy == 1) strategy.entry("short", false, 1, when = sell == 1)