এই কৌশলটি বোলিংজার ব্যান্ডস এবং আরএসআই সূচকগুলির উপর ভিত্তি করে একটি গতিশীল ব্রেকআউট ট্রেডিং সিস্টেম। এটি একটি বিস্তৃত ট্রেডিং সিদ্ধান্তের কাঠামো তৈরির জন্য বোলিংজার ব্যান্ডস
কৌশলটির মূল নীতি হল একাধিক সিগন্যাল নিশ্চিতকরণের মাধ্যমে উচ্চ সম্ভাব্যতা ব্রেকআউট ট্রেডিং সুযোগ চিহ্নিত করা। বিশেষ করেঃ 1. মূল ব্রেকআউট সিগন্যাল সূচক হিসাবে বোলিংজার ব্যান্ড ব্যবহার করে, যখন দাম ব্যান্ডের উপরে বা নীচে ভঙ্গ করে তখন ট্রেডিং সিগন্যাল ট্রিগার করে ২. একটি গতির নিশ্চিতকরণ সূচক হিসাবে আরএসআই অন্তর্ভুক্ত করে, যা ব্রেকআউটের দিক সমর্থন করার জন্য আরএসআই মানগুলির প্রয়োজন (উপরে ব্রেকআউটের জন্য আরএসআই> 50, নেমে ব্রেকআউটের জন্য আরএসআই <50) ৩. ট্রেড_ডাইরেকশন প্যারামিটারের মাধ্যমে ট্রেডিংয়ের দিকনির্দেশনা নিয়ন্ত্রণ করে, বাজারের প্রবণতার উপর ভিত্তি করে একমুখী বা দ্বি-মুখী ট্রেডিংয়ের নির্বাচন করতে দেয় ৪. প্রতিটি ট্রেডের জন্য ঝুঁকি ও রিটার্ন পরিচালনা করার জন্য স্থির অনুপাত স্টপ-লস (২%) এবং গতিশীল ঝুঁকি-প্রতিদান অনুপাত (ডিফল্ট ২ঃ১) গ্রহণ করে ৫. প্রবেশ, স্টপ লস এবং মুনাফা গ্রহণের সুনির্দিষ্ট নিয়ন্ত্রণ সহ সম্পূর্ণ অবস্থান পরিচালনার প্রক্রিয়া স্থাপন করে
এটি একটি সু-ডিজাইন করা ব্রেকআউট ট্রেডিং কৌশল যা পরিষ্কার যুক্তিযুক্ত। একাধিক সংকেত নিশ্চিতকরণ এবং বিস্তৃত ঝুঁকি ব্যবস্থাপনা প্রক্রিয়াগুলির মাধ্যমে কৌশলটি ভাল ব্যবহারিকতা দেখায়। এদিকে, কৌশলটি সমৃদ্ধ অপ্টিমাইজেশান সম্ভাবনা সরবরাহ করে এবং ট্রেডিং যন্ত্র এবং বাজারের পরিবেশের উপর ভিত্তি করে বিশেষভাবে উন্নত করা যেতে পারে। লাইভ ট্রেডিংয়ের আগে পুঙ্খানুপুঙ্খ পরামিতি অপ্টিমাইজেশন এবং ব্যাকটেস্টিং পরিচালনা করার পরামর্শ দেওয়া হয়।
/*backtest start: 2023-12-05 00:00:00 end: 2024-12-04 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Breakout Strategy with Direction Control", overlay=true) // === Input Parameters === length = input(20, title="Bollinger Bands Length") src = close mult = input(2.0, title="Bollinger Bands Multiplier") rsi_length = input(14, title="RSI Length") rsi_midline = input(50, title="RSI Midline") risk_reward_ratio = input(2.0, title="Risk/Reward Ratio") // === Trade Direction Option === trade_direction = input.string("Both", title="Trade Direction", options=["Long", "Short", "Both"]) // === Bollinger Bands Calculation === basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper_band = basis + dev lower_band = basis - dev // === RSI Calculation === rsi_val = ta.rsi(src, rsi_length) // === Breakout Conditions === // Long: Prijs sluit boven de bovenste Bollinger Band en RSI > RSI Midline long_condition = close > upper_band and rsi_val > rsi_midline and (trade_direction == "Long" or trade_direction == "Both") // Short: Prijs sluit onder de onderste Bollinger Band en RSI < RSI Midline short_condition = close < lower_band and rsi_val < rsi_midline and (trade_direction == "Short" or trade_direction == "Both") // === Entry Prices === var float entry_price_long = na var float entry_price_short = na if (long_condition) entry_price_long := close strategy.entry("Long", strategy.long, when=long_condition) if (short_condition) entry_price_short := close strategy.entry("Short", strategy.short, when=short_condition) // === Stop-Loss and Take-Profit === long_stop_loss = entry_price_long * 0.98 // 2% onder instapprijs long_take_profit = entry_price_long * (1 + (0.02 * risk_reward_ratio)) short_stop_loss = entry_price_short * 1.02 // 2% boven instapprijs short_take_profit = entry_price_short * (1 - (0.02 * risk_reward_ratio)) if (strategy.position_size > 0) // Long Positie strategy.exit("Exit Long", "Long", stop=long_stop_loss, limit=long_take_profit) if (strategy.position_size < 0) // Short Positie strategy.exit("Exit Short", "Short", stop=short_stop_loss, limit=short_take_profit) // === Plotting === plot(upper_band, color=color.green, title="Upper Band") plot(lower_band, color=color.red, title="Lower Band") plot(basis, color=color.blue, title="Basis")