এই কৌশলটি আপেক্ষিক শক্তি সূচক (আরএসআই) এর উপর ভিত্তি করে একটি অভিযোজিত ট্রেডিং সিস্টেম, যা অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয় প্রান্তিকের গতিশীল সমন্বয়ের মাধ্যমে বাণিজ্য সংকেত উত্পাদনকে অনুকূল করে তোলে। মূল উদ্ভাবনটি বুফির অভিযোজিত প্রান্তিক (বিএটি) পদ্ধতির প্রবর্তনে রয়েছে, যা বাজারের প্রবণতা এবং মূল্যের অস্থিরতার উপর ভিত্তি করে গতিশীলভাবে আরএসআই ট্রিগার প্রান্তিকগুলি সামঞ্জস্য করে, যার ফলে traditionalতিহ্যবাহী আরএসআই কৌশলগুলির কার্যকারিতা উন্নত হয়।
মূল ধারণাটি হল ঐতিহ্যবাহী স্থির-সীমা RSI সিস্টেমগুলিকে গতিশীল-সীমা সিস্টেমে আপগ্রেড করা। বাস্তবায়নের বিবরণঃ
কৌশলটিতে দুটি ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা রয়েছে:
এই উদ্ভাবনী অভিযোজনশীল ট্রেডিং কৌশলটি গতিশীল প্রান্তিক অপ্টিমাইজেশান দ্বারা ঐতিহ্যগত RSI কৌশলগুলির সীমাবদ্ধতাগুলি মোকাবেলা করে। কৌশলটি ব্যাপকভাবে বাজারের প্রবণতা এবং অস্থিরতা বিবেচনা করে, শক্তিশালী অভিযোজনযোগ্যতা এবং ঝুঁকি নিয়ন্ত্রণ ক্ষমতা বৈশিষ্ট্যযুক্ত। যদিও পরামিতি অপ্টিমাইজেশনে চ্যালেঞ্জ রয়েছে, ক্রমাগত উন্নতি এবং অপ্টিমাইজেশন এই কৌশলটিকে প্রকৃত ট্রেডিংয়ের জন্য প্রতিশ্রুতিবদ্ধ করে তোলে। ব্যবসায়ীদের লাইভ বাস্তবায়নের আগে পুঙ্খানুপুঙ্খ ব্যাকটেস্টিং এবং পরামিতি অপ্টিমাইজেশান পরিচালনা করার পরামর্শ দেওয়া হয়, নির্দিষ্ট বাজারের বৈশিষ্ট্যগুলির উপর ভিত্তি করে উপযুক্ত সমন্বয় সহ।
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-11 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © PineCodersTASC // TASC Issue: October 2024 // Article: Overbought/Oversold // Oscillators: Useless Or Just Misused // Article By: Francesco P. Bufi // Language: TradingView's Pine Script™ v5 // Provided By: PineCoders, for tradingview.com //@version=5 title ='TASC 2024.10 Adaptive Oscillator Threshold' stitle = 'AdapThrs' strategy(title, stitle, false, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, slippage = 5) // --- Inputs --- string sys = input.string("BAT", "System", options=["Traditional", "BAT"]) int rsiLen = input.int(2, "RSI Length", 1) int buyLevel = input.int(14, "Buy Level", 0) int adapLen = input.int(8, "Adaptive Length", 2) float adapK = input.float(6, "Adaptive Coefficient") int exitBars = input.int(28, "Fixed-Bar Exit", 1, group = "Strategy Settings") float DSL = input.float(1600, "Dollar Stop-Loss", 0, group = "Strategy Settings") // --- Functions --- // Bufi's Adaptive Threshold BAT(float price, int length) => float sd = ta.stdev(price, length) float lr = ta.linreg(price, length, 0) float slope = (lr - price[length]) / (length + 1) math.min(0.5, math.max(-0.5, slope / sd)) // --- Calculations --- float osc = ta.rsi(close, rsiLen) // Strategy entry rules // - Traditional system if sys == "Traditional" and osc < buyLevel strategy.entry("long", strategy.long) // - BAT system float thrs = buyLevel * adapK * BAT(close, adapLen) if sys == "BAT" and osc < thrs strategy.entry("long", strategy.long) // Strategy exit rules // - Fixed-bar exit int nBar = bar_index - strategy.opentrades.entry_bar_index(0) if exitBars > 0 and nBar >= exitBars strategy.close("long", "exit") // - Dollar stop-loss if DSL > 0 and strategy.opentrades.profit(0) <= - DSL strategy.close("long", "Stop-loss", immediately = true) // Visuals rsiColor = #1b9e77 thrsColor = #d95f02 rsiLine = plot(osc, "RSI", rsiColor, 1) thrsLine = plot(sys == "BAT" ? thrs : buyLevel, "Threshold", thrsColor, 1) zeroLine = plot(0.0, "Zero", display = display.none) fill(zeroLine, thrsLine, sys == "BAT" ? thrs : buyLevel, 0.0, color.new(thrsColor, 60), na)