Estratégia de acompanhamento de tendências com base no cruzamento de EMA e SMA


Data de criação: 2024-01-17 15:42:22 última modificação: 2024-01-17 15:42:22
cópia: 0 Cliques: 626
1
focar em
1617
Seguidores

Estratégia de acompanhamento de tendências com base no cruzamento de EMA e SMA

Visão geral

A “estratégia de acompanhamento de tendências baseada em cruzamentos de EMA e SMA” é uma estratégia de negociação de acompanhamento de tendências baseada em cruzamentos de médias móveis indexadas (EMA) e médias móveis simples (SMA). A estratégia visa identificar potenciais sinais de compra e venda, capturando o momento em que a EMA de curto prazo atravessa a SMA de longo prazo.

Princípio da estratégia

A estratégia gera sinais de negociação com base em dois critérios:

  1. O mais recente 5 EMA usa o mais recente 20 SMA
  2. 4 horas, o mais recente 5 EMA e o mais recente 20 SMA

Quando as duas condições são simultaneamente satisfeitas, um sinal de compra é gerado; quando as duas condições não são simultaneamente satisfeitas, um sinal de venda é gerado.

A estratégia gera um sinal de negociação através da comparação de EMA e SMA em diferentes períodos de tempo, compreendendo a direção da tendência. O EMA de curto prazo reflete as mudanças de tendência nos preços, sendo mais sensível, enquanto o SMA de longo prazo tem uma melhor capacidade de filtragem de tendências. Quando o EMA de curto prazo atravessa o SMA de longo prazo, o preço inverte ligeiramente e entra em uma situação de tendência, gerando um sinal de compra; ao contrário, quando o EMA de curto prazo atravessa o SMA de longo prazo, o fim da tendência é indicado, gerando um sinal de venda.

Ao mesmo tempo, a estratégia inclui o julgamento da EMA e SMA em níveis de 4 horas, filtrando o ruído de curto prazo e tornando os sinais de negociação mais confiáveis.

Vantagens estratégicas

A estratégia tem as seguintes vantagens:

  1. Simples, prático e fácil de entender
  2. Responder rapidamente para capturar uma mudança de tendência
  3. Filtração de ruído com a combinação de vários períodos de tempo

Risco estratégico

A estratégia também apresenta alguns riscos:

  1. Facilita a criação de sinais falsos, verifique os sinais com cuidado
  2. A tendência é que os mercados não respondam muito bem às mudanças de tendência.
  3. Parâmetros de EMA e SMA devem ser cuidadosamente escolhidos

O risco pode ser controlado através da adição de parâmetros de parada de perda e otimização.

Direção de otimização

A estratégia pode ser melhorada em vários aspectos:

  1. Testar mais combinações de parâmetros do ciclo EMA e SMA
  2. Adicionar outros indicadores para a verificação de sinais, como MACD, faixa de Brin etc.
  3. Estabelecer um mecanismo de parada dinâmico
  4. Filtragem de sinais com base no volume de transações

Resumir

A estratégia é simples e prática, e é uma estratégia básica de acompanhamento de tendências. Pode ser melhorada por meio de otimização de parâmetros, filtragem de sinais e outros métodos para se adaptar a mais condições de mercado e melhorar a eficácia da estratégia.

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

//@version=5
strategy("EMA and SMA Crossover Strategy", shorttitle="Shashank Cross", overlay=true)

// Condition 1: Latest EMA (Close, 5) crossed above Latest SMA (Close, 20)
ema5 = ta.ema(close, 5)
sma20 = ta.sma(close, 20)

condition1 = ta.crossover(ema5, sma20)

// Condition 2: [0] 4-hour EMA ([0] 4-hour Close, 5) crossed above [0] 4-hour SMA ([0] 4-hour Close, 20)
ema5_4h = request.security(syminfo.tickerid, "240", ta.ema(close, 5))
sma20_4h = request.security(syminfo.tickerid, "240", ta.sma(close, 20))

condition2 = ta.crossover(ema5_4h, sma20_4h)

// Combine both conditions for a buy signal
buy_signal = condition1 and condition2

// Plotting signals on the chart
plotshape(buy_signal, color=color.green, style=shape.labelup, location=location.belowbar, size=size.small, text="Buy Signal")

// Strategy logic
if (buy_signal)
    strategy.entry("Buy", strategy.long)

// Exit long position on the next bar at market price
if (ta.barssince(buy_signal) == 1)
    strategy.close("Exit")

// You can add more code for stop-loss, take-profit, etc., as per your strategy.