এই কৌশলটি বোলবুলিন ব্যান্ডের সূচকগুলি ব্যবহার করে ট্রেন্ডিংয়ের প্রবণতা নির্ধারণ করে এবং ব্যান্ডউইথ সংকেতগুলির সাথে ট্রেডিংয়ের সুযোগগুলি অনুসন্ধান করে, যার লক্ষ্য পোর্টফোলিওর স্থিতিশীল প্রবৃদ্ধি বজায় রাখা। গত বছরের তথ্য অনুসারে, কৌশলটির মুনাফা হার 78.95% এবং সর্বাধিক প্রত্যাহার মাত্র -4.02%। এটি আমার অটোমেশন কৌশলগুলির একটি সিরিজের মধ্যে একটি যা পোর্টফোলিওর স্থিতিশীল প্রবৃদ্ধিকে সহায়তা করে।
প্যারামিটারগুলি পুনরায় পরীক্ষা করার জন্য এবং মূল্যবান মতামত দেওয়ার জন্য আপনাকে স্বাগত জানাই। আপনি যদি বর্তমান ফলাফলগুলি নিয়ে সন্তুষ্ট হন তবে আপনি এটিকে শেখার দিকে নিয়ে যেতে পারেন এবং সতর্কতাগুলি যুক্ত করতে পারেন এবং কৌশলটি স্বয়ংক্রিয় করতে পারেন। এর জন্য কোডের মধ্যে একটি সতর্কতা ব্যবস্থা যুক্ত করতে হবে। আপনি যদি আগ্রহী হন তবে আমি এই কৌশলটির উপর ভিত্তি করে সম্পর্কিত শিক্ষা তৈরি করতে পারি।
এই কৌশলটি বোলব্রিজেন ব্যান্ড এবং ব্যান্ডউইথ ব্যবহার করে প্রবেশ এবং প্রস্থান সময় নির্ধারণ করে।
বোলব্রিজ বন্ডে আপলাইন, মিডলাইন এবং ডাউনলাইন রয়েছে। মিডলাইন হল n দিনের সরল চলমান গড়, প্যারামিটার n ডিফল্ট 16। উপরের সীমা হল মিডলাইন + k।*স্ট্যান্ডার্ড বিচ্যুতি, নিম্ন সীমা হল মধ্যরেখা-k*স্ট্যান্ডার্ড বিচ্যুতি, প্যারামিটার k ডিফল্টভাবে 3। যখন দামটি উপরের সীমাতে পৌঁছে যায়, তখন শেয়ারের দাম খুব বেশি বা অতিরিক্ত হয়। যখন দামটি নীচের সীমাতে পৌঁছে যায়, তখন শেয়ারের দাম খুব কম বা অতিরিক্ত হয়।
ব্যান্ডউইথ ইন্ডিকেটর দামের তুলনামূলক মধ্যরেখার ওঠানামা দেখায়। এটি ((উপরের লাইন-নিচের লাইন) / মধ্যরেখা দ্বারা গঠিত*1000 গণনা করা হয়েছে। যখন ব্যান্ডউইথ 20 এর নীচে থাকে, তখন পরিস্থিতি শান্ত বা স্থির হয়; যখন ব্যান্ডউইথ 50 এর বেশি হয়, তখন অস্থিরতা বৃদ্ধি পায়।
এই কৌশলটি ২০-৫০ ব্যান্ডউইথের মধ্যে অবস্থিত হলে, নিচের সীমা অতিক্রম করার সুযোগ খুঁজতে অতিরিক্ত কাজ করে। অতিরিক্ত কাজ করার পরে, স্টপ লিনারটি খোলা পজিশনের দামের ১০৮% হিসাবে সেট করা হয়, অথবা উপরের সীমা অতিক্রম করার সময় বন্ধ করে দেওয়া হয়।
এই কৌশলটির সুবিধাগুলো হলঃ
বোলব্রিজ ব্রেড ব্যবহার করে ট্রেন্ডের দিকনির্দেশনা করা যায়, যা ফালতু ব্রেকআউটের ঝুঁকি হ্রাস করে।
ব্যান্ডউইথ সংকেতগুলি বিট অস্থিরতা সঠিকভাবে সনাক্ত করতে পারে, বড় অস্থিরতার ক্ষতি এড়াতে পারে
রিটার্ন ডেটা দেখায় যে এক বছরের মধ্যে প্রায় ৮০% মুনাফা অর্জন করা যায়, ঝুঁকি-লাভের অনুপাত খুব বেশি
সর্বাধিক প্রত্যাহার 5% এর নিচে, কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করুন, পোর্টফোলিও স্থিতিশীল বৃদ্ধি বজায় রাখুন
কৌশলগত লজিক পরিষ্কার, সহজ, সহজেই বোঝা যায় এবং বিভিন্ন ধরণের ডিজিটাল সম্পদের জন্য ব্যাপকভাবে প্রয়োগ করা যায়
এই কৌশলটি নিম্নলিখিত ঝুঁকিগুলিও বহন করেঃ
বোলব্রিজ প্যারামিটার ভুলভাবে সেট করা হয়েছে, যার ফলে ভালো ট্রেডিংয়ের সুযোগ হাতছাড়া হতে পারে
বাজারে ব্রেক বা বিয়ারের সময় ট্রেডিং ফ্রিকোয়েন্সি খুব কম হতে পারে এবং মুনাফার সম্ভাবনা সীমিত হতে পারে
রিটার্নিং ডেটা অপর্যাপ্ত, প্রকৃত অ্যাপ্লিকেশনে রিটার্নিং সূচকগুলি প্রতিলিপি করা অসম্ভব
চরম বাজার পরিস্থিতিতে, স্টপ লস পয়েন্ট অতিক্রম করা যেতে পারে, যার ফলে বড় ক্ষতি হতে পারে
উচ্চ লেনদেনের খরচ প্রকৃত মুনাফা হ্রাস করতে পারে
সমাধানঃ
অপ্টিমাইজেশান প্যারামিটার, বিভিন্ন বাজারের জন্য ব্রিনব্যান্ড চক্রের সমন্বয় ইত্যাদি
অন্যান্য সূচকগুলি প্রবণতা বিচার করার জন্য অতিরিক্তভাবে প্রবর্তিত হয়েছে, অস্বাভাবিক পরিস্থিতির প্রতিক্রিয়া হিসাবে
একাধিক বাজার পর্যালোচনা করার জন্য পর্যাপ্ত তথ্য সংগ্রহ করা, কৌশলগত স্থায়িত্ব যাচাই করা
স্টপ লসকে যথাযথভাবে সামঞ্জস্য করুন এবং চরম ব্যবসায়ের বড় ক্ষতি এড়ান
কম খরচে লেনদেনের প্ল্যাটফর্ম বেছে নিন, লেনদেনের খরচ কমান
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
ভলিউম নিশ্চিতকরণ বাড়ান যাতে ভুয়া ব্রেকআউট এড়ানো যায়
প্রবণতা নির্দেশকগুলির সাথে মিলিত হয়ে প্রবণতার দিকনির্দেশনা সনাক্ত করুন Combine with trend indicators to identify trend direction
মেশিন লার্নিং ব্যবহার করে প্যারামিটারগুলি সামঞ্জস্য করুন এবং বাজারে স্বয়ংক্রিয়ভাবে মানিয়ে নিন
অপ্রাসঙ্গিক সম্পদের লেনদেন এড়াতে সংশ্লিষ্টতা ফিল্টার যুক্ত করুন Add correlation filter to avoid trading uncorrelated assets
Optimize take profit/stop loss for more gains during uptrends অপ্টিমাইজ করুন ট্যাক প্রফিট/স্টপ লস স্ট্র্যাটেজি যাতে আপনি আরো লাভ করতে পারেন
আরো শর্ত ফিল্টার ট্রেডিং সিগন্যাল প্রবর্তন করুন, জয় হার বাড়ানোর জন্য
Test multi-timeframe combinations to profit from multiple cycles একাধিক সময়সীমার সমন্বয় পরীক্ষা করে একাধিক চক্র থেকে লাভ অর্জন করা
একটি সূচকযুক্ত পোর্টফোলিও তৈরি করুন এবং আপনার বিনিয়োগের সুযোগ বাড়ান Build indexed portfolio to expand exposure
মেশিন লার্নিং ব্যবহার করে স্বয়ংক্রিয়ভাবে নতুন কৌশল তৈরি এবং যাচাই করুন
এই বোলব্লিন শক বিভাজক কৌশলটি সামগ্রিকভাবে ভাল পরিমাপ করেছে এবং শক পরিস্থিতিতে আরও স্থিতিশীল আয় অর্জন করতে পারে। কৌশলটির মূল ধারণাটি সহজ এবং সহজেই ব্যবহার করা যায়। তবে জটিল এবং পরিবর্তনশীল বাজারে স্থিতিশীল মুনাফা অর্জনের জন্য প্যারামিটার অপ্টিমাইজেশন, ঝুঁকি নিয়ন্ত্রণ এবং পোর্টফোলিও পরিচালনার আরও উন্নতি করা দরকার। এই কৌশলটি মৌলিক প্রবণতা অনুসরণ করে, যার ভিত্তিতে আরও প্রযুক্তিগত সূচক এবং ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা চালু করা যেতে পারে। এটি মেশিন লার্নিংয়ের সাথে মিলিত হয়ে অটোমেশন অর্জন করতে পারে। সামগ্রিকভাবে পরিচালনা করার জন্য, এই কৌশলটি প্রাথমিকদের জন্য পরিমাণগত ব্যবসায়ের দরজা খুলে দেয় এবং পেশাদারদের জন্য কৌশলগত অপ্টিমাইজেশনের সম্ভাবনাও সরবরাহ করে।
/*backtest
start: 2023-10-30 00:00:00
end: 2023-11-06 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Bollinger Bands BAT/USDT 30min", overlay=true )
/// Indicators
///Bollinger Bands
source = close
length = input(16, minval=1)
mult = input(3, step=0.1, minval=0.001, maxval=50)
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev
plot(basis, color=color.red)
p1 = plot(upper, color=color.blue)
p2 = plot(lower, color=color.blue)
fill(p1, p2)
//Bollinger bands width
bbw = (upper-lower)/basis*1000
//plot(bbw, color=color.blue)
upper_bbw_input = input(title="BBW Upper Threshold", step=1, minval=0, defval=50)
lower_bbw_input = input(title="BBW Lower Threshold", step=1, minval=0, defval=20)
// Backtesting Period
testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2020, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
testPeriod() => true
// Take Profit
tp_inp = input(8, title='Take Profit %', step=0.1)/100
take_level = strategy.position_avg_price * (1 + tp_inp)
//Entry Strategy
entry_long = crossover(source, lower) and (bbw < upper_bbw_input) and (bbw > lower_bbw_input)
exit_long = cross(high,upper) or close < lower
if testPeriod()
strategy.entry(id="LongBB", long=true, comment="LongBB", when=entry_long)
strategy.exit("Take Profit Long","LongBB",limit=take_level)
strategy.close(id="LongBB", when=exit_long )