- Quadrado
- 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
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
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:
- Utiliza a média móvel exponencial semanal de 20 períodos (EMA1W20) como indicador principal de tendência
- Combinações com a média móvel simples de 100 dias (SMA1D100) para confirmação de tendência secundária
- Emprega a média móvel simples de 50 dias (SMA1D50) como referência de tendência a médio prazo
- 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
- 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
- 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
- Controlo razoável do risco: utiliza múltiplos cruzamentos de médias móveis e posições para limites de risco claros
- Alta adaptabilidade: os parâmetros da estratégia podem ser ajustados para diferentes ambientes de mercado
- Execução clara: os sinais de negociação são bem definidos e adequados para execução programática
Riscos estratégicos
- Risco de atraso: as médias móveis têm inerentemente algum atraso, potencialmente causando entradas atrasadas
- Risco de mercado lateral: pode gerar sinais de ruptura falsos frequentes em mercados variados
- Sensibilidade dos parâmetros: os parâmetros ideais podem variar em diferentes ambientes de mercado
- Risco de retirada: pode ocorrer uma retirada significativa durante uma inversão súbita da tendência
- 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
- Incorporar indicadores de volume: adicionar mecanismo de confirmação de volume para melhorar a confiabilidade do sinal
- Otimizar a adaptação dos parâmetros: desenvolver mecanismos dinâmicos de ajuste dos parâmetros
- Adicionar condições de filtragem: considerar a adição de indicadores do ambiente de mercado
- Melhorar o mecanismo de stop-loss: elaborar regras mais detalhadas de stop-loss e de obtenção de lucros
- 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.