Estratégia de crossover de média móvel


Data de criação: 2024-02-19 14:21:10 última modificação: 2024-02-19 14:21:10
cópia: 2 Cliques: 533
1
focar em
1617
Seguidores

Estratégia de crossover de média móvel

Visão geral

Esta estratégia é baseada em uma cruz de média móvel simples e média móvel ponderada para gerar um sinal de negociação, enquanto combina paradas e paradas para gerenciar a posição. A estratégia combina fatores dinâmicos (crossover de média móvel) e estáticos (relação de paradas e paradas de paradas fixas) para atingir o efeito de intersecção estática.

Princípio da estratégia

A lógica central é calcular uma média móvel de dois períodos diferentes, uma média móvel simples de 9 dias e uma média móvel ponderada de 21 dias. Um sinal de compra é gerado quando uma média móvel ponderada de 21 dias é percorrida sobre uma média móvel simples de 9 dias de períodos curtos; um sinal de venda é gerado quando uma média móvel ponderada de 21 dias é percorrida sobre uma média móvel simples de 9 dias de períodos curtos.

Depois de receber o sinal, a ordem de acordo com a configuração de stop loss proporção. Por exemplo, se o stop loss proporção é de 5%, o preço de parada é definido como 95% do preço de entrada. Se o stop loss proporção é de 5%, o preço de parada é definido como 105% do preço de entrada. Isso permite a combinação de fatores dinâmicos (quando a média móvel cruzada determina o tempo de entrada e saída) e estáticos (quando a stop loss proporção é fixa).

Análise de vantagens

A estratégia combina indicadores técnicos dinâmicos e parâmetros de estratégia estática, com os benefícios de um sistema dinâmico. Os indicadores técnicos podem capturar as características do mercado de forma dinâmica, o que é útil para entender a tendência; enquanto a configuração de parâmetros oferece controle de risco e retorno estático, o que é útil para reduzir a aleatoriedade da gestão de posições.

Em comparação com o sistema puramente dinâmico, esta estratégia é mais robusta no gerenciamento de posições e pode reduzir o impacto de decisões irracionais. Em comparação com o sistema puramente estático, as opções de entrada desta estratégia são mais flexíveis e podem se adaptar às mudanças do mercado. Portanto, esta estratégia é mais robusta e lucrativa em geral.

Análise de Riscos

O risco desta estratégia vem principalmente de dois lados. Um é a possibilidade de que a média móvel produza um sinal errado. Quando o mercado está em um arranjo de choque, a média móvel pode se cruzar com frequência, deixando a estratégia presa.

A contra-medida consiste em evitar os pontos críticos de tempo e reduzir a probabilidade de sinais errados. A contra-medida consiste em ativar um algoritmo de parada de perda adaptável com base na volatilidade do mercado e em eventos especiais, para que a parada de perda se ajuste ao mercado.

Direção de otimização

A estratégia pode ser melhorada em alguns aspectos:

  1. Testar diferentes combinações de parâmetros para encontrar o melhor;

  2. Aumentar as condições de filtragem para evitar sinais de invalidez;

  3. Aplicação de algoritmos adaptativos de parada de perdas para interagir com o mercado;

  4. A análise de tendências fortes e fracas, combinadas com outros indicadores, para evitar mercados de choque;

  5. Parâmetros de otimização automática usando métodos de aprendizagem de máquina.

Testando diferentes parâmetros, aumentando as condições de filtragem, melhorando o stop-loss e julgando as tendências, pode-se aumentar ainda mais a estabilidade e a taxa de retorno da estratégia.

Resumir

Esta estratégia combina com sucesso indicadores dinâmicos e parâmetros estáticos, combinando flexibilidade e robustez. Comparativamente às estratégias puramente dinâmicas e puramente estáticas, a estratégia tem um desempenho melhor em geral. Claro, ainda há espaço para otimização, e métodos como ajuste de parâmetros, condições de filtragem, stop loss adaptativo e aprendizado de máquina podem melhorar o efeito da estratégia.

Código-fonte da estratégia
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("WMA vs MMA Crossover Strategy with SL/TP", shorttitle="WMA_MMA_Cross_SL_TP", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Définition des périodes pour les moyennes mobiles
wmaLength = input.int(9, title="WMA Length")
mmaLength = input.int(21, title="MMA Length")

// Paramètres de Stop Loss et Take Profit en pourcentage
stopLossPercentage = input.float(5, title="Stop Loss (%)") / 100
takeProfitPercentage = input.float(5, title="Take Profit (%)") / 100

// Calcul des moyennes mobiles
wmaValue = ta.wma(close, wmaLength)
mmaValue = ta.sma(close, mmaLength)

// Conditions pour les signaux d'achat et de vente
buySignal = ta.crossover(wmaValue, mmaValue)
sellSignal = ta.crossunder(wmaValue, mmaValue)

// Génération des ordres en fonction des signaux
if buySignal
    strategy.entry("Buy", strategy.long)
    strategy.exit("Exit Buy", "Buy", stop=strategy.position_avg_price * (1 - stopLossPercentage), limit=strategy.position_avg_price * (1 + takeProfitPercentage))

if sellSignal
    strategy.entry("Sell", strategy.short)
    strategy.exit("Exit Sell", "Sell", stop=strategy.position_avg_price * (1 + stopLossPercentage), limit=strategy.position_avg_price * (1 - takeProfitPercentage))

// Affichage des moyennes mobiles sur le graphique
plot(wmaValue, color=color.blue, title="WMA")
plot(mmaValue, color=color.red, title="MMA")

// Affichage des signaux sur le graphique pour référence
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="BUY")
plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="SELL")