
এটি একটি প্রবণতা ট্র্যাকিং কৌশল যা সমান্তরাল ক্রস এবং একটি অপেক্ষাকৃত শক্তিশালী সূচক ((আরএসআই)) এর সমন্বয় করে। এই কৌশলটি সংক্ষিপ্ত এবং দীর্ঘমেয়াদী চলমান গড়ের ক্রস দ্বারা বাজার প্রবণতার দিক নির্ধারণ করে এবং গতিশীলতার ফিল্টার হিসাবে আরএসআই ব্যবহার করে যাতে প্রবণতার শক্তি নিশ্চিত করা যায়, যার ফলে ট্রেডিং সিগন্যালের নির্ভরযোগ্যতা বৃদ্ধি পায়। কৌশলটি ঝুঁকি পরিচালনার জন্য শতাংশ স্টপ লস এবং স্টপস অন্তর্ভুক্ত করে।
কৌশলটি 9 এবং 21 পিরিয়ডের সহজ চলমান গড় (এসএমএ) ব্যবহার করে প্রধান প্রবণতা সূচক হিসাবে। যখন স্বল্পমেয়াদী গড় দীর্ঘমেয়াদী গড়কে অতিক্রম করে এবং আরএসআই 50 এর চেয়ে বড় হয়, তখন সিস্টেমটি একাধিক সংকেত উত্পন্ন করে; যখন স্বল্পমেয়াদী গড় দীর্ঘমেয়াদী গড়কে অতিক্রম করে এবং আরএসআই 50 এর চেয়ে ছোট হয়, তখন সিস্টেমটি একটি ফাঁকা সংকেত উত্পন্ন করে। এই নকশাটি নিশ্চিত করে যে ট্রেডিংয়ের দিকটি বাজারের প্রবণতা এবং গতিশীলতার সাথে সামঞ্জস্যপূর্ণ। সিস্টেমটি 1% স্টপ লস এবং 2% স্টপস্টপ সেট করে প্রতিটি লেনদেনের জন্য ঝুঁকি-ফেরতের অনুপাত নিয়ন্ত্রণ করে।
এটি একটি কাঠামোগত, যুক্তিসঙ্গত এবং স্পষ্ট প্রবণতা ট্র্যাকিং কৌশল। সমান্তরাল ক্রস দ্বারা মৌলিক প্রবণতা দিকনির্দেশনা সরবরাহ করা হয়, আরএসআই গতিশীলতা নিশ্চিতকরণ সরবরাহ করে, তারপরে ঝুঁকি ব্যবস্থাপনা ব্যবস্থার সাথে মিলিত হয়, একটি সম্পূর্ণ ট্রেডিং সিস্টেম গঠন করে। যদিও কিছু অন্তর্নিহিত সীমাবদ্ধতা রয়েছে, ক্রমাগত অপ্টিমাইজেশন এবং সমন্বয় দ্বারা, কৌশলটি বিভিন্ন বাজারের পরিবেশে স্থিতিশীল পারফরম্যান্স বজায় রাখার আশা করা যায়। কৌশলটির সাফল্যের মূল চাবিকাঠি হল প্যারামিটার অপ্টিমাইজেশন এবং ঝুঁকি নিয়ন্ত্রণের বাস্তবায়ন।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-10 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Moving Average Crossover + RSI Strategy", overlay=true, shorttitle="MA RSI Strategy")
// --- Input Parameters ---
shortMA = input.int(9, title="Short MA Period", minval=1)
longMA = input.int(21, title="Long MA Period", minval=1)
rsiLength = input.int(14, title="RSI Length", minval=1)
rsiOverbought = input.int(70, title="RSI Overbought Level", minval=50, maxval=100)
rsiOversold = input.int(30, title="RSI Oversold Level", minval=0, maxval=50)
stopLossPercent = input.float(1, title="Stop Loss Percentage", minval=0.1, maxval=10.0) / 100
takeProfitPercent = input.float(2, title="Take Profit Percentage", minval=0.1, maxval=10.0) / 100
// --- Calculate Moving Averages ---
shortMA_value = ta.sma(close, shortMA)
longMA_value = ta.sma(close, longMA)
// --- Calculate RSI ---
rsi_value = ta.rsi(close, rsiLength)
// --- Buy and Sell Conditions ---
longCondition = ta.crossover(shortMA_value, longMA_value) and rsi_value > 50
shortCondition = ta.crossunder(shortMA_value, longMA_value) and rsi_value < 50
// --- Plot Moving Averages ---
plot(shortMA_value, color=color.blue, linewidth=2, title="Short MA")
plot(longMA_value, color=color.red, linewidth=2, title="Long MA")
// --- Plot RSI (Optional) ---
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)
plot(rsi_value, color=color.purple, title="RSI")
// --- Strategy Execution ---
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// --- Risk Management (Stop Loss and Take Profit) ---
longStopLoss = close * (1 - stopLossPercent)
longTakeProfit = close * (1 + takeProfitPercent)
shortStopLoss = close * (1 + stopLossPercent)
shortTakeProfit = close * (1 - takeProfitPercent)
// Set the stop loss and take profit for long and short positions
strategy.exit("Long Exit", from_entry="Long", stop=longStopLoss, limit=longTakeProfit)
strategy.exit("Short Exit", from_entry="Short", stop=shortStopLoss, limit=shortTakeProfit)