A estratégia de seguimento de tendência de média móvel dupla é uma estratégia de seguimento de tendência que usa duas médias móveis para determinar a tendência de preço.
A estratégia utiliza duas médias móveis para determinar a direcção da tendência.
Calcular a linha média do período curto p1 e do período longo p2.
Determine se o preço está acima ou abaixo das linhas médias, gerando valores de bool para cima e para baixo.
Usar o SMA para suavizar os valores para cima e para baixo, determinando a tendência da direção da tendência e a tendência_2.
Quando a tendência e a tendência_2 concordam, geram sinais longos ou curtos.
Barras cheias de cores indicam visualmente a tendência.
Entre em negociações quando as tendências de curto e longo prazo concordarem.
A comparação da média móvel dupla cria a lógica central. A negociação com acordo de tendência em dois prazos reduz as falhas de ruptura. As tendências concordantes indicam um movimento de alta convicção, reduzindo o risco nas entradas.
As principais vantagens desta estratégia são:
A média móvel dupla reduz as falhas e fornece sinais de entrada confiáveis.
O uso de dois prazos proporciona uma melhor precisão na determinação da tendência.
Captura tendências mais longas, aproveitando-se de retrações de curto prazo.
Lógica simples e fácil de entender adequada para todos os comerciantes.
Períodos de média móvel personalizáveis permitem a otimização para qualquer mercado.
A coloração visual da barra fornece uma direção de tendência intuitiva.
Alguns riscos a considerar:
Otimizar parâmetros ou adicionar filtros.
Os Whipsaws ocorrem quando os mercados oscilam através de médias móveis.
Considerem períodos mais curtos ou estratégias adicionais.
A colocação incorreta de stop loss pode levar a grandes perdas quando as tendências revertem repentinamente.
Não se considera qualquer análise fundamental, use discrição ao aplicar sinais.
Algumas formas de melhorar a estratégia:
Adicione filtros adicionais como volume ou impulso para evitar batidas.
Empregar períodos de adaptação que se ajustam com base nas condições do mercado.
Adicionar regras de dimensionamento de posições baseadas na força da tendência para orientação.
Implementar módulos de stop loss como trailing stops ou time exits para limitar as perdas.
Considere o aprendizado de máquina para obter precisão de tendência e melhorar a lógica de entrada/saída.
Incorporar fatores fundamentais como ganhos, eventos para evitar a negociação contra tendências maiores.
Em resumo, a estratégia de seguimento de tendências de média móvel dupla fornece uma abordagem simples e prática para a identificação de tendências. Combinando perspectivas de curto e longo prazo, gera sinais de entrada de alta confiança adequados para a maioria dos traders de tendências. Os riscos existem e podem ser mitigados por meio de otimização, gerenciamento de riscos e discrição.
/*backtest start: 2022-10-01 00:00:00 end: 2023-10-07 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // My Tradingview Scripts : https://bit.ly/2HKtr7k strategy("UniDir Strategy", overlay=true, initial_capital=50000, default_qty_value=50000, default_qty_type=strategy.cash, slippage=3, commission_type=strategy.commission.percent, commission_value=0.075, pyramiding=0) p1=input(14) p2=input(21) Price = close mid = (highest(high, p1)+lowest(low, p1)) / 2 mid_2 = (highest(high, p2)+lowest(low, p2)) / 2 //Trend up = Price > mid ? 1 : 0 up_2 = Price > mid_2 ? 1 : 0 down = Price < mid ? 1 : 0 down_2 = Price < mid_2 ? 1 : 0 trend = sma(up, 2) == 1 ? 1 : sma(down, 2) == 1 ? -1 : nz(trend[1]) trend_2 = sma(up_2, 2) == 1 ? 1 : sma(down_2, 2) == 1 ? -1 : nz(trend_2[1]) dir1=trend==1 ? lime : red dir2=trend_2==1 ? lime : red dir_all=trend==1 and trend_2==1 ? lime : red top_p=plot(1) hi_p=plot(0.4) mid_p=plot(0.2) lo_p=plot(0) fill(hi_p,mid_p,color=dir1,transp=80) fill(lo_p,mid_p,color=dir2,transp=80) fill(top_p,hi_p,color=dir_all,transp=0) // Entry long_cond = trend==1 and trend_2==1 short_cond = trend==-1 and trend_2==-1 if long_cond strategy.entry("Long",strategy.long) if short_cond strategy.entry("Short",strategy.short)