
A estratégia de negociação quantitativa de acompanhamento de tendências de múltiplos índices de volume é uma estratégia de negociação quantitativa de tipo composto que combina a média móvel do índice (EMA), o índice de força relativa (RSI) e o indicador de dispersa de convergência da média móvel (MACD). A estratégia visa aumentar a precisão e a confiabilidade do sinal de negociação, especialmente para negociação de linha curta e média em mercados altamente voláteis, através da integração de vários indicadores técnicos.
O principal princípio da estratégia é a verificação conjunta de vários indicadores:
Regras específicas de geração de sinais de negociação:
A estratégia de negociação quantitativa de acompanhamento de tendências de múltiplos indicadores dinâmicos, através da integração de três indicadores tecnológicos-chave, EMA, RSI e MACD, constrói um sistema de geração de sinais de negociação relativamente robusto. A estratégia mantém a flexibilidade suficiente e possui uma forte capacidade de controle de risco, oferecendo aos comerciantes quantitativos um programa de negociação digno de estudo aprofundado.
/*backtest
start: 2025-01-01 00:00:00
end: 2025-04-01 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"DOGE_USDT"}]
*/
//@version=6
strategy("EMA + RSI + MACD Strategy", overlay=true)
// Input for EMA Lengths
emaFastLength = input(9, title="Fast EMA Length")
emaSlowLength = input(21, title="Slow EMA Length")
// RSI Settings
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(70, title="RSI Overbought Level")
rsiOversold = input(30, title="RSI Oversold Level")
// MACD Settings
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
// Calculate EMAs
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Plot EMAs
plot(emaFast, title="Fast EMA", color=color.blue, linewidth=1)
plot(emaSlow, title="Slow EMA", color=color.red, linewidth=1)
// Buy and Sell Conditions
bullishCrossover = ta.crossover(emaFast, emaSlow) and rsi > 50 and macdLine > signalLine
bearishCrossover = ta.crossunder(emaFast, emaSlow) and rsi < 50 and macdLine < signalLine
// Plot Buy and Sell Signals
plotshape(series=bullishCrossover, title="BuySignal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small, text="BUY")
plotshape(series=bearishCrossover, title="SellSignal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small, text="SELL")
// Strategy Execution
if bullishCrossover
strategy.entry("Buy", strategy.long)
if bearishCrossover
strategy.close("Buy")
strategy.entry("Sell", strategy.short)