মাল্টি-ফিল্টার বোলিংগার ব্যান্ড ট্রেডিং কৌশল হল একটি পরিমাণগত ট্রেডিং কৌশল যা বোলিংগার ব্যান্ড সূচক, চলমান গড় সূচক, আরএসআই সূচক এবং কে-লাইন গ্রাফিক বৈশিষ্ট্যগুলিকে একত্রিত করে যখন শর্তগুলি পূরণ হয় তখন ট্রেডিং সংকেত তৈরি করতে মাল্টি-শর্তযুক্ত স্ক্রিনিংয়ের জন্য। এটি একটি সাধারণ প্রবণতা অনুসরণকারী কৌশল যা মাঝারি থেকে দীর্ঘমেয়াদী মূল্য প্রবণতা ওঠানামা ক্যাপচার করে মুনা অর্জন করে।
কৌশলটি মূলত তিনটি সূচক ব্যবহার করেঃ বোলিংজার ব্যান্ড, চলমান গড় এবং আরএসআই। তাদের মধ্যে, বোলিংজার ব্যান্ডের মাঝের রেলটি মূল্যের এন-দিনের সহজ চলমান গড়, এবং উপরের এবং নীচের রেলগুলি যথাক্রমে মাঝের রেলগুলি +2 স্ট্যান্ডার্ড বিচ্যুতি এবং মাঝের রেলগুলি -2 স্ট্যান্ডার্ড বিচ্যুতি। আরএসআই সূচকটি একটি নির্দিষ্ট সময়ের মধ্যে উত্থান / পতনের পরিসরের ভিত্তিতে গণনা করা 0 থেকে 100 এর মধ্যে একটি মান।
কৌশলটি নিম্নলিখিত তিনটি প্রধান শর্তের মাধ্যমে ট্রেডিং সংকেত উৎপন্ন করেঃ
(১) বোলিংগার নিম্ন-ব্যান্ড ব্রেকআউট & কে-লাইন শরীরের বিরোধিতা। যখন বন্ধের মূল্য নিম্ন-ব্যান্ডের মধ্য দিয়ে উপরে ভাঙবে এবং কে-লাইন শরীরের রঙ বর্তমান প্রবণতা দিকের সাথে বিরোধিতা করবে, তখন লম্বা হবে।
(২) বোলিংগার উপরের ব্যান্ডের ব্রেকআউট & কে-লাইন বডি বিরোধিতা। যখন ক্লোজিং মূল্য উপরের ব্যান্ডটি ভেঙে নিচে যায় এবং কে-লাইন শরীরের রঙ বর্তমান ট্রেন্ডের দিকের সাথে বিরোধিতা করে, তখন শর্ট যান।
(3) কে-লাইন বডি বিপরীত. যদি অবস্থান দিক কে-লাইন বডি রঙ বিপরীত সঙ্গে সামঞ্জস্যপূর্ণ, অবস্থান বন্ধ করুন।
এছাড়াও, কৌশলটি প্রবেশের কঠোর নিয়ন্ত্রণের জন্য চলমান গড় ফিল্টার, কে-লাইন বডি ফিল্টার, আরএসআই ফিল্টার এবং অন্যান্য সহায়ক শর্তও নির্ধারণ করে।
বোলিংজার পরামিতিগুলি সামঞ্জস্য করে এবং স্টপগুলি কঠোরভাবে নিয়ন্ত্রণ করে ঝুঁকিগুলি হ্রাস করা যায়।
সামগ্রিকভাবে, এই কৌশলটি একটি সাধারণ মাঝারি থেকে দীর্ঘমেয়াদী প্রবণতা অনুসরণকারী কৌশল। একটি প্রবণতা ট্রেডিং পদ্ধতির সাথে বহু-শর্তাধীন স্ক্রিনিং এবং কঠোরভাবে প্রবেশ এবং প্রস্থান সময় নিয়ন্ত্রণের মাধ্যমে এটি অপ্রয়োজনীয় ট্রেডিং হ্রাস করতে এবং মাঝারি থেকে দীর্ঘমেয়াদী বাজারের প্রবণতা ক্যাপচার করতে পারে। কৌশলটির স্থায়িত্ব এবং লাভজনকতা আরও বাড়ানোর জন্য পরামিতিগুলি সামঞ্জস্য করে, আরও সহায়ক সরঞ্জাম যুক্ত করে ইত্যাদির মাধ্যমে এই কৌশলটিকে অনুকূল করার জন্য এখনও অনেক জায়গা রয়েছে।
/*backtest start: 2023-12-17 00:00:00 end: 2024-01-16 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2018 //@version=3 strategy("Noro's Bollinger Strategy v1.4", shorttitle = "Bollinger str 1.4", overlay = true ) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(false, defval = false, title = "Short") length = input(20, defval = 20, minval = 1, maxval = 1000, title = "Bollinger Length") mult = input(1, defval = 1, minval = 0.001, maxval = 50, title = "Bollinger Mult") source = input(ohlc4, defval = ohlc4, title = "Bollinger Source") usebf = input(true, defval = true, title = "Use body-filter") usecf = input(true, defval = true, title = "Use color-filter") userf = input(true, defval = true, title = "Use RSI-filter") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") showbands = input(true, defval = true, title = "Show Bollinger Bands") //Bollinger Bands basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev //Lines col = showbands ? black : na plot(upper, linewidth = 1, color = col) plot(basis, linewidth = 1, color = col) plot(lower, linewidth = 1, color = col) //Body filter nbody = abs(close - open) abody = sma(nbody, 10) body = nbody > abody / 2 or usebf == false //Color filter bar = close > open ? 1 : close < open ? -1 : 0 gb = bar == 1 or usecf == false rb = bar == -1 or usecf == false //RSI Filter fastup = rma(max(change(close), 0), 7) fastdown = rma(-min(change(close), 0), 7) rsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown)) ursi = rsi > 70 or userf == false drsi = rsi < 30 or userf == false //Signals up = close <= lower and rb and body and drsi and (close < strategy.position_avg_price or strategy.position_size == 0) dn = close >= upper and gb and body and ursi and (close > strategy.position_avg_price or strategy.position_size == 0) exit = ((strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open)) and body //Trading if up strategy.entry("Long", strategy.long, needlong == false ? 0 : na) if dn strategy.entry("Short", strategy.short, needshort == false ? 0 : na) if exit strategy.close_all()