ফলো লাইন কৌশল হল বোলিংজার ব্যান্ড এবং গড় সত্য পরিসীমা (এটিআর) এর উপর ভিত্তি করে একটি প্রবণতা ট্র্যাকিং কৌশল। এটি বোলিংজার ব্যান্ডের উপরের ব্যান্ডের উপরে দাম ভাঙলে এবং বোলিংজার ব্যান্ডের নীচের ব্যান্ডের নীচে দাম ভাঙলে এটিকে নীচে সরিয়ে দিয়ে প্রবণতা ট্র্যাক করার জন্য প্রবণতা রায় লাইনটি গতিশীলভাবে সামঞ্জস্য করে।
কৌশলটি প্রথমে বলিংজার ব্যান্ডের উপরের এবং নীচের ব্যান্ডগুলি, পাশাপাশি গড় সত্য পরিসীমা গণনা করে। তারপরে এটি মূল্যায়ন করে যে দামটি বলিংজার উপরের ব্যান্ডের উপরে বা নীচের ব্যান্ডের নীচে ভেঙে যায় কিনা।
যখন মূল্য উপরের ব্যান্ডের উপরে ভেঙে যায়, যদি ATR ফিল্টার সক্ষম করা হয়, তাহলে প্রবণতা লাইনটি সর্বনিম্ন মূল্য বিয়োগ ATR এ সেট করা হয়। যদি ATR ফিল্টার নিষ্ক্রিয় করা হয়, তবে প্রবণতা লাইন সরাসরি সর্বনিম্ন মূল্যে সেট করা হয়।
যখন মূল্য নিম্নতম ব্যান্ডের নীচে ভাঙ্গবে, যদি ATR ফিল্টার সক্ষম করা হয়, তাহলে ট্রেন্ড লাইনটি সর্বোচ্চ মূল্য প্লাস ATR এ সেট করা হবে। যদি ATR ফিল্টার নিষ্ক্রিয় করা হয়, তাহলে ট্রেন্ড লাইন সরাসরি সর্বোচ্চ মূল্যে সেট করা হবে।
সুতরাং, ট্রেন্ড ট্র্যাকিংয়ের জন্য বোলিংজার ব্যান্ডের দামের ব্রেকআউটের উপর ভিত্তি করে প্রবণতা বিচার লাইনটি গতিশীলভাবে সামঞ্জস্য করা যেতে পারে।
যখন বর্তমান প্রবণতা লাইন পূর্ববর্তী এক উচ্চতর, এটি একটি আপ ট্রেন্ড ইঙ্গিত। যখন বর্তমান প্রবণতা লাইন পূর্ববর্তী এক কম, এটি একটি নিম্নমুখী প্রবণতা ইঙ্গিত।
ট্রেডিং সিগন্যালগুলি তখন দীর্ঘ বা সংক্ষিপ্ত যেতে প্রবণতা বিচারের উপর ভিত্তি করে উত্পন্ন করা যেতে পারে।
কিছু ঝুঁকি প্যারামিটার টিউনিংয়ের মাধ্যমে হ্রাস করা যেতে পারে, স্টপ লস প্রবর্তন করে। ব্রেকআউট বৈধতা উন্নত করতে সংকেত ফিল্টারিংয়ের জন্য অন্যান্য সূচকগুলির সাথেও একত্রিত হতে পারে।
ফলো লাইন কৌশলটি অস্থির বাজারে দামের প্রবণতা ক্যাপচার করার লক্ষ্য রাখে। এটি একটি কার্যকর প্রবণতা ট্র্যাকিং কৌশল। যথাযথ পরামিতি টিউনিং এবং অপ্টিমাইজেশানগুলি শালীন লাভের দিকে পরিচালিত করতে পারে। তবে স্টপ লস এবং মিথ্যা ব্রেকআউট প্রতিরোধের মাধ্যমে ঝুঁকিগুলি পরিচালনা করা দরকার। লাভজনকতা আরও উন্নত করতে এই কৌশলটি অন্যান্য সূচক বা কৌশলগুলির সাথে একত্রিত করার পরামর্শ দেওয়া হয়।
/*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)