Strategi ini adalah sistem perdagangan trend yang menggabungkan MACD (Moving Average Convergence Divergence) dan RSI (Relative Strength Index). Beroperasi pada jangka masa 5 minit, ia menghasilkan isyarat perdagangan dengan menganalisis persilangan MACD dan tahap overbought / oversold RSI. Strategi ini menggabungkan mekanisme stop-loss dan mengambil keuntungan berasaskan peratusan untuk pengurusan risiko.
Strategi ini berdasarkan logik teras berikut:
Strategi ini membina sistem dagangan yang menggabungkan ciri-ciri trend dan momentum melalui integrasi MACD dan RSI. Mekanisme kawalan risiko yang komprehensif dan logik dagangan yang jelas memberikan kepraktisan yang baik. Melalui arahan pengoptimuman yang dicadangkan, strategi ini mempunyai ruang untuk penambahbaikan lanjut. Sebelum perdagangan langsung, disyorkan untuk melakukan pengujian belakang yang menyeluruh dan menyesuaikan parameter mengikut ciri pasaran tertentu.
/*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)