Estratégia de crossover EMA5 e EMA13

EMA SMA
Data de criação: 2024-05-17 15:28:17 última modificação: 2024-05-17 15:28:17
cópia: 0 Cliques: 1123
1
focar em
1617
Seguidores

Estratégia de crossover EMA5 e EMA13

Visão geral

A estratégia usa o cruzamento da média móvel de 5 dias (EMA5) e da média móvel de 13 dias (EMA13) para gerar um sinal de negociação. Quando o EMA5 é cruzado pelo EMA13, gera-se um sinal de multiplicação; quando o EMA5 é cruzado pelo EMA13, gera-se um sinal de ruptura. A estratégia visa capturar as mudanças nas tendências de curto prazo e usa o cruzamento das duas médias móveis para determinar os pontos de entrada e saída.

Princípio da estratégia

O núcleo da estratégia é o uso de cruzamentos de médias móveis de índices (EMA) de dois períodos diferentes para gerar sinais de negociação. A EMA é um indicador técnico de uso comum, que dá maior peso aos dados de preços mais recentes e, portanto, reflete melhor as mudanças de preços em tempo real em comparação com a média móvel simples (SMA). Quando uma EMA de curto prazo (como a EMA5) atravessa uma EMA de longo prazo (como a EMA13), indica um aumento na volatilidade dos preços, gerando um sinal de pluralidade; ao contrário, quando uma EMA de curto prazo atravessa uma EMA de longo prazo, indica um aumento na volatilidade dos preços, gerando um sinal de vazio.

Vantagens estratégicas

  1. Simples e fácil de entender: a estratégia usa apenas dois indicadores EMA, o princípio é simples e fácil de entender e implementar.
  2. Adaptabilidade: Adapta-se a diferentes ambientes de mercado e variedades de negociação, ajustando os parâmetros de ciclo da EMA.
  3. Alta pontualidade: em comparação com a SMA, a EMA responde mais rapidamente às mudanças de preço, ajudando a capturar rapidamente as mudanças de tendência.
  4. Escalabilidade: com base na estratégia, pode ser combinado com outros indicadores técnicos ou fatores fundamentais para otimizar ainda mais o desempenho da estratégia.

Risco estratégico

  1. Falsos sinais: Em mercados com turbulência ou com tendências pouco claras, os cruzamentos EMAs podem gerar mais falsos sinais, resultando em negociações frequentes e perda de capital.
  2. Atraso: Embora a EMA seja menor que a SMA, há um certo atraso e pode perder o melhor momento de entrada.
  3. Falta de stop-loss: A estratégia não tem um stop-loss definido e pode assumir grandes perdas se a situação mudar.
  4. Optimização de parâmetros: a escolha dos parâmetros do ciclo EMA precisa ser otimizada de acordo com diferentes mercados e variedades, ou pode afetar o desempenho da estratégia.

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

  1. Adição de filtro de tendência: baseado no sinal de cruzamento do EMA, filtro de tendência em combinação com indicadores de tendência de longo prazo (como o EMA50) para reduzir os falsos sinais.
  2. Stop-loss de configuração: configuração de stop-loss dinâmico com base em indicadores como o ATR, ou use stop-loss de porcentagem fixa para controlar a perda máxima de uma única transação.
  3. Parâmetros de otimização: Otimizar os parâmetros do ciclo EMA através da retrospecção de dados históricos para encontrar o conjunto de parâmetros mais adequado para o mercado e a variedade atuais.
  4. Combinação com outros indicadores: Usado em combinação com outros indicadores técnicos (como RSI, MACD, etc.) para aumentar a confirmação e a confiabilidade do sinal.

Resumir

A estratégia de cruzamento EMA5 e EMA13 é uma estratégia de acompanhamento de tendências simples e fácil de usar para capturar mudanças na tendência de preços por meio de cruzamentos de EMAs de dois períodos diferentes. A vantagem da estratégia reside na simplicidade, adaptabilidade e alta atualidade, mas também existe o risco de falsos sinais, atraso e falta de parada. Para otimizar ainda mais o desempenho da estratégia, pode-se considerar a adição de filtros de tendência, configuração de paradas, parâmetros de otimização e combinação com outros métodos de indicadores técnicos.

Código-fonte da estratégia
/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 2d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Milankacha

//@version=5
strategy('5-13 EMA by Naimesh ver04', overlay=true)

qty = input(1, 'Buy quantity')

testStartYear = input(2021, 'Backtest Start Year')
testStartMonth = input(1, 'Backtest Start Month')
testStartDay = input(1, 'Backtest Start Day')
testStartHour = input(0, 'Backtest Start Hour')
testStartMin = input(0, 'Backtest Start Minute')
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, testStartMin)
testStopYear = input(2099, 'Backtest Stop Year')
testStopMonth = input(1, 'Backtest Stop Month')
testStopDay = input(30, 'Backtest Stop Day')
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title='Color Background?', defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? #00FF00 : na
testPeriod() => true


ema1 = input(5, title='Select EMA 1')
ema2 = input(13, title='Select EMA 2')
//ema3 = input(50, title='Select EMA 3')
//SL = input(70, title='Stoploss')
//TR = input(250, title='Target')

expo = ta.ema(close, ema1)
ma = ta.ema(close, ema2)
//EMA_50 = ta.ema(close, ema3)

//avg_1 = avg (expo, ma)
//s2 = ta.cross(expo, ma) ? avg_1 : na
//plot(s2, style=plot.style_line, linewidth=3, color=color.red, transp=0)

p1 = plot(expo, color=color.rgb(231, 15, 15), linewidth=2)
p2 = plot(ma, color=#0db63a, linewidth=2)
fill(p1, p2, color=color.new(color.white, 80))

longCondition = ta.crossover(expo, ma)

shortCondition = ta.crossunder(expo, ma)


if testPeriod()
    //strategy.entry('Long', strategy.long, when=longCondition)
    strategy.entry('Short', strategy.short, when=expo<ma)

//strategy.close("Long", expo<ma, comment= 'SL hit')
strategy.close("Short", expo>ma, comment= 'SL hit')



//plotshape(longCondition and close>EMA_50, title='Buy Signal', text='B', textcolor=color.new(#FFFFFF, 0), style=shape.labelup, size=size.normal, location=location.belowbar, color=color.new(#1B8112, 0))
//plotshape(shortCondition and close<EMA_50, title='Sell Signal', text='S', textcolor=color.new(#FFFFFF, 0), style=shape.labeldown, size=size.normal, location=location.abovebar, color=color.new(#FF5733, 0))