
এই কৌশলটি RSI (রিলেটিভ স্ট্রেংথ ইনডেক্স) এবং CCI (কন্ডিশনাল ট্রেন্ড ইনডেক্স) এর উপর ভিত্তি করে একটি দ্বৈত প্রযুক্তিগত বিশ্লেষণ ট্রেডিং সিস্টেম। এটি ঝুঁকি-পুরস্কার অনুপাত এবং নির্দিষ্ট স্টপ লসের সাথে মিলিত এই দুটি ক্লাসিক প্রযুক্তিগত সূচকগুলির অতিরিক্ত কেনা এবং বেশি বিক্রি হওয়া সংকেতগুলিকে একত্রিত করে একটি সম্পূর্ণ ট্রেডিং সিদ্ধান্ত গ্রহণের কাঠামো তৈরি করে। কৌশলটির মূল হল দ্বৈত সূচকগুলির ক্রস-নিশ্চিতকরণের মাধ্যমে ট্রেডিং সিগন্যালের নির্ভরযোগ্যতা উন্নত করা, যেখানে একটি সম্পূর্ণ ঝুঁকি ব্যবস্থাপনা পদ্ধতি অন্তর্ভুক্ত করা।
কৌশলটি প্রধানত নিম্নলিখিত মূল নীতিগুলির উপর ভিত্তি করে কাজ করে:
এটি একটি সম্পূর্ণ ট্রেডিং সিস্টেম যা আধুনিক ঝুঁকি ব্যবস্থাপনা ধারণার সাথে ক্লাসিক প্রযুক্তিগত সূচককে একত্রিত করে। দ্বৈত প্রযুক্তিগত সূচকগুলির নিশ্চিতকরণ প্রক্রিয়া সিগন্যালের নির্ভরযোগ্যতা উন্নত করে, এবং কঠোর ঝুঁকি নিয়ন্ত্রণ ব্যবস্থার সাথে মিলিত, কঠোর যুক্তি এবং শক্তিশালী ব্যবহারিকতার সাথে একটি ট্রেডিং কৌশল তৈরি করা হয়। যদিও কিছু নির্দিষ্ট সীমাবদ্ধতা রয়েছে, ক্রমাগত অপ্টিমাইজেশান এবং উন্নতির মাধ্যমে, এই কৌশলটির ভাল ব্যবহারিক প্রয়োগের সম্ভাবনা রয়েছে। অস্থিরতা উপলব্ধি, প্রবণতা নিশ্চিতকরণ এবং ঝুঁকি ব্যবস্থাপনা অপ্টিমাইজ করা অব্যাহত কৌশলটির স্থায়িত্ব এবং ব্যবহারিকতাকে আরও উন্নত করবে।
/*backtest
start: 2024-12-29 00:00:00
end: 2025-01-05 00:00:00
period: 5m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// TradingView Pine Script for RSI & CCI-Based Strategy
//@version=6
strategy("RSI & CCI Strategy", overlay=true)
// User Inputs
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(80, title="RSI Overbought Level")
rsiOversold = input.int(20, title="RSI Oversold Level")
cciLength = input.int(20, title="CCI Length")
cciOverbought = input.int(200, title="CCI Overbought Level")
cciOversold = input.int(-200, title="CCI Oversold Level")
riskRewardRatio = input.float(2.0, title="Risk-Reward Ratio")
fixedStopLoss = input.float(1.0, title="Fixed Stop Loss (Percentage)", minval=0.1)
// RSI and CCI Calculations
rsi = ta.rsi(close, rsiLength)
cci = ta.cci(close, cciLength)
// Entry Conditions
longCondition = (rsi < rsiOversold) and (cci < cciOversold)
shortCondition = (rsi > rsiOverbought) and (cci > cciOverbought)
// Initialize variables for stop loss and take profit
var float longStopLoss = na
var float longTakeProfit = na
var float shortStopLoss = na
var float shortTakeProfit = na
// Plot Buy and Sell Signals
if (longCondition)
label.new(bar_index, low, "BUY", style=label.style_label_up, color=color.green, textcolor=color.white)
longEntryPrice = close
longStopLoss := longEntryPrice * (1 - fixedStopLoss / 100)
longTakeProfit := longEntryPrice + (longEntryPrice - longStopLoss) * riskRewardRatio
// line.new(bar_index, longEntryPrice, bar_index, longStopLoss, color=color.red, width=1, extend=extend.none)
// line.new(bar_index, longEntryPrice, bar_index, longTakeProfit, color=color.green, width=1, extend=extend.none)
if (shortCondition)
label.new(bar_index, high, "SELL", style=label.style_label_down, color=color.red, textcolor=color.white)
shortEntryPrice = close
shortStopLoss := shortEntryPrice * (1 + fixedStopLoss / 100)
shortTakeProfit := shortEntryPrice - (shortStopLoss - shortEntryPrice) * riskRewardRatio
// line.new(bar_index, shortEntryPrice, bar_index, shortStopLoss, color=color.green, width=1, extend=extend.none)
// line.new(bar_index, shortEntryPrice, bar_index, shortTakeProfit, color=color.red, width=1, extend=extend.none)
// Strategy Information and Alerts
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", limit=longTakeProfit, stop=longStopLoss)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", limit=shortTakeProfit, stop=shortStopLoss)