This strategy combines three technical indicators: EMA crossover, RSI, and MACD, to build a dual trend confirmation trading strategy. The strategy determines the trend direction using EMA crossover and uses RSI and MACD as filtering conditions to generate trading signals after the trend is confirmed. This strategy is suitable for tracking trending markets while avoiding early entry in oscillating markets.
This strategy combines three indicators: EMA crossover, RSI, and MACD, to build a dual trend confirmation trading strategy. The strategy logic is clear, and the signals are intuitive, suitable for tracking trending markets. However, in practical application, attention should be paid to parameter optimization, risks in oscillating markets, and the identification of trend reversal points. By incorporating trend filtering, optimizing entry timing, setting risk management measures, and other enhancements, the stability and profitability of the strategy can be further improved.
/*backtest start: 2023-06-01 00:00:00 end: 2024-06-06 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("15 Dakikalık Göstergelerle Strateji", shorttitle="15m Strat", overlay=true) // Parametreler short_ma_length = input.int(9, title="Kısa EMA") long_ma_length = input.int(21, title="Uzun EMA") rsi_length = input.int(14, title="RSI Periyodu") rsi_overbought = input.int(70, title="RSI Aşırı Alım") rsi_oversold = input.int(30, title="RSI Aşırı Satım") // EMA Hesaplamaları short_ema = ta.ema(close, short_ma_length) long_ema = ta.ema(close, long_ma_length) // RSI Hesaplaması rsi = ta.rsi(close, rsi_length) // MACD Hesaplaması [macdLine, signalLine, _] = ta.macd(close, 12, 26, 9) // Göstergeleri Grafiğe Çizme plot(short_ema, title="Kısa EMA", color=color.blue) plot(long_ema, title="Uzun EMA", color=color.red) hline(rsi_overbought, "Aşırı Alım", color=color.red) hline(rsi_oversold, "Aşırı Satım", color=color.green) plot(rsi, title="RSI", color=color.purple) // İşlem Koşulları longCondition = ta.crossover(short_ema, long_ema) and rsi < rsi_overbought and macdLine > signalLine if (longCondition) strategy.entry("Long", strategy.long) shortCondition = ta.crossunder(short_ema, long_ema) and rsi > rsi_oversold and macdLine < signalLine if (shortCondition) strategy.entry("Short", strategy.short) // Grafik Arkaplanı İşlem Koşullarına Göre Değiştirme bgcolor(longCondition ? color.new(color.green, 90) : na, title="Long Signal Background") bgcolor(shortCondition ? color.new(color.red, 90) : na, title="Short Signal Background")template: strategy.tpl:40:21: executing "strategy.tpl" at <.api.GetStrategyListByName>: wrong number of args for GetStrategyListByName: want 7 got 6