
Esta estratégia é um sistema de rastreamento de tendências baseado em análise técnica, que utiliza principalmente o sinal cruzado de 50 ciclos de índice de média móvel ((EMA) e 200 ciclos de média móvel simples ((MA) para capturar a tendência do mercado. A estratégia integra um mecanismo de stop loss dinâmico para controlar o risco e bloquear os ganhos através de um stop loss e um ponto de parada predefinidos.
A lógica central da estratégia baseia-se no julgamento cruzado de duas linhas equiláteros: quando a EMA de 50 ciclos sobe e cruza a MA de 200 ciclos, o sistema gera um sinal de tomada de posição; quando a EMA de 50 ciclos desce e cruza a MA de 200 ciclos, o sistema gera um sinal de tomada de posição. Após cada abertura de posição, o sistema automaticamente configura o ponto de parada para entrar (três pontos acima do preço de entrada) e o ponto de parada (sete e cinco pontos abaixo do preço de entrada). Além disso, quando ocorre um sinal de reversão, o sistema automaticamente liquida a posição atual para evitar que a direção da posição seja contrária à tendência do mercado.
A estratégia, combinando o clássico sistema de cruzamento de dupla linha uniforme e o mecanismo de parada e parada dinâmico, constrói um sistema de negociação de rastreamento de tendências completo. A vantagem da estratégia é o alto grau de sistematização e o controle de risco perfeito, mas, na aplicação prática, ainda há necessidade de ajustes otimizados de acordo com o ambiente de mercado específico e o tamanho do capital.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-24 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("200 MA & 50 EMA Crossover Strategy with **Estimated** SL & TP", overlay=true)
// Parameters for the 200 MA and 50 EMA
ma200 = ta.sma(close, 200) // 200-period simple moving average
ema50 = ta.ema(close, 50) // 50-period exponential moving average
// Plot the MA and EMA on the chart
plot(ma200, color=color.blue, linewidth=2, title="200 MA")
plot(ema50, color=color.red, linewidth=2, title="50 EMA")
// Define **estimated** stop loss and take profit values
// SL = 3 points, TP = 7.5 points from the entry price
sl_points = 3
tp_points = 7.5
// Buy signal: when the 50 EMA crosses above the 200 MA (bullish crossover)
if (ta.crossover(ema50, ma200))
strategy.entry("Buy", strategy.long)
// Set **estimated** stop loss and take profit strategy.exit("Take Profit/Stop Loss", "Buy", stop=strategy.position_avg_price - sl_points, limit=strategy.position_avg_price + tp_points)
// Sell signal: when the 50 EMA crosses below the 200 MA (bearish crossover)
if (ta.crossunder(ema50, ma200))
strategy.entry("Sell", strategy.short)
// Set **estimated** stop loss and take profit strategy.exit("Take Profit/Stop Loss", "Sell", stop=strategy.position_avg_price + sl_points, limit=strategy.position_avg_price - tp_points)
// Optional: Close the position when an opposite signal appears
if (strategy.position_size > 0 and ta.crossunder(ema50, ma200))
strategy.close("Buy")
if (strategy.position_size < 0 and ta.crossover(ema50, ma200))
strategy.close("Sell")