
এই কৌশলটি একটি প্রবণতা-অনুসরণকারী ট্রেডিং সিস্টেম যা MACD ((মোবাইল গড় সমন্বয় বিচ্ছিন্নতা) এবং RSI ((আপেক্ষিকভাবে দুর্বল সূচক) এর সমন্বয় করে। কৌশলটি 5 মিনিটের সময়কালের উপর কাজ করে, MACD এবং সিগন্যাল লাইনের ক্রস এবং RSI ওভার-বয় ওভার-বিক্রয় স্তরের বিশ্লেষণ করে ট্রেডিং সিগন্যাল তৈরি করে। একই সাথে শতাংশ ভিত্তিক স্টপ লস এবং লাভের সমাপ্তি প্রক্রিয়াটি ঝুঁকি ব্যবস্থাপনার জন্য সংহত করা হয়েছে।
কৌশলটি মূলত নিম্নলিখিত মূল যুক্তির উপর ভিত্তি করে তৈরি করা হয়েছেঃ
এই কৌশলটি ম্যাকড এবং আরএসআইয়ের সুবিধাগুলিকে একত্রিত করে একটি ট্রেডিং সিস্টেম তৈরি করে যা প্রবণতা ট্র্যাকিং এবং গতিশীল বৈশিষ্ট্যগুলিকে সমন্বিত করে। একটি উন্নত ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা এবং একটি পরিষ্কার ট্রেডিং লজিক এটিকে ভাল ব্যবহারিকতা দেয়। প্রস্তাবিত অপ্টিমাইজেশনের দিকনির্দেশের মাধ্যমে কৌশলটি আরও উন্নত করার জায়গা রয়েছে। রিয়েল-টাইমে প্রয়োগের ক্ষেত্রে, প্রথমে পর্যাপ্ত ফিডব্যাক যাচাইয়ের পরামর্শ দেওয়া হয় এবং নির্দিষ্ট বাজারের বৈশিষ্ট্য অনুসারে প্যারামিটারগুলি যথাযথভাবে সামঞ্জস্য করা হয়।
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-11 08:00:00
period: 1d
basePeriod: 1d
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
strategy("MACD + RSI Basit Strateji", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// İndikatör parametreleri
fastLength = input(12, "MACD Fast Length")
slowLength = input(26, "MACD Slow Length")
signalLength = input(9, "MACD Signal Length")
rsiLength = input(14, "RSI Period")
rsiOversold = input(45, "RSI Oversold Level")
rsiOverbought = input(55, "RSI Overbought Level")
// Stop Loss ve Take Profit ekledim
stopLoss = input(1.2, "Stop Loss (%)")
takeProfit = input(2.4, "Take Profit (%)")
// MACD hesaplama
[macdLine, signalLine, histLine] = ta.macd(close, fastLength, slowLength, signalLength)
// RSI hesaplama
rsiValue = ta.rsi(close, rsiLength)
// EMA trend filtresi
emaValue = ta.ema(close, 10)
// Alım sinyali koşulları - sadece MACD ve RSI kullanalım
longCondition = macdLine > signalLine and rsiValue < rsiOversold
// Satım sinyali koşulları
shortCondition = macdLine < signalLine and rsiValue > rsiOverbought
// Pozisyon yönetimi - Stop Loss ve Take Profit ekledim
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("TP/SL", "Long",
profit = close * takeProfit / 100,
loss = close * stopLoss / 100)
if (shortCondition)
strategy.close("Long")
// Grafik göstergeleri
plotshape(longCondition, title="Alım",
style=shape.triangleup,
location=location.belowbar,
color=color.green,
size=size.large,
text="AL")
plotshape(shortCondition, title="Satım",
style=shape.triangledown,
location=location.abovebar,
color=color.red,
size=size.large,
text="SAT")
// İndikatörleri göster
plot(rsiValue, "RSI", color=color.purple)
hline(rsiOversold, "Oversold", color=color.gray)
hline(rsiOverbought, "Overbought", color=color.gray)