Momentum Bollinger Bands Breakout Strategy হল একটি পরিমাণগত ট্রেডিং কৌশল যা Momentum Bollinger Bands এবং Moving Averages এর সমন্বয় করে। এই কৌশলটি মূলত Momentum Bollinger Bands এর উচ্চ এবং নিম্ন ট্র্যাকগুলি ব্যবহার করে মূল্য নির্ধারণের জন্য ব্যবহৃত হয়। মুভিং গড়ের সাথে মিলিত করে অতিরিক্ত মূল্য ফিল্টার করা হয়, নির্দিষ্ট গতিশীলতার শর্তে একটি ক্রয়-বিক্রয় সংকেত দেওয়া হয়, যা বোলিং ব্যান্ডের ট্র্যাকের উপরে এবং নীচের ট্র্যাকের উপর একটি ব্রেকআউট অপারেশন করে।
এই কৌশলটি মূলত ব্রিন ব্যান্ড এবং মুভিং এভারেজ এমএ সূচকগুলির উপর ভিত্তি করে তৈরি করা হয়েছে। ব্রিন ব্যান্ড এবং মুভিং এভারেজগুলি প্রবণতা-অনুসরণকারী ধরণের সূচক। ব্রিন ব্যান্ডগুলি স্ট্যান্ডার্ড ডিফারেনশিয়াল ধারণাটি ব্যবহার করে দামের উচ্চ ও নিম্ন ওঠানামা বর্ণনা করে। মুভিং এভারেজ সমতল দামের ডেটা, দামের প্রবণতার দিক নির্ধারণ করে।
এই কৌশলটির মূল যুক্তি হলঃ
বুইলিং ব্যান্ডের প্রাথমিককরণ প্যারামিটার, মিড-রেল, আপ-রেল, আন্ডার-রেল গণনা করা হয়েছে।
প্রারম্ভিক চলমান গড় প্যারামিটার
ক্রয় সংকেতঃ যখন দাম নীচে থেকে উপরে ব্রেকিং বুলিন ব্যান্ডের নিচে চলে যায় এবং মুভিং এভারেজ নীচের ট্র্যাকের নীচে থাকে, তখন আরও কিছু করুন।
বিক্রয় সংকেতঃ যখন দামটি উপরে থেকে নীচে থেকে ব্রিনের ব্যান্ডটি ভেঙে যায় এবং চলমান গড়টি উপরের রেলের উপরে থাকে, তখন খালি করুন।
প্রস্থান সংকেতঃ যখন দাম পুনরায় ব্রিনের অঞ্চলে প্রবেশ করে, তখন সমতল স্থির হয়।
এই কৌশলটি ব্রিন ব্যান্ড ইন্ডিকেটর এবং মুভিং এভারেজ ইন্ডিকেটর ব্যবহার করে ট্রেডিং সিগন্যাল তৈরি করে।
ব্রিন ব্যান্ড ব্যবহার করে স্পষ্টভাবে দামের ওঠানামা পরিসীমা নির্ধারণ করা হয়, মুভিং এভারেজ দামের প্রবণতা দিক নির্ধারণ করে, দ্বৈত সূচক ফিল্টারিংয়ের সাথে মিলিত হয়, গঠিত ট্রেডিং সিগন্যালের উচ্চ নির্ভরযোগ্যতা রয়েছে।
দামগুলি বুলিন বন্ডের সীমানা অতিক্রম করার সাথে সাথে, চলমান গড়গুলিও অতিক্রম করা প্রয়োজন, যাতে ভুয়া ব্রেকিং এড়াতে পর্যাপ্ত গতিশীলতা সমর্থন করা যায়।
কৌশলগত প্যারামিটারগুলি যুক্তিসঙ্গতভাবে নমনীয়ভাবে সেট করা হয়, বিভিন্ন জাত এবং বাজারের অবস্থার সাথে খাপ খাইয়ে নিতে ব্রিন ব্যান্ড প্যারামিটার এবং চলন্ত গড়ের সময়কালকে সামঞ্জস্য করতে পারে।
কৌশলগত ধারণা পরিষ্কার, সহজে বোঝা যায়, বাস্তবায়ন ও যাচাই করা সহজ।
ব্রিন ব্যান্ডের অস্থিরতা সূচকটি নিজেই বাজারের অস্থিরতার জন্য সম্ভাব্য পিছিয়ে রয়েছে এবং দ্রুত পরিবর্তিত প্রবণতাগুলির মধ্যে একটি অকার্যকর ট্রেডিং সংকেত তৈরি করতে পারে।
চলমান গড় যখন একটি ফিল্টারিং সূচক হিসাবে কাজ করে, তার পরামিতি সেটিং সরাসরি কৌশল ফ্রিকোয়েন্সি প্রভাবিত করে। ভুল প্যারামিটার সেটিং মিসড ট্রেডিং সুযোগ হতে পারে।
একটি কার্যকর সংকেত তৈরির জন্য ব্রিনের ব্যান্ড এবং একটি চলমান গড়ের উপর নির্ভর করা প্রয়োজন, যার মধ্যে একটি ব্যর্থ হলে, পুরো কৌশলটি প্রভাবিত হবে।
ব্রেক-আউট কৌশলগুলি আরও কঠোর হয় এবং যখন দামগুলি পুনরায় পরীক্ষা করা হয়, তখন ব্রেক-আউটগুলি সহজেই আটকে যায়।
ব্রিনব্যান্ডের প্যারামিটারগুলিকে অপ্টিমাইজ করুন যাতে বিভিন্ন ধরণের বিভিন্ন সময়কাল এবং ওঠানামা থাকে, যেমন ব্রিনব্যান্ডের সময়কাল পরিবর্তন করা, স্ট্যান্ডার্ড ডিভেরিয়েন্সের গুণিতক প্যারামিটার।
চলমান গড়ের চক্রের প্যারামিটারগুলি অপ্টিমাইজ করুন, ফ্রিকোয়েন্সি এবং ফিল্টারিংয়ের প্রভাবকে ভারসাম্য করুন।
একক লেনদেনের সর্বাধিক ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস কৌশল যুক্ত করুন।
অন্যান্য সূচক যেমন আরএসআই, এমএসিডি ইত্যাদির সাথে মিলিত হয়ে পোর্টফোলিও সূচক তৈরি করে, কৌশলগত ট্রেডিং সংকেতকে সমৃদ্ধ করে।
মেশিন লার্নিং মডেলের সাহায্যে মূল্য প্রবণতার দিকনির্দেশনা এবং প্রতিরোধের সাফল্যের হার নির্ধারণ করা হয়েছে।
এই কৌশলটি ব্রিন ব্যান্ডের সূচক এবং চলমান গড়ের সূচককে একত্রিত করে, নির্দিষ্ট মূল্যের ব্রেকডাউন গতিশীলতা নিশ্চিত করে, বাজারে প্রবেশ এবং বেরিয়ে যাওয়ার সংকেত তৈরি করে। কৌশলগত ধারণাটি পরিষ্কার, সহজেই বাস্তবায়ন করা যায়, ট্রেন্ডিং কার্যকলাপকে কার্যকরভাবে অনুসরণ করতে পারে। তবে একই সাথে কিছুটা প্রত্যাহারের ঝুঁকিও রয়েছে, যা প্যারামিটার সেট এবং স্টপ লস সম্পর্কিত বাজারের পরিবর্তনের সাথে খাপ খাইয়ে নেওয়ার জন্য অপ্টিমাইজ করা দরকার।
/*backtest
start: 2022-12-28 00:00:00
end: 2024-01-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//
strategy("Advanced Bollinger Bands Strategy", overlay=true)
//BB Values
wall1= input(defval=true,title="===BB Values===",type=input.bool)
source = input(defval=close,title="BB Source",type=input.source)
length = input(20,title="BB Length", minval=1)
mult = input(2.0,title="BB Multiplier",minval=0.001, maxval=50)
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev
offset = input(0, " BB Offset", type = input.integer, minval = -500, maxval = 500)
plot(basis, "Basis", color=#872323, offset = offset)
p1 = plot(upper, "Upper", color=color.teal, offset = offset)
p2 = plot(lower, "Lower", color=color.teal, offset = offset)
fill(p1, p2, title = "Background", color=#198787, transp=95)
//Moving Average Values
wall2= input(defval=true,title="===MA Values===",type=input.bool)
nfl= input(defval=14,title="Moving Average Period",type=input.integer,minval=1,maxval=100)
source1= input(defval=close,title="Moving Average Source",type=input.source)
noisefilter= sma(source1,nfl)
plot(noisefilter,style=plot.style_line,linewidth=2,color=color.yellow,title=" Moving Average Filter")
bgcolor(noisefilter<lower?color.green:noisefilter>upper?color.red:na,title="Moving Average Filter")
//Strategy Conditions
wall3= input(defval=true,title="===Strategy Conditions===",type=input.bool)
bl= input(defval=false,title="Exit at Basis Line?",type=input.bool)
nflb= input(defval=false,title="Use Moving Average Filter?",type=input.bool)
//Strategy Condition
buyEntry = crossover(source, lower)
sellEntry = crossunder(source, upper)
if (nflb?(crossover(source,lower) and noisefilter<lower): crossover(source, lower))
strategy.entry("BBandLE", strategy.long, oca_name="BollingerBands", comment="BBandLE")
else
strategy.cancel(id="BBandLE")
if (nflb?(crossunder(source,lower) and noisefilter>upper): crossunder(source, lower))
strategy.entry("BBandSE", strategy.short, oca_name="BollingerBands", comment="BBandSE")
else
strategy.cancel(id="BBandSE")
strategy.close_all(when=bl?crossover(source,basis) or crossunder(source,basis):crossover(source,upper) or crossunder(source,lower))