Estratégia de cruzamento de média móvel de alta da EMA

RSI EMA
Data de criação: 2024-06-17 16:24:35 última modificação: 2024-06-17 16:24:35
cópia: 2 Cliques: 718
1
focar em
1617
Seguidores

Estratégia de cruzamento de média móvel de alta da EMA

Visão geral

A estratégia usa três diferentes períodos de índices de média móvel (EMA) e índice de força relativa (RSI) para avaliar tendências de mercado e sinais de negociação. A estratégia gera um sinal de compra quando o preço ultrapassa a EMA de 200 dias e o RSI é maior que 50, ao contrário, gera um sinal de venda quando o preço cai abaixo da EMA de 200 dias e o RSI é menor que 50.

Princípio da estratégia

  1. Calcular o EMA de 200, 50 e 21 dias, representado por linhas azuis, vermelhas e verdes respectivamente.
  2. Calcule o RSI de 14 ciclos.
  3. Quando o preço de fechamento atravessa a EMA de 200 dias e o RSI é maior que 50, gera um sinal de compra.
  4. Quando o preço de fechamento atravessa a EMA de 200 dias e o RSI é menor que 50, gera um sinal de venda.
  5. O tamanho da posição é de 1% do valor líquido da conta.
  6. A posição de parada de compra é 50 pontos abaixo da EMA de 200 dias e a posição de parada é 100 pontos acima do preço de compra.
  7. A posição de parada de venda é de 50 pontos acima da EMA de 200 dias e a posição de parada de venda é de 100 pontos abaixo do preço de venda.

Vantagens estratégicas

  1. A combinação de indicadores de preços e de dinâmica ajuda a capturar o momento em que a tendência se forma e se reverte.
  2. Três EMAs de diferentes períodos podem refletir plenamente as tendências de curto, médio e longo prazo, reduzindo a frequência do sinal e os falsos sinais.
  3. O RSI pode filtrar os sinais de negociação em mercados de turbulência, reduzindo a perda de negociação.
  4. A posição de porcentagem fixa é útil para controlar o risco.
  5. O que é o Stop Loss Stop, que protege contra o risco de uma única transação?

Risco estratégico

  1. O atraso no sinal de uma mudança de tendência pode causar uma perda de lucro.
  2. O sinal RSI pode produzir um sinal de reversão prematuro em uma forte tendência.
  3. As posições em percentagem fixa são mais arriscadas em situações de grande volatilidade.
  4. A posição de parada muito próxima da linha média de 200 dias pode causar parada frequente.

Direção de otimização da estratégia

  1. Introduzir mais combinações de linha média a longo prazo para otimizar o sinal.
  2. Considerando o desvio do RSI e a tendência de sobrecompra e sobrevenda, ajuste o sinal.
  3. O tamanho da posição é ajustado dinamicamente de acordo com os indicadores de volatilidade, como o ATR.
  4. Optimizar a posição de parada de perda, como configurações de resistência de suporte, porcentagem ou ATR.
  5. Introduzir filtros de tendência, como o indicador ADX, para evitar a negociação em mercados de baixa volatilidade.
  6. Optimização de parâmetros e verificação de feedback para diferentes padrões e períodos.

Resumir

A estratégia pode capturar uma tendência relativamente clara a médio e longo prazo através de sinais de negociação entre o EMA e o RSI. No entanto, o desempenho geral no início da tendência e no mercado de turbulência é adequado para o mercado de tendência.

Código-fonte da estratégia
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Lexi Supreme", overlay=true)

// Calculate EMA 200
ema200 = ta.ema(close, 200)

// Calculate EMA 50
ema50 = ta.ema(close, 50)

// Calculate EMA 21
ema21 = ta.ema(close, 21)

// Calculate RSI
rsiValue = ta.rsi(close, 14)

// Buy condition: RSI above 50 and price crosses above EMA 200
buyCondition = ta.crossover(close, ema200) and rsiValue > 50

// Sell condition: RSI below 50 and price crosses below EMA 200
sellCondition = ta.crossunder(close, ema200) and rsiValue < 50

// Position Size (1% of account balance)
positionSize = 1

// Stop Loss and Take Profit values for buy trades
stopLossBuy = ema200 - 0.00050
takeProfitBuy = 0.00100

// Stop Loss and Take Profit values for sell trades
stopLossSell = ema200 + 0.00050
takeProfitSell = 0.00100

// Plot EMA 200 line in blue
plot(ema200, color=color.blue, title="EMA 200")

// Plot EMA 50 line in red
plot(ema50, color=color.red, title="EMA 50")

// Plot EMA 21 line in green
plot(ema21, color=color.green, title="EMA 21")

// Plot buy entry points in yellow
plotshape(series=buyCondition, title="Buy Signal", color=color.yellow, style=shape.triangleup, location=location.belowbar, size=size.small)

// Plot sell entry points in white
plotshape(series=sellCondition, title="Sell Signal", color=color.white, style=shape.triangledown, location=location.abovebar, size=size.small)

// Strategy entry and exit conditions with position size, stop loss, and take profit for buy trades
if (buyCondition)
    strategy.entry("Buy", strategy.long, qty=positionSize)
    strategy.exit("Take Profit/Stop Loss Buy", from_entry="Buy", stop=stopLossBuy, limit=close + takeProfitBuy)

// Strategy entry and exit conditions with position size, stop loss, and take profit for sell trades
if (sellCondition)
    strategy.entry("Sell", strategy.short, qty=positionSize)
    strategy.exit("Take Profit/Stop Loss Sell", from_entry="Sell", stop=stopLossSell, limit=close - takeProfitSell)