Top Trading Based Only on Weekly EMA8 Strategy (Tónico baseado na estratégia semanal do EMA8)

Autora:ChaoZhang, Data: 21-12-2023 11:52:04
Tags:

img

Resumo

Esta estratégia é uma adaptação da configuração EMA8 do famoso YouTuber de criptomoedas brasileiro Augusto Backes.

Estratégia lógica

  • É executado num período de tempo diário e utiliza a EMA semanal 8 como suporte e filtro de tendência
  • Os gatilhos de sinal de compra quando a vela diária fecha acima da EMA8 semanal com padrões de preços de alta como engulfing, hammer ou reversão do preço de fechamento
  • A venda desencadeia o sinal quando a vela diária fecha abaixo da EMA8 semanal com padrões de baixa como engulfing, shooting star ou vela de onda alta
  • Entradas e saídas executar em fechamento de vela sem paradas. 100% posicionamento dimensionamento

A estratégia utiliza a EMA de forma eficiente como suporte e controla razoavelmente a frequência das transações para capturar breakouts confiáveis nas principais tendências para um perfil de risco-retorno elevado.

Análise das vantagens

  • Aumentar a fiabilidade através da utilização de EMAs para avaliar as principais tendências e apoio
  • Negociar apenas em torno dos níveis-chave para melhorar a taxa de ganho e evitar negociações desnecessárias
  • Localização precisa das transacções e sinais claros significam uma excelente relação risco/recompensa
  • Adequado para os comerciantes de swing.

Análise de riscos

  • O dimensionamento da posição completa corre o risco de grandes perdas em movimentos extremos
  • Relativamente poucas profissões exigem uma forte psicologia e capital suficiente
  • Potencial de lucro limitado em comparação com as estratégias de tendência

Melhorias:

  • Adicionar módulo de dimensionamento de posições com base na volatilidade ou no capital
  • Implementar o stop loss para aumentar o limite de perdas em operações individuais
  • Encontre melhores filtros de negociação e condições de saída para aumentar a taxa de vitória

Conclusão

Em resumo, esta é uma estratégia de negociação swing muito prática. Utiliza indicadores técnicos-chave para identificar oportunidades confiáveis nas principais tendências. A lógica é simples e fácil de implementar para os traders de médio a longo prazo. Com o tamanho adequado da posição e o gerenciamento de risco, pode alcançar retornos fantásticos ao longo do tempo.


/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
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/
// © Valente_F

//@version=4
strategy("Só Trade Top - Média de 8 - Augusto Backes", overlay=true, max_bars_back = 5000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, initial_capital = 10000, commission_type = strategy.commission.percent, process_orders_on_close = true)

tipo_media = input(title="Tipo de Média", defval="EMA", options=["SMA", "EMA"],inline = "3",  group = "SETUP MÉDIA DE 8", tooltip = "Média utilizada para os cálculos do Setup")
c_media = input(defval = 8, title = "Comprimento", type = input.integer,inline = "3",  group = "SETUP MÉDIA DE 8")

cb_raro = input(true, title="Habilitar Sinal Raro", group = "SETUP MÉDIA DE 8", tooltip = "Sinais normais são caracterizados por Engolfos, Martelos e Preço de Fechamento de Reversão com FECHAMENTO acima da Média de 8. Sinais Raros são caracterizados pelas mesmas figuras, mas com FECHAMENTO e ABERTURA acima da média de 8. O mesmo vale para sinais de venda.")


media8 = tipo_media == "SMA" ? security(syminfo.tickerid, "1W", sma(close[1], c_media)) : security(syminfo.tickerid, "1W", ema(close[1], c_media))

plot(media8, title = "Média", color = color.green, linewidth = 2)

lookback_swing=5

candle_engolfo = (close > open and close[1] < open[1] and close >= open[1] and open <= close[1] ) and close>media8
candle_martelo = 2*abs(close-open) < (min(close, open)-low) and (high - max(close, open)) < abs(close-open) and close>open and close>media8
candle_fr = low < low[1] and low < low[2] and close > close[1] and close > open  and close>media8

compra = (candle_engolfo or candle_martelo or candle_fr) 

vcandle_engolfo = (close < open and close[1] > open[1] and close <= open[1] and open >= close[1]) and close<media8
vcandle_martelo = 2*abs(close-open) < (high-max(close, open)) and (min(close, open)-low) < abs(close-open) and close<open  and close<media8
vcandle_fr = high > high[1] and high > high[2] and close < close[1] and close < open  and close<media8

venda = (vcandle_engolfo or vcandle_martelo or vcandle_fr) 

if cb_raro
    compra := compra and open > media8
    venda := venda and open <media8
else
    compra := compra
    venda := venda

barcolor(compra and strategy.position_size==0?color.green:venda and strategy.position_size>0?color.red : color.new(color.black, 100))

plotshape(compra and candle_engolfo and strategy.position_size==0, title = "Engolfo de Alta", style = shape.labeldown, color = color.green, text = "Engolfo de Alta", textcolor = color.white)
plotshape(compra and candle_martelo and strategy.position_size==0, title = "Martelo de Alta", style = shape.labeldown, color = color.green, text = "Martelo de Alta", textcolor = color.white)
plotshape(compra and candle_fr and strategy.position_size==0, title = "PFR de Alta", style = shape.labeldown, color = color.green, text = "PFR de Alta", textcolor = color.white)


plotshape(venda and vcandle_engolfo and strategy.position_size>0, title = "Engolfo de Baixa", style = shape.labelup, location =  location.belowbar, color = color.red, text = "Engolfo de Baixa", textcolor = color.white)
plotshape(venda and vcandle_martelo and strategy.position_size>0, title = "Martelo de Baixa", style = shape.labelup, location =  location.belowbar, color = color.red, text = "Martelo de Baixa", textcolor = color.white)
plotshape(venda and vcandle_fr and strategy.position_size>0, title = "PFR de Baixa", style = shape.labelup, location =  location.belowbar, color = color.red, text = "PFR de Baixa", textcolor = color.white)


strategy.entry("Compra", true, when = compra)

strategy.close("Compra", when = venda)


Mais.