O recurso está a ser carregado... Carregamento...

Média móvel múltipla de tendência após estratégia - Sistema de sinalização de investimento a longo prazo baseado nos indicadores EMA e SMA

Autora:ChaoZhang, Data: 2024-12-13 10:28:02
Tags:EMASMA

img

Resumo

Esta estratégia é um sistema de seguimento de tendências baseado em combinação de múltiplas médias móveis, principalmente utilizando o cruzamento e as relações de posição entre a EMA20 semanal, a SMA100 diária, a SMA50 diária e a EMA20 diária para capturar oportunidades de investimento de médio a longo prazo.

Princípios de estratégia

A lógica central da estratégia baseia-se nas seguintes condições-chave:

  1. Utiliza a média móvel exponencial semanal de 20 períodos (EMA1W20) como indicador principal de tendência
  2. Combinações com a média móvel simples de 100 dias (SMA1D100) para confirmação de tendência secundária
  3. Emprega a média móvel simples de 50 dias (SMA1D50) como referência de tendência a médio prazo
  4. Utiliza a média móvel exponencial de 20 dias (EMA1D20) para confirmação da tendência a curto prazo O sistema gera um sinal longo quando o preço se mantém acima da EMA1W20 e SMA1D100 por 14 dias consecutivos e depois cai abaixo da SMA1D50.

Vantagens da estratégia

  1. Validação de quadros de tempo múltiplos: combina médias móveis semanais e diárias para uma avaliação da tendência mais abrangente
  2. Condições de entrada rígidas: Requer que o preço se mantenha acima das principais médias móveis por uma duração suficiente, filtrando efetivamente os falsos sinais
  3. Controlo razoável do risco: utiliza múltiplos cruzamentos de médias móveis e posições para limites de risco claros
  4. Alta adaptabilidade: os parâmetros da estratégia podem ser ajustados para diferentes ambientes de mercado
  5. Execução clara: os sinais de negociação são bem definidos e adequados para execução programática

Riscos estratégicos

  1. Risco de atraso: as médias móveis têm inerentemente algum atraso, potencialmente causando entradas atrasadas
  2. Risco de mercado lateral: pode gerar sinais de ruptura falsos frequentes em mercados variados
  3. Sensibilidade dos parâmetros: os parâmetros ideais podem variar em diferentes ambientes de mercado
  4. Risco de retirada: pode ocorrer uma retirada significativa durante uma inversão súbita da tendência
  5. Risco de execução: requer funcionamento estável do sistema para evitar perdas de sinal ou atrasos de execução

Orientações para a otimização da estratégia

  1. Incorporar indicadores de volume: adicionar mecanismo de confirmação de volume para melhorar a confiabilidade do sinal
  2. Otimizar a adaptação dos parâmetros: desenvolver mecanismos dinâmicos de ajuste dos parâmetros
  3. Adicionar condições de filtragem: considerar a adição de indicadores do ambiente de mercado
  4. Melhorar o mecanismo de stop-loss: elaborar regras mais detalhadas de stop-loss e de obtenção de lucros
  5. Melhorar a confirmação do sinal: considerar a adição de outros indicadores técnicos para a confirmação auxiliar

Resumo

Esta estratégia estabelece uma tendência relativamente abrangente seguindo o sistema através de múltiplas combinações de médias móveis, adequado para investidores de médio a longo prazo.


/*backtest
start: 2024-11-12 00:00:00
end: 2024-12-11 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © petitepupu

//@version=5

ema20wTemp = ta.ema(close, 20)
ema20w = request.security(syminfo.tickerid, "1W", ema20wTemp, barmerge.gaps_on, barmerge.lookahead_off)
sma100d = ta.sma(close, 100)
sma50d = ta.sma(close, 50)
ema20d = ta.ema(close, 20)
daysAbove = input.int(14, title="Days", minval=1)
plot(ema20w, color=color.blue)
plot(sma100d, color=color.yellow)
plot(sma50d, color=color.red)
plot(ema20d, color=color.green)

longCondition = true
clean = true
for i = 0 to daysAbove
    if close[i] < ema20w or close[i] < sma100d or close > sma50d
        longCondition := false
        clean := false
        break

//TODO: 
if clean != true
    longCondition := true
    for i = 0 to daysAbove
        if close[i] > ema20w or close[i] > sma100d or close >= ema20d or -100 * (close - ema20d)/ema20d < 5.9
            longCondition := false
            break


// plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal", size = size.small)

if (longCondition)
    strategy.entry("Long", strategy.long)

    
strategy(title="LT Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=800)

Relacionados

Mais.