A estratégia de cruzamento da média móvel é uma estratégia de seguimento de tendência que usa o cruzamento de diferentes médias móveis de período para determinar a direção da tendência do mercado e gerar sinais de compra e venda. Esta estratégia usa o cruzamento de médias móveis simples (SMA) de 3 períodos e 50 períodos para fazer julgamentos. Quando a SMA de curto prazo cruza acima da SMA de longo prazo, é considerada um sinal de alta para comprar. Quando a SMA de curto prazo cruza abaixo da SMA de longo prazo, é considerada um sinal de baixa para vender.
Esta estratégia calcula as médias móveis simples de 3 períodos e 50 períodos. Quando o SMA de 3 dias cruza acima do SMA de 50 dias, ele indica que a tendência de curto prazo se tornou alta e um sinal de compra é gerado. Quando o SMA de 3 dias cruza abaixo do SMA de 50 dias, ele indica que a tendência de curto prazo se tornou baixa e um sinal de venda é gerado. Para reduzir negociações desnecessárias, um SMA mediano de 40 dias também é adicionado.
A chave para esta estratégia é usar médias móveis de diferentes períodos para dividir as flutuações do mercado em diferentes estágios. A SMA de 3 dias representa a tendência de curto prazo, a SMA de 50 dias representa a tendência de médio prazo e seu cruzamento representa a conversão de tendências de curto e médio prazo, que podem capturar mudanças de preço em diferentes horizontes de tempo. Através dessa análise de vários prazos, ele pode julgar pontos de virada no mercado com bastante precisão.
Crossover claro de momentum e sinais explícitos: o crossover de SMAs de períodos diferentes pode determinar efetivamente as mudanças nas tendências de curto e médio prazo, evitando interferências de flutuações menores do mercado.
O rápido stop loss através da passagem do SMA3 abaixo do SMA40 reduz as perdas e controla os riscos.
Uma lógica estratégica simples e clara, fácil de implementar.
Flexibilidade para ajustar os parâmetros da SMA para diferentes condições de mercado e instrumentos de negociação.
Podem incorporar outros indicadores técnicos ou fundamentais para validação combinada, a fim de evitar falsos sinais.
Os sinais de cruzamento frequentes da SMA podem conduzir a uma troca excessiva em mercados laterais ou não em tendência, aumentando os custos.
A SMA tem natureza atrasada, os sinais podem vir depois que o preço já se moveu substancialmente dos níveis ideais.
Os parâmetros fixos da SMA podem não corresponder a todas as condições de mercado, sendo necessária uma otimização.
A confiança num único indicador torna a estratégia vulnerável ao fracasso.
Otimizar os períodos SMA para encontrar as melhores combinações de parâmetros.
Adicione osciladores como estocástico, MACD para validar sinais e evitar sinais falsos.
Ajustar o tamanho das posições e o stop loss com base na evolução das condições de mercado.
Considere adicionar indicadores fundamentais como ganhos, notícias.
Use indicadores de volume, entre em breakouts de alto volume.
A estratégia de cruzamento de média móvel julga as mudanças nas tendências de curto e médio prazo cruzando SMAs de diferentes períodos e toma ações de tendência. É uma estratégia de tendência simples e direta. As vantagens são sua lógica clara e facilidade de implementação. O desempenho pode ser aprimorado através da otimização de parâmetros e validação de combinações.
/*backtest start: 2022-10-10 00:00:00 end: 2023-10-16 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/ // © Geduldtrader //@version=4 strategy("MA Crossover", overlay = true) start = timestamp(2009,2,1,0,0) sma50 = sma(close, 50) sma40 = sma(close, 40) sma3 = sma(close, 3) plot(sma50,title='50', color=#00ffaa, linewidth=2) plot(sma3,title='3', color=#2196F3, linewidth=2) long = crossover(sma3,sma50) neut = crossunder(close,sma50) short = crossunder(sma3,sma40) if time >= start strategy.entry("Long", strategy.long, 10.0, when=long) strategy.close("Long", when = short) strategy.close("Long", when = neut) plot(close)