Estratégia de negociação de cruzamento de média móvel dupla Golden Cross e Death Cross


Data de criação: 2023-10-11 14:49:54 última modificação: 2023-10-11 14:49:54
cópia: 0 Cliques: 754
1
focar em
1617
Seguidores

Esta estratégia utiliza principalmente o cruzamento de duas médias móveis de Hull de diferentes períodos de tempo para avaliar a tendência do mercado e executar operações de curto e longo prazo.

Princípio da estratégia

A estratégia usa duas médias móveis de Hull, com 60 e 175 ciclos, respectivamente.

  1. hullma é a média móvel de Hull de 60 períodos, calculada através da função wma ≠

  2. ahullma é a média móvel de Hull de 175 ciclos, calculada através da função wma ≠ ∞.

  3. Quando a hullma atravessa a ahullma de baixo para cima, gera uma cruz dourada, fazendo um sinal de multiplicação.

  4. Quando o hullma cai de cima para baixo sobre o ahullma, gera-se um “dead fork”, um sinal de vazio.

  5. longCondition e shortCondition julgarão as condições de excesso e de falta, respectivamente.

  6. A função strategy.entry é usada para executar várias operações de vazio.

A estratégia usa o princípio do cruzamento, julgando que a linha média de curto prazo e a linha média de longo prazo se cruzam para capturar as mudanças nas tendências de curto e longo prazo da situação, a fim de lucrar.

Análise de vantagens

  1. A média móvel de Hull permite capturar mudanças de preços mais rapidamente.

  2. O princípio da dupla equação de interseção é simples e fácil de entender e operar.

  3. A combinação de 60 e 175 ciclos capta tendências de curto e médio prazo.

  4. Parâmetros de ciclo personalizáveis para diferentes mercados e variedades.

  5. Flexível para uso no dia a dia e para negociação de posições.

Análise de Riscos

  1. A dupla equidistância tem um certo atraso, e não é permitida a entrada no momento.

  2. A média de curto período pode ser maior em falsos sinais.

  3. A frequência de interseções pode causar prejuízos em situações de tremores.

  4. A configuração do ciclo é errada e não consegue captar as mudanças de tendência.

  5. Os parâmetros de ciclo devem ser apropriadamente otimizados, e as diferentes variedades precisam de ajustes.

O risco pode ser mitigado através da combinação de outros indicadores de filtragem de sinais, otimização de parâmetros de ciclo, e de uma tolerância adequada de stop loss.

Direção de otimização

  1. Teste diferentes combinações de equilíbrio para encontrar o melhor ciclo.

  2. Adicione indicadores como o índice de tendência para filtrar.

  3. Otimizar a estratégia de stop loss e reduzir a frequência de stop loss.

  4. Diferentes variedades podem ajustar os parâmetros de ciclo.

  5. Algoritmos de aprendizagem de máquina e parâmetros de otimização dinâmica.

Resumir

A estratégia utiliza o princípio do cruzamento dourado com o forco morto para julgar a tendência do mercado através do cruzamento de duas médias móveis de Hull, e pertence à típica estratégia de negociação de linha dupla de curto prazo. A vantagem é a simplicidade da ideia, a facilidade de operação e a capacidade de capturar tendências de curto prazo mais rápidas. Mas também há um alto risco de falso sinal e problemas de atraso.

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

//@version=4
strategy(title = "Hull MA", shorttitle="Junior2", overlay = true)

//HULL MA 1

length = input(60, minval=1,title="HULL MA 1 LENGTH")
src = input(close, title="Source")
hullma = wma(2*wma(src, length/2)-wma(src, length), round(sqrt(length)))

plot(hullma, color=color.green)

//HULLMA 2

alength = input(175, minval=1,title="HULL MA 2 LENGTH")
asrc = input(close, title="Source")
ahullma = wma(2*wma(asrc, alength/2)-wma(asrc, alength), round(sqrt(alength)))

plot(ahullma, color=color.green)

c1up= crossover(hullma,ahullma)
c1down= crossunder(hullma,ahullma)

longCondition = c1up
if longCondition

    strategy.entry("L", strategy.long)


shortCondition = c1down 
if shortCondition

    strategy.entry("S", strategy.short)

plot(close)