
এটি একটি ট্রেডিং স্ট্র্যাটেজি সিস্টেম যা RSI ডায়নামিক ইনডেক্স এবং ATR ওভারল্যাপিং ইনডেক্সকে একত্রিত করে। এই কৌশলটি RSI এবং এর মুভিং এভারেজের সাথে ক্রসগুলি পর্যবেক্ষণ করে সম্ভাব্য ব্যবসায়ের সুযোগগুলি সনাক্ত করতে পারে, যখন এটি ATR ইনডেক্সকে একটি ওভারল্যাপিং ফিল্টার হিসাবে ব্যবহার করে যাতে নিশ্চিত হয় যে বাজারে পর্যাপ্ত ওভারল্যাপিং রয়েছে। কৌশলটি ইউরোপীয় ট্রেডিং সময় ((প্রাগ সময় 8:00-21:00) চলমান, 5 মিনিটের সময়কাল গ্রহণ করে এবং একটি নির্দিষ্ট স্টপ লস স্তর সেট করে।
কৌশলটির মূল যুক্তি নিম্নলিখিত মূল উপাদানগুলির উপর ভিত্তি করে:
লেনদেনের নিয়মাবলী নিম্নে দেওয়া হলঃ
এই কৌশলটি আরএসআই এবং এটিআর সূচকগুলির সাথে একত্রিত হয়ে একটি অপেক্ষাকৃত সম্পূর্ণ ট্রেডিং সিস্টেম তৈরি করে। কৌশলটির প্রধান সুবিধা হ’ল একাধিক ফিল্টারিং প্রক্রিয়া এবং উন্নত ঝুঁকি ব্যবস্থাপনা, তবে একই সাথে কিছু সীমাবদ্ধতা রয়েছে। প্রস্তাবিত অপ্টিমাইজেশনের দিকনির্দেশের মাধ্যমে কৌশলটি আরও ভাল পারফরম্যান্সের প্রত্যাশা করে। কৌশলটির অভিযোজনযোগ্যতা বজায় রাখার জন্য মূল বিষয়টি হ’ল প্রকৃত ট্রেডিং পরিবেশের সাথে প্যারামিটারগুলিকে ক্রমাগত সামঞ্জস্য করা এবং অপ্টিমাইজ করা।
/*backtest
start: 2024-11-10 00:00:00
end: 2024-12-09 08:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Custom RSI + ATR Strategy", overlay=true)
// === Настройки индикаторов ===
rsi_length = input.int(14, minval=1, title="RSI Length")
rsi_ma_length = input.int(10, minval=1, title="RSI MA Length")
atr_length = input.int(14, minval=1, title="ATR Length")
atr_threshold = input.float(0.5, minval=0.1, title="ATR Threshold")
// === Параметры стоп-лосса и тейк-профита ===
stop_loss_ticks = input.int(5000, title="Stop Loss Ticks")
take_profit_ticks = input.int(5000, title="Take Profit Ticks")
// === Получение значений индикаторов ===
rsi = ta.rsi(close, rsi_length)
rsi_ma = ta.sma(rsi, rsi_ma_length)
atr_value = ta.atr(atr_length)
// === Время для открытия сделок ===
start_time = timestamp("Europe/Prague", year, month, dayofmonth, 8, 0)
end_time = timestamp("Europe/Prague", year, month, dayofmonth, 21, 0)
in_trading_hours = (time >= start_time and time <= end_time)
// === Условие по волатильности ===
volatility_filter = atr_value > atr_threshold
// === Условия для лонгов ===
long_condition = ta.crossover(rsi, rsi_ma) and rsi < 45 and in_trading_hours and volatility_filter
if (long_condition)
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit/Stop Loss", "Long", stop=low - stop_loss_ticks * syminfo.mintick, limit=high + take_profit_ticks * syminfo.mintick)
// === Условия для шортов ===
short_condition = ta.crossunder(rsi, rsi_ma) and rsi > 55 and in_trading_hours and volatility_filter
if (short_condition)
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit/Stop Loss", "Short", stop=high + stop_loss_ticks * syminfo.mintick, limit=low - take_profit_ticks * syminfo.mintick)
// === Отображение индикаторов на графике ===
plot(rsi, color=color.blue, title="RSI")
plot(rsi_ma, color=color.red, title="RSI MA")
hline(45, "RSI 45", color=color.green)
hline(55, "RSI 55", color=color.red)
plot(atr_value, color=color.orange, title="ATR", linewidth=2)
hline(atr_threshold, "ATR Threshold", color=color.purple)