Tendência de média móvel dupla de acordo com a estratégia

Autora:ChaoZhang, Data: 2023-10-08 14:25:40
Tags:

Resumo

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.

Princípio

A estratégia utiliza duas médias móveis para determinar a direcção da tendência.

  1. Calcular a linha média do período curto p1 e do período longo p2.

  2. Determine se o preço está acima ou abaixo das linhas médias, gerando valores de bool para cima e para baixo.

  3. 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.

  4. Quando a tendência e a tendência_2 concordam, geram sinais longos ou curtos.

  5. Barras cheias de cores indicam visualmente a tendência.

  6. 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.

Vantagens

As principais vantagens desta estratégia são:

  1. A média móvel dupla reduz as falhas e fornece sinais de entrada confiáveis.

  2. O uso de dois prazos proporciona uma melhor precisão na determinação da tendência.

  3. Captura tendências mais longas, aproveitando-se de retrações de curto prazo.

  4. Lógica simples e fácil de entender adequada para todos os comerciantes.

  5. Períodos de média móvel personalizáveis permitem a otimização para qualquer mercado.

  6. A coloração visual da barra fornece uma direção de tendência intuitiva.

Riscos

Alguns riscos a considerar:

  1. Otimizar parâmetros ou adicionar filtros.

  2. Os Whipsaws ocorrem quando os mercados oscilam através de médias móveis.

  3. Considerem períodos mais curtos ou estratégias adicionais.

  4. A colocação incorreta de stop loss pode levar a grandes perdas quando as tendências revertem repentinamente.

  5. Não se considera qualquer análise fundamental, use discrição ao aplicar sinais.

Melhorias

Algumas formas de melhorar a estratégia:

  1. Adicione filtros adicionais como volume ou impulso para evitar batidas.

  2. Empregar períodos de adaptação que se ajustam com base nas condições do mercado.

  3. Adicionar regras de dimensionamento de posições baseadas na força da tendência para orientação.

  4. Implementar módulos de stop loss como trailing stops ou time exits para limitar as perdas.

  5. Considere o aprendizado de máquina para obter precisão de tendência e melhorar a lógica de entrada/saída.

  6. Incorporar fatores fundamentais como ganhos, eventos para evitar a negociação contra tendências maiores.

Conclusão

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)

Mais.