অস্থিরতা ক্যাপচার আরএসআই-বোলিংজার ব্যান্ড কৌশল একটি ট্রেডিং কৌশল যা ট্রেডিং সংকেত তৈরির জন্য বোলিংজার ব্যান্ড (বিবি), আপেক্ষিক শক্তি সূচক (আরএসআই) এবং সাধারণ চলমান গড় (এসএমএ) এর ধারণাগুলিকে একীভূত করে। এই কৌশলটির অনন্যতা হ'ল এটি বন্ধের দামের ভিত্তিতে উপরের এবং নীচের বোলিংজার ব্যান্ডের মধ্যে একটি গতিশীল স্তর গণনা করে। এই অনন্য বৈশিষ্ট্যটি কৌশলটিকে বাজারের অস্থিরতা এবং মূল্য আন্দোলনের সাথে খাপ খাইয়ে নিতে দেয়।
ক্রিপ্টো এবং স্টক মার্কেটগুলি অত্যন্ত অস্থির, যা তাদের বোলিংজার ব্যান্ড ব্যবহার করে একটি কৌশল জন্য উপযুক্ত করে তোলে। আরএসআই এই প্রায়শই জল্পনাশীল বাজারে অতিরিক্ত ক্রয় বা অতিরিক্ত বিক্রয় শর্ত সনাক্ত করতে সহায়তা করতে পারে।
ডায়নামিক বোলিংগার ব্যান্ডঃ কৌশলটি প্রথমে ব্যবহারকারীর সংজ্ঞায়িত দৈর্ঘ্য এবং গুণক উপর ভিত্তি করে উপরের এবং নীচের বোলিংগার ব্যান্ডগুলি গণনা করে। এটি তারপর বোলিংগার ব্যান্ড এবং বন্ধের মূল্য ব্যবহার করে বর্তমান বোলিংব্যান্ড মানকে গতিশীলভাবে সামঞ্জস্য করে। অবশেষে, এটি মূল্য বর্তমান বোলিংব্যান্ডের উপরে অতিক্রম করার সময় একটি দীর্ঘ সংকেত এবং মূল্যের নীচে অতিক্রম করার সময় একটি সংক্ষিপ্ত সংকেত তৈরি করে।
আরএসআইঃ যদি ব্যবহারকারী সিগন্যালের জন্য আরএসআই ব্যবহার করতে পছন্দ করে, তবে কৌশলটি আরএসআই এবং এর এসএমএ গণনা করে এবং অতিরিক্ত দীর্ঘ এবং সংক্ষিপ্ত সংকেত তৈরি করতে তাদের ব্যবহার করে।
কৌশলটি তারপরে নির্বাচিত ট্রেডিং দিকটি পরীক্ষা করে এবং সেই অনুযায়ী দীর্ঘ বা সংক্ষিপ্ত অবস্থানে প্রবেশ করে। যদি
অবশেষে, কৌশলটি একটি অবস্থান থেকে বেরিয়ে আসে যখন বন্ধের মূল্য যথাক্রমে দীর্ঘ / সংক্ষিপ্ত অবস্থানের জন্য বর্তমান বোলিং ব্যান্ডের নীচে / উপরে অতিক্রম করে।
এই কৌশলটি বোলিংজার ব্যান্ড, আরএসআই এবং এসএমএর শক্তিকে একত্রিত করে বাজারের অস্থিরতার সাথে মানিয়ে নিতে, গতিশীলভাবে ওঠানামা ক্যাপচার করতে এবং ওভারকুপ / ওভারসোল্ড স্তরে ট্রেডিং সংকেত তৈরি করতে।
আরএসআই বোলিংজার সংকেতগুলিকে পরিপূরক করে, ব্যাপ্তি বাজারে মিথ্যা এন্ট্রি এড়ায়। শুধুমাত্র দীর্ঘ, শুধুমাত্র সংক্ষিপ্ত বা উভয় দিকের অনুমতি দেওয়া বিভিন্ন বাজারের অবস্থার জন্য উপযুক্ত।
কাস্টমাইজযোগ্য পরামিতিগুলি পৃথক ঝুঁকি পছন্দগুলির উপর ভিত্তি করে সমন্বয় করতে সক্ষম করে।
কৌশলটি প্রযুক্তিগত সূচকগুলির উপর ভিত্তি করে এবং মৌলিক ভিত্তিতে পরিচালিত বড় বিপরীতমুখী প্রত্যাশা করতে পারে না।
ভুল বোলিংজার প্যারামিটার সেটিং খুব ঘন ঘন বা খুব সামান্য সংকেত তৈরি করতে পারে।
দ্বি-মুখী ট্রেডিং ঝুঁকি বাড়ায়, বিপরীত স্বল্প ক্ষতি থেকে সাবধান থাকুন।
ঝুঁকি নিয়ন্ত্রণের জন্য স্টপ ব্যবহার করার পরামর্শ দেওয়া হয়।
সিগন্যাল ফিল্টার করার জন্য MACD এর মত অন্যান্য ফিল্টার যোগ করুন।
স্টপ লস কৌশল অন্তর্ভুক্ত করুন।
বোলিংজার এবং আরএসআই প্যারামিটার অপ্টিমাইজ করুন।
বিভিন্ন পণ্য এবং সময়সীমার জন্য পরামিতিগুলি সামঞ্জস্য করুন।
বাস্তব অবস্থার সাথে সামঞ্জস্যপূর্ণ লাইভ টিউনিং পরামিতি বিবেচনা করুন।
অস্থিরতা ক্যাপচার আরএসআই-বোলিংজার কৌশল একটি প্রযুক্তিগত সূচক-চালিত কৌশল, যা বাজারের অস্থিরতা ক্যাপচার করার জন্য বোলিংজার ব্যান্ড, আরএসআই এবং এসএমএর শক্তিগুলিকে একত্রিত করে। কৌশলটি উচ্চ কাস্টমাইজযোগ্যতা এবং অপ্টিমাইজেশনের অনুমতি দেয় তবে মৌলিক পরিবর্তনগুলি পূর্বাভাস দিতে পারে না। বাস্তব-বাণিজ্য যাচাইকরণ এবং প্যারামিটার টিউনিং বা ঝুঁকি হ্রাস করার জন্য অন্যান্য সূচক যোগ করার পরামর্শ দেওয়া হয় যখন প্রয়োজন হয়।
/*backtest start: 2023-11-23 00:00:00 end: 2023-11-30 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © PresentTrading //@version=5 // Define the strategy settings strategy('Volatility Capture RSI-Bollinger - Strategy [presentTrading]', overlay=true) // Define the input parameters for the indicator priceSource = input.source(title='Source', defval=hlc3, group='presentBollingBand') // The price source to use lengthParam = input.int(50, 'lengthParam', minval=1, group='presentBollingBand') // The length of the moving average multiplier = input.float(2.7183, 'Multiplier', minval=0.1, step=.1, group='presentBollingBand') // The multiplier for the ATR useRSI = input.bool(true, 'Use RSI for signals', group='presentBollingBand') // Boolean input to decide whether to use RSI for signals rsiPeriod = input.int(10, 'RSI Period', minval=1, group='presentBollingBand') // The period for the RSI calculation smaPeriod = input.int(5, 'SMA Period', minval=1, group='presentBollingBand') // The period for the SMA calculation boughtRange = input.float(55, 'Bought Range Level', minval=1, group='presentBollingBand') // The level for the bought range soldRange = input.float(50, 'Sold Range Level', minval=1, group='presentBollingBand') // The level for the sold range // Add a parameter for choosing Long or Short tradeDirection = input.string("Both", "Trade Direction", options=["Long", "Short", "Both"], group='presentBollingBand') // Dropdown input for trade direction // Calculate the bollingerBand barIndex = bar_index // The current bar index upperBollingerBand = ta.sma(high, lengthParam) + ta.stdev(high, lengthParam) * multiplier // Calculate the upper Bollinger Band lowerBollingerBand = ta.sma(low, lengthParam) - ta.stdev(low, lengthParam) * multiplier // Calculate the lower Bollinger Band var float presentBollingBand = na // Initialize the presentBollingBand variable crossCount = 0 // Initialize the crossCount variable // Calculate the buy and sell signals longSignal1 = ta.crossover(priceSource, presentBollingBand) // Calculate the long signal shortSignal1 = ta.crossunder(priceSource, presentBollingBand) // Calculate the short signal // Calculate the RSI rsiValue = ta.rsi(priceSource, rsiPeriod) // Calculate the RSI value rsiSmaValue = ta.sma(rsiValue, smaPeriod) // Calculate the SMA of the RSI value // Calculate the buy and sell signals longSignal2 = rsiSmaValue > boughtRange // Calculate the long signal based on the RSI SMA shortSignal2 = rsiSmaValue < soldRange // Calculate the short signal based on the RSI SMA presentBollingBand := na(lowerBollingerBand) or na(upperBollingerBand)?0.0 : close>presentBollingBand?math.max(presentBollingBand,lowerBollingerBand) : close<presentBollingBand?math.min(presentBollingBand,upperBollingerBand) : 0.0 if (tradeDirection == "Long" or tradeDirection == "Both") and longSignal1 and (useRSI ? longSignal2 : true) // Use RSI for signals if useRSI is true presentBollingBand := lowerBollingerBand // If the trade direction is "Long" or "Both", and the long signal is true, and either useRSI is false or the long signal based on RSI is true, then assign the lowerBollingerBand to the presentBollingBand. strategy.entry("Long", strategy.long) // Enter a long position. if (tradeDirection == "Short" or tradeDirection == "Both") and shortSignal1 and (useRSI ? shortSignal2 : true) // Use RSI for signals if useRSI is true presentBollingBand := upperBollingerBand // If the trade direction is "Short" or "Both", and the short signal is true, and either useRSI is false or the short signal based on RSI is true, then assign the upperBollingerBand to the presentBollingBand. strategy.entry("Short", strategy.short) // Enter a short position. // Exit condition if (strategy.position_size > 0 and ta.crossunder(close, presentBollingBand)) // If the strategy has a long position and the close price crosses under the presentBollingBand, then close the long position. strategy.close("Long") if (strategy.position_size < 0 and ta.crossover(close, presentBollingBand)) // If the strategy has a short position and the close price crosses over the presentBollingBand, then close the short position. strategy.close("Short") //~~ Plot plot(presentBollingBand,"presentBollingBand", color=color.blue) // Plot the presentBollingBand on the chart.