Estratégia de média móvel golden cross e dead cross


Data de criação: 2023-09-21 10:47:24 última modificação: 2023-09-21 10:47:24
cópia: 0 Cliques: 639
1
focar em
1617
Seguidores

Visão geral

Esta estratégia é baseada em três médias móveis de ouro e forquilha para o comércio. Faça mais quando você atravessa a linha de velocidade média e a linha de velocidade média quando você atravessa a linha de velocidade média abaixo da média móvel rápida e a linha de velocidade média quando você atravessa a linha de velocidade lenta.

Princípio da estratégia

  1. Configure três médias móveis de diferentes períodos: linha rápida, linha média e linha lenta
  2. Faça mais quando a linha rápida atravessa a linha média e a linha média atravessa a linha lenta
  3. Quando a linha rápida atravessa a linha de velocidade média e a linha de velocidade média atravessa a linha de velocidade lenta, faça espaço
  4. Delay de entrada configurável, filtro de falha de ruptura
  5. Quando o sinal de inversão é disparado

Especificamente, a estratégia usa o cruzamento entre três médias móveis de diferentes períodos para negociar. A linha rápida representa a tendência atual de curto prazo, a linha média representa a tendência de médio prazo e a linha lenta representa a tendência de longo prazo. Quando a sequência de três linhas médias e longas se cruza para cima, indica o início da tendência, fazendo mais; Quando ocorre um cruzamento para baixo, indica a reversão da tendência, fazendo vazio.

Análise de vantagens

  1. O uso de três linhas de equilíbrio para avaliar mudanças na direção da tendência aumenta a precisão
  2. A entrada tardia pode filtrar a falsa brecha e evitar ser presa.
  3. A lógica de transação é simples, intuitiva e fácil de entender.
  4. Parâmetros de linha média flexíveis para diferentes períodos
  5. Negociar a favor e evitar o risco de negociação a contra

Análise de Riscos

  1. O período de maior duração requer maior tempo de detenção, com risco de expansão de perdas.
  2. A trilha do cruzamento está atrasada e pode ter perdido o melhor ponto de entrada.
  3. Parâmetros de linha média precisam ser otimizados, caso contrário, o sinal pode ser impreciso
  4. A posse de longo prazo requer risco noturno

O risco pode ser gerenciado por meio de ajustes no tempo de posse, otimização dos parâmetros da linha média e introdução de estratégias de stop loss.

Direção de otimização

  1. Testar diferentes parâmetros de periodicidade mediana para encontrar o parâmetro ideal
  2. Avaliação dos pontos positivos e negativos de diferentes atrasos de entrada por filtragem de sinais
  3. Introdução de estratégias de stop loss, ajustando as posições de stop loss de acordo com a realidade
  4. Estudar as preferências de parâmetros de diferentes variedades e criar um sistema de otimização de parâmetros
  5. Testar o aumento de reentrada e regras de acréscimo para otimizar a posse

Resumir

Esta estratégia baseia-se na direção da tendência. A vantagem é que os sinais de negociação são simples e claros e configuráveis; A desvantagem é que é fácil atrasar e precisar de otimização de parâmetros.

Código-fonte da estratégia
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © DaynTrading

//@version=4
// strategy(
//      title="Simple Moving Average Cross",
//      overlay=true,
//      initial_capital=5000,
//      default_qty_type=strategy.percent_of_equity,
//      default_qty_value=2,
//      commission_type=strategy.commission.percent,
//      commission_value=0.075,
//      pyramiding=0
//      )

sma_top_input = input(title="SMA Top", type=input.integer, defval=20)
sma_mid_input = input(title="SMA Mid", type=input.integer, defval=50)
sma_low_input = input(title="SMA Low", type=input.integer, defval=200)

bars_long = input(title="Long: After trigger, how many bars to wait?", type=input.integer, defval=5)
bars_short = input(title="Short: After trigger, how many bars to wait?", type=input.integer, defval=5)

sma_top = sma(close, sma_top_input)
sma_mid = sma(close, sma_mid_input)
sma_low = sma(close, sma_low_input)

long = sma_top > sma_mid and sma_mid > sma_low
short = sma_top < sma_mid and sma_mid < sma_low

long_condition = long and long[bars_long] and not long[bars_long + 1]
short_condition = short and short[bars_short] and not short[bars_short + 1]

close_long = sma_top < sma_mid and sma_mid < sma_low and not long[bars_long + 1]
close_short = sma_top > sma_mid and sma_mid > sma_low and not short[bars_short + 1]

plot(sma_top, title="SMA Top", color=#95f252, linewidth=2)
plot(sma_mid, title="SMA Mid", color=#FF1493, linewidth=2)
plot(sma_low, title="SMA Low", color=#6a0dad, linewidth=2)

strategy.entry("LongPosition", strategy.long, when = long_condition)
strategy.entry("ShortPosition", strategy.short, when = short_condition)
    
strategy.close("LongPosition", when = close_short)
strategy.close("ShortPosition", when = close_long)