বর্ধিত বোলিংজার ব্যান্ড বিপরীতমুখী কৌশল

লেখক:চাওঝাং, তারিখ: ২০২৩-০৯-২১ ১১ঃ৪৫ঃ৩৭
ট্যাগঃ

সারসংক্ষেপ

এই কৌশলটি একটি উন্নত বোলিংজার ব্যান্ড সূচক ব্যবহার করে দামের বিপরীত পয়েন্টগুলি সনাক্ত করতে, যখন দাম নিম্ন ব্যান্ডের কাছাকাছি আসে তখন দীর্ঘ যায় এবং যখন একটি সবুজ মোমবাতি প্রদর্শিত হয় তখন অবস্থান বন্ধ করে দেয়, যার লক্ষ্য নিম্ন ব্যান্ডে গড় বিপরীত ধরন ধরা।

কৌশলগত যুক্তি

  1. স্ট্যান্ডার্ড বিবি পরামিতি বেস, ডেভ, উপরের বিবি এবং নিম্ন বিবি গণনা করুন।

  2. এসএমএ থেকে নির্দিষ্ট শতাংশে এসএমএ এবং বিচ্যুতি ব্যান্ড upex2 এবং dnex2 গণনা করুন।

  3. উপরের বিবি, নিচের বিবি দিয়ে উপেক্স ২, ডেনএক্স ২ এর গড় নেওয়া উপেক্স ৩ এবং ডেনএক্স ৩ পেতে।

  4. উপেক্স3 এবং উপরের বিবি থেকে বড় অংশকে নতুন উপরের ব্যান্ড উপেক্স, ডেনক্স3 থেকে ছোট অংশকে এবং নিম্ন বিবিকে নতুন নিম্ন ব্যান্ড ডেনক্স হিসাবে নিন।

  5. যখন দাম dnex এর নিচে যায় তখন লম্বা হয়ে যায়, যখন সবুজ মোমবাতি প্রদর্শিত হয় তখন অবস্থান বন্ধ করে দেয় (বন্ধ > খোলা) ।

সুবিধা বিশ্লেষণ

  1. উন্নত বিবি পূর্ববর্তী বিপরীত সংকেতগুলির জন্য মূল বিবির সংবেদনশীলতা উন্নত করে।

  2. মোমবাতি প্যাটার্ন দিয়ে ফিল্টার whipsaws।

  3. ব্যাকটেস্টে দেখা গেছে, ২০০৮ থেকে ২০১৮ সাল পর্যন্ত স্থিতিশীল লাভজনকতা, মসৃণ বক্ররেখা, সর্বোচ্চ ডিডি < ২০%।

  4. ঝুঁকি নিয়ন্ত্রণের জন্য কনফিগারযোগ্য লিভারেজ, ট্রেডিং সময়।

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

  1. বিবি পরামিতির খারাপ সুরক্ষা অতিরিক্ত ট্রেডিং বা মিস করা সুযোগের কারণ হতে পারে।

  2. শুধু দীর্ঘ, প্রবণতা বিপরীত থেকে মুনাফা করতে অক্ষম.

  3. মোমবাতি ফিল্টার বিলম্বিত হতে পারে, সময়মত প্রস্থান করতে অক্ষম।

  4. ১০ বছরের ব্যাকটেস্ট ডেটা স্থিতিশীলতা পরীক্ষা করার জন্য পর্যাপ্ত নয়।

  5. বড় ফাঁক বা খোলার লাফায় মানিয়ে নিতে ব্যর্থ।

অপ্টিমাইজেশান নির্দেশাবলী

  1. বিবি সেটিংসের অপ্টিমাইজেশনের জন্য পরীক্ষার পরামিতি সমন্বয়।

  2. লাভজনকতা বাড়াতে অন্যান্য সিগন্যাল ফিল্টার যোগ করুন।

  3. যখন দাম উপরের ব্যাংকের বেশি হয় তখন শর্ট ট্রেড বিবেচনা করুন।

  4. একক ট্রেড ক্ষতি সীমাবদ্ধ করতে স্টপ লস সেট করুন।

  5. পরিবর্তিত বাজারের উপর ভিত্তি করে অটো টিউনিং বিকাশ।

  6. ফাঁক এবং লাফ জন্য প্রবেশের নিয়ম অপ্টিমাইজ করুন.

  7. পরীক্ষার পরামিতির জন্য ব্যাকটেস্ট সময় বাড়ান।

সংক্ষিপ্তসার

এই কৌশলটি উন্নত বিবি সহ বিপরীত পয়েন্টগুলি সনাক্ত করে এবং দ্রুত লাভের জন্য মোমবাতি ফিল্টার সহ নিম্ন ব্যান্ডের কাছাকাছি দীর্ঘ যায়। ব্যাকটেস্ট কর্মক্ষমতা ভাল। তবে দীর্ঘ, সীমিত নমুনা, প্যারাম টিউনিং প্রয়োজন। বাজারের পরিবর্তন হলে ড্রডাউন মুখোমুখি হতে পারে। পরবর্তী পদক্ষেপগুলি হ'ল জয়ের হার বাড়ানোর জন্য সংকেতগুলি নিশ্চিত করা, সংক্ষিপ্ত বাণিজ্য, স্থিতিশীলতার জন্য দীর্ঘ ব্যাকটেস্ট, অভিযোজনযোগ্যতা এবং স্থায়িত্ব উন্নত করতে।


/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy(title = "Noro's Advanced Bollinger Bands Strategy v1.0", shorttitle = "ABB str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 5)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(false, defval = false, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
p = input(20, "bars")
d = input(25, "percent")
showlines = input(true, defval = true, title = "Show Lines?")
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")

mult = input(2.0, minval=0.001, maxval=50)
basis = sma(close, p)
dev = mult * stdev(close, p)
source = close
upperBB = basis + dev
lowerBB = basis - dev
b1 = plot(basis, color=gray, linewidth=1)
p1 = plot(upperBB, color=aqua,  linewidth=1)
p2 = plot(lowerBB, color=aqua, linewidth=1)

//SMAs
sma = sma(close, p)
upex2 = sma * ((100 + d) / 100)
dnex2 = sma * ((100 - d) / 100)

upex3 = (upex2 + upperBB) / 2
dnex3 = (dnex2 + lowerBB) / 2

upex = max(upperBB, upex3)
dnex = min(lowerBB, dnex3)
//exit = (high > sma and low < sma)
exit = close > open


//Lines
col = showlines ? blue : na
plot(upex, linewidth = 3, color = col, transp = 0)
plot(sma, linewidth = 3, color = col, transp = 0)
plot(dnex, linewidth = 3, color = col, transp = 0)

//Trading
lot = strategy.position_size != strategy.position_size[1] ? strategy.equity / close * capital / 100 : lot[1]

if (not na(close[p]))
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, limit = dnex)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, limit = upex)

if exit
    strategy.close_all()

আরো