অস্থিরতা ব্যান্ড বিপরীতকরণের উপর ভিত্তি করে বলিঙ্গার পরিমাণগত কৌশল


সৃষ্টির তারিখ: 2023-11-22 17:44:40 অবশেষে সংশোধন করুন: 2023-11-22 17:44:40
অনুলিপি: 0 ক্লিকের সংখ্যা: 673
1
ফোকাস
1617
অনুসারী

অস্থিরতা ব্যান্ড বিপরীতকরণের উপর ভিত্তি করে বলিঙ্গার পরিমাণগত কৌশল

ওভারভিউ

এই কৌশলটির নাম হল “বোলিংগার কোয়ান্টিফিকেশনাল স্ট্র্যাটেজি” যা ওভারল্যাপ ব্যান্ড রিভার্সনের উপর ভিত্তি করে। এই কৌশলটি Bollinger ব্যান্ডের উচ্চ-নীচের ট্রেইল ব্যবহার করে ক্রয়-বিক্রয় সিদ্ধান্ত নেওয়ার জন্য। যখন শেয়ারের দাম ওভারল্যাপ ব্যান্ডের নীচের ট্রেলার কাছাকাছি থাকে এবং নীচের দিকে বিপর্যয়ের লক্ষণ থাকে, তখন শেয়ারের দামটি সম্ভবত বিপরীত হওয়ার সময়টি দেখায়, তখন এটি কেনা হয়; যখন শেয়ারের দাম বেড়ে ওঠে এবং ওভারল্যাপ ব্যান্ডের ট্রেলার কাছাকাছি থাকে, তখন শেয়ারের দামটি উল্টে যেতে পারে, তখন এটি বিক্রি করা হয়।

কৌশল নীতি

এই কৌশলটি RSI সূচক ব্যবহার করে কেনার সময় নির্ধারণ করে। বিশেষত, এটি নির্ধারণ করে যে সাম্প্রতিক এক বারের বন্ধের দাম পূর্ববর্তী 6 বারের সর্বনিম্ন মূল্যের চেয়ে কম কিনা, এবং এর মধ্যে ব্রুনের ব্যান্ডউইথ (BBW) সেট থ্রেশহোল্ডের চেয়ে বড় এবং ব্রুনের ব্যান্ড রেট (BBR) সেট করা ব্যাপ্তির মধ্যে রয়েছে। এই শর্তগুলি পূরণ করা হলে, এটি নির্দেশ করে যে শেয়ারের দাম সম্ভবত বিপরীত সময়ে রয়েছে।

Exit পদ্ধতিটি সহজ, যখন RSI 70 এর উপরে থাকে, তখন শেয়ারের দাম গরম হয়ে যায়, যার অর্থ হল আপনি প্লেইন পজিশন বিক্রি করেন।

সামর্থ্য বিশ্লেষণ

এই কৌশলটির সবচেয়ে বড় সুবিধা হল, এটি বোলিংগার ব্যান্ডের উচ্চ-নিম্ন ট্র্যাকটি ব্যবহার করে বিচার করে, যখন বুলিং ব্যান্ডটি বিপরীত হয়, তখন ক্রয় এবং বিক্রয় করা হয়, যা স্বল্পমেয়াদী বিপরীত সুযোগকে কাজে লাগাতে পারে। সহজ আরএসআই কৌশলটির তুলনায় এই কৌশলটি ক্রয়ের সময় নির্ধারণে আরও কঠোর, যা ভুল ব্যবসায়ের সম্ভাবনা এড়াতে পারে।

এছাড়াও, এই কৌশলটি প্যারামিটার-সংবেদনশীল, যা বিভিন্ন জাতের জন্য BBW এবং BBR এর প্যারামিটারগুলি সামঞ্জস্য করে অপ্টিমাইজ করা যেতে পারে, যার ফলে আরও ভাল ফলাফল পাওয়া যায়।

ঝুঁকি বিশ্লেষণ

এই কৌশলটির প্রধান ঝুঁকি হল যে, ব্রিন ব্যান্ড ১০০% পূর্বাভাস দিতে পারে না যে, দাম বিপরীত দিকে যাবে, এবং যদি সময়টি সঠিক না হয়, তাহলে এটি একটি মিস করা সেরা কেনার সময় বা ভার্চুয়াল ক্ষতির জন্য সহজ।

উপরন্তু, শেয়ারের দামের স্বল্পমেয়াদী ওঠানামা কৌশলগুলিকে ঘন ঘন পজিশনিং এবং পজিশনিংয়ের দিকে নিয়ে যেতে পারে, লেনদেনের ব্যয় এবং স্লাইডিংয়ের ব্যয় বাড়িয়ে তুলতে পারে। যদি বিপরীতটি যথেষ্ট শক্তিশালী না হয় তবে ক্ষতিগ্রস্থ পজিশনের ঝুঁকি রয়েছে।

অপ্টিমাইজেশান দিক

এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ

  1. অপ্টিমাইজেশান প্যারামিটার: BBW, BBR ইত্যাদি প্যারামিটারগুলি পরীক্ষা এবং অপ্টিমাইজ করার জন্য আরও সূক্ষ্ম পদ্ধতি ব্যবহার করা যেতে পারে। বিভিন্ন ধরণের লেনদেনের জন্য সর্বোত্তম প্যারামিটার নির্বাচন করুন।

  2. অতিরিক্ত ক্ষতির ব্যবস্থা। সর্বাধিক ক্ষতি নিয়ন্ত্রণের জন্য চলমান ক্ষতি বা সময় বন্ধের ব্যবস্থা করা যেতে পারে।

  3. অন্যান্য সূচকগুলির সাথে মিলিতঃ কেডিজে, এমএসিডি ইত্যাদির সাথে মিলিত হতে পারে, যাতে ক্রয় সংকেতগুলি আরও নির্ভুল এবং নির্ভরযোগ্য হয়।

  4. অনুকূলিতকরণ বহির্গমন ব্যবস্থা বর্তমান বহির্গমন ব্যবস্থা সহজ, যেমন যথাযথ চলমান স্টপ সেট করা, অথবা উদ্বায়ী পরিস্থিতির সাথে যুক্ত বহির্গমন

সারসংক্ষেপ

এই কৌশলটি Bollinger Bands এর বৈশিষ্ট্যগুলি ব্যবহার করে, যখন দামগুলি বিপরীত হতে পারে, তখন ক্রয় এবং বিক্রয় করা যায়। RSI ইত্যাদির মতো একক সূচকের তুলনায় এই কৌশলটি সময় নির্ধারণের ক্ষেত্রে আরও সঠিক। প্যারামিটার অপ্টিমাইজেশন এবং স্টপ লস এবং স্টপ সেটআপের মাধ্যমে কৌশলটি আরও নির্ভরযোগ্য করা যায়। তবে বোলিং ব্যান্ডের পূর্বাভাসটি নিখুঁত নয়, তাই কৌশলটির বাস্তবায়নের প্রভাব কিছুটা এলোমেলো।

কৌশল সোর্স কোড
/*backtest
start: 2022-11-15 00:00:00
end: 2023-11-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

//study(title = "Bolinger strategy", overlay=true)
strategy("Bolinger strategy",currency="SEK",default_qty_value=10000,default_qty_type=strategy.cash,max_bars_back=50)
len = 5
src = close
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))


bbw3level = input(15, title="bbw3")
bbr3level = input(0.45, title="bbr3level")
bbrlower = input(0.4480, title="bbrlower")
bbrhigher = input(0.4560, title="bbrhigher")
sincelowestmin = input(7, title="sincelowestmin")
sincelowestmax = input(57, title="sincelowestmax")


length = input(20, minval=1)
mult = 20
src3 = close[3]
basis3 = sma(src3, length)
dev3 = mult * stdev(src3, length)
upper3 = basis3 + dev3
lower3 = basis3 - dev3
bbr3 = (src3 - lower3)/(upper3 - lower3)
bbw3 = (upper3-lower3)/basis3*100


basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev
bbr = (src - lower)/(upper - lower)
bbw = (upper-lower)/basis*100

criteriamet = 0
crossUnderB0 = crossunder(bbr,0)

since_x_under = barssince(crossUnderB0)


sincelowest = barssince(close[6] > close[3] and close[5] > close[3] and close[4] > close[3] and close[2] > close[3] and close[1] > close[3] and close > close[3] and bbw3 > bbw3level and bbr3 < bbr3level) //  and bbr3 < 0 

if sincelowest > sincelowestmin and sincelowest < sincelowestmax and bbr > bbrlower and bbr < bbrhigher
	criteriamet := 1
else
	criteriamet := 0	
//plot (criteriamet)

//exit 
exitmet = 0
if rsi > 70
	exitmet := 1
else
	exitmet := 0

if criteriamet == 1
	strategy.entry("long", strategy.long)
if exitmet == 1
	strategy.close("long")