
Esta estratégia é um sistema de negociação quantitativa que combina múltiplos indicadores técnicos. Ela usa principalmente a média móvel EMA para julgar tendências de mercado, combina o indicador de momentum MACD para capturar oportunidades de reversão de tendência e usa o indicador RSI para fazer julgamentos de sobrecompra e sobrevenda. O uso coordenado de múltiplos indicadores pode filtrar efetivamente sinais falsos e melhorar as taxas de sucesso das transações.
A lógica central da estratégia inclui as seguintes partes principais:
Essa estratégia cria um sistema de negociação relativamente completo por meio da cooperação coordenada de vários indicadores técnicos. As vantagens dessa estratégia são alta confiabilidade do sinal e controle de risco perfeito, mas também há certos problemas de atraso e sensibilidade dos parâmetros. Por meio das direções de otimização recomendadas, especialmente a introdução de parâmetros adaptativos e gerenciamento dinâmico de posição, a estabilidade e a lucratividade da estratégia podem ser ainda mais melhoradas. Essa estratégia é adequada para uso em um ambiente de mercado com tendências claras, e os investidores precisam ajustar as configurações de parâmetros com base em características específicas do mercado.
/*backtest
start: 2025-01-09 00:00:00
end: 2025-01-16 00:00:00
period: 15m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/
//@version=5
strategy("RSI ve EMA Tabanlı Alım-Satım Stratejisi", overlay=false)
// EMA Hesaplamaları
ema_short = ta.ema(close, 50) // EMA 50
ema_long = ta.ema(close, 200) // EMA 200
// MACD Hesaplamaları
[macd, signal, _] = ta.macd(close, 12, 26, 9)
// RSI Hesaplamaları
rsi = ta.rsi(close, 14)
// Alım Sinyali Koşulları
macd_condition = (macd < 0) and (macd > nz(macd[1])) and (nz(macd[1]) < nz(macd[2]))
buy_signal = (ema_short > ema_long) and macd_condition
// Satım Sinyali Koşulları
sell_signal = (rsi[1] > 70) and (rsi <= 70) // RSI 70'i yukarıdan aşağıya kırdı
// Stop Loss Koşulu
stop_loss = ema_short < ema_long
// İşlem ve Etiketler
if buy_signal
strategy.entry("Buy", strategy.long)
label.new(bar_index, high, "AL", style=label.style_label_up, color=color.green, textcolor=color.white)
if sell_signal
strategy.close("Buy", comment="SAT")
label.new(bar_index, high, "SAT", style=label.style_label_down, color=color.red, textcolor=color.white)
if stop_loss
strategy.close("Buy", comment="STOP LOSS")
label.new(bar_index, low, "STOP LOSS", style=label.style_label_down, color=color.orange, textcolor=color.white)
// Grafik Üzerine Çizgiler ve Göstergeler
plot(ema_short, color=color.blue, title="EMA 50")
plot(ema_long, color=color.red, title="EMA 200")
plot(rsi, color=color.orange, title="RSI 14")
hline(70, "RSI 70", color=color.red)
hline(30, "RSI 30", color=color.green)