সংযোজনশীল আরএসআই ব্রেকআউট কৌশল

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

img

সারসংক্ষেপ

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

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

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

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

এছাড়াও, একটি ট্রেন্ড ফিল্টার বিকল্প যুক্ত করা হয়। লং ট্রেডগুলি কেবল তখনই খোলা হবে যখন দাম 100 দিনের চলমান গড়ের উপরে থাকে, যার অর্থ এটি একটি আপসোর্সিং ট্রেন্ড চ্যানেলে থাকে। এই ফিল্টারটি বাজারের ওঠানামা চলাকালীন ভুল ট্রেডগুলি এড়ায়।

সুবিধা

  • ক্রমবর্ধমান RSI ব্যবহার করে কার্যকরভাবে গোলমাল ফিল্টার করুন এবং মাঝারি থেকে দীর্ঘমেয়াদী প্রবণতা ক্যাপচার করুন
  • ট্রেন্ড ফিল্টার দিয়ে অযৌক্তিক ট্রেড এড়িয়ে চলুন
  • সিদ্ধান্ত গ্রহণের জন্য স্থির মানের পরিবর্তে গতিশীল রেফারেন্স স্তর ব্যবহার করুন
  • বিভিন্ন বাজারের উপর ভিত্তি করে সামঞ্জস্যের জন্য অত্যন্ত কনফিগারযোগ্য পরামিতি
  • ১০ বছরের ব্যাকটেস্টের চমৎকার ফলাফল, ক্রয় ও হোল্ডের তুলনায় উল্লেখযোগ্যভাবে ভাল

ঝুঁকি এবং উন্নতি

  • শুধুমাত্র একটি সূচকের উপর ভিত্তি করে সিদ্ধান্তগুলি অন্যান্য সূচক বা ফিল্টার যুক্ত করতে পারে
  • নির্দিষ্ট উচ্চ লিভারেজ অনুপাত, ড্রাউনডাউনের উপর ভিত্তি করে সামঞ্জস্য করা যেতে পারে
  • শুধুমাত্র লং ট্রেড, শর্ট ট্রেডিংয়ের সুযোগ দেখতে পারেন
  • প্যারামিটার সমন্বয় অপ্টিমাইজ করুন যা বাজারে উল্লেখযোগ্যভাবে পরিবর্তিত হয়
  • স্টপ লস, মুভিং স্টপ লস ইত্যাদির সাথে প্রস্থান শর্ত সমৃদ্ধ করুন
  • সিনার্জিস্টিক প্রভাবের জন্য অন্যান্য কৌশলগুলির সাথে একত্রিত করার বিষয়টি বিবেচনা করুন

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

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


/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 1h
basePeriod: 15m
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/
// @version=5
// Author = TradeAutomation


strategy(title="Cumulative RSI Strategy", shorttitle="CRSI Strategy", process_orders_on_close=true, overlay=true, commission_type=strategy.commission.cash_per_contract, commission_value=.0035, slippage = 1, margin_long = 75, initial_capital = 25000, default_qty_type=strategy.percent_of_equity, default_qty_value=110)


// Cumulative RSI Indicator Calculations //
rlen  = input.int(title="RSI Length", defval=3, minval=1)
cumlen = input(3, "RSI Cumulation Length")
rsi = ta.rsi(close, rlen)
cumRSI = math.sum(rsi, cumlen)
ob = (100*cumlen*input(94, "Oversold Level")*.01)
os = (100*cumlen*input(20, "Overbought Level")*.01)


// Operational Function //
TrendFilterInput = input(false, "Only Trade When Price is Above EMA?")
ema = ta.ema(close, input(100, "EMA Length"))
TrendisLong = (close>ema)
plot(ema)


// Backtest Timeframe Inputs // 
startDate = input.int(title="Start Date", defval=1, minval=1, maxval=31)
startMonth = input.int(title="Start Month", defval=1, minval=1, maxval=12)
startYear = input.int(title="Start Year", defval=2010, minval=1950, maxval=2100)
endDate = input.int(title="End Date", defval=1, minval=1, maxval=31)
endMonth = input.int(title="End Month", defval=1, minval=1, maxval=12)
endYear = input.int(title="End Year", defval=2099, minval=1950, maxval=2100)
InDateRange = (time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0)) and (time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0))


// Buy and Sell Functions //
if (InDateRange and TrendFilterInput==true)
    strategy.entry("Long", strategy.long, when = ta.crossover(cumRSI, os) and TrendisLong, comment="Buy", alert_message="buy")
    strategy.close("Long", when = ta.crossover(cumRSI, ob) , comment="Sell", alert_message="Sell")
if (InDateRange and TrendFilterInput==false)
    strategy.entry("Long", strategy.long, when = ta.crossover(cumRSI, os), comment="Buy", alert_message="buy")
    strategy.close("Long", when = ta.crossover(cumRSI, ob), comment="Sell", alert_message="sell")
if (not InDateRange)
    strategy.close_all()

আরো