Estratégia de combinação de indicadores de cruzamento e inversão da média móvel

Autora:ChaoZhang, Data: 2023-12-13 15:20:20
Tags:

img

Resumo

Esta estratégia integra a média móvel, o índice de força relativa e o índice do canal de commodities, formando uma estratégia relativamente completa de acompanhamento de tendências e combinação de indicadores.

Princípio da estratégia

  1. Use hl2 para calcular o preço médio.

  2. Calcule o indicador CCI de 14 períodos para julgar a tendência principal. Quando o CCI é maior que 0, a tendência é ascendente. Quando menor que 0, a tendência é descendente.

  3. Calcule a linha rápida do indicador RSI de 14 períodos e a linha lenta do indicador RSI de 50 períodos. Quando a linha rápida cruza acima da linha lenta, um sinal de compra é gerado. Quando a linha rápida cruza abaixo da linha lenta, um sinal de venda é gerado.

  4. Os sinais de negociação reais são gerados apenas quando o indicador CCI também corresponde à direção do sinal do indicador RSI. Ou seja, compre apenas quando o CCI for maior que 0 e a linha rápida do RSI cruzar acima da linha lenta, e venda apenas quando o CCI for menor que 0 e a linha rápida do RSI cruzar abaixo da linha lenta.

  5. Comparar o preço com a média móvel de 14 períodos de hl2 para ajudar a julgar a tendência menor, a fim de evitar falhas. Um sinal de compra é gerado apenas quando o preço está acima da média móvel de 14 períodos de hl2 e o indicador RSI cruza para cima. Um sinal de venda é gerado apenas quando o preço está abaixo da média móvel de 14 períodos de hl2 e o indicador RSI cruza para baixo.

Análise das vantagens

  1. Esta estratégia integra o julgamento da tendência e os sinais de reversão para entrar em tempo após o início da tendência e usa indicadores de sinal de reversão para determinar pontos de saída, obtendo assim melhores retornos.

  2. O índice do canal de commodities determina com precisão as principais direções de tendência, evitando escolhas incorretas de direções de negociação.

  3. Os cruzamentos rápidos e lentos de linhas do índice de força relativa servem como sinais favoráveis confiáveis, evitando o problema de atraso das médias móveis e podem capturar as reversões de preços em tempo hábil.

  4. A comparação dos preços com as linhas médias pode filtrar ainda mais falhas que causam sinais errôneos.

  5. Em geral, esta estratégia apresenta uma boa estabilidade e apresenta bons resultados em tendências fortes.

Análise de riscos

  1. Esta estratégia é sensível às variedades comerciais, exigindo otimização de parâmetros para variedades específicas.

  2. As definições dos parâmetros, tais como as médias móveis de 14 períodos e as médias móveis de 50 períodos, devem ser ajustadas de acordo com os diferentes mercados.

  3. Confiar apenas no CCI para determinar a direcção da tendência principal ainda não é perfeito o suficiente, com algum atraso.

  4. A combinação de indicadores de sinal de reversão é relativamente grande, o que pode levar a um certo grau de otimização excessiva.

Orientações de otimização

  1. Considerar a adição de mais indicadores para avaliar as principais tendências, tais como DMI, ADX, etc., para tornar os julgamentos de tendências mais precisos.

  2. Aumentar a lógica de stop loss. Por exemplo, depois que um sinal de reversão aparece, se o preço voltar a ser chamado por uma certa amplitude, a saída de stop loss pode ser considerada para reduzir as perdas.

  3. Otimizar parâmetros para torná-los mais adequados para variedades de negociação específicas, por exemplo, aumentar o parâmetro de ciclo da linha lenta ou ajustar o método de cálculo do preço médio, etc.

  4. Construir uma combinação de otimização de parâmetros para selecionar os parâmetros ideais para diferentes variedades, o que pode melhorar muito a aplicabilidade das estratégias.

  5. Adicionar indicadores de momento para evitar sinais enganosos quando o momento for insuficiente.

Conclusão

A estrutura geral desta estratégia é completa, integrando o julgamento da tendência e indicadores de reversão, que teoricamente podem obter excelente desempenho. Mas na aplicação real, ainda precisa de otimização de parâmetros e modelos para as variedades comerciais para reduzir o risco de sobreajuste.


/*backtest
start: 2022-12-06 00:00:00
end: 2023-12-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SuchitRaju

//@version=4
strategy("MA RSI CCI")

price_up = if(close > open and close > sma(hl2,14))
    1
else
    0

price_down = if(open > close and close < sma(hl2,14))
    1
else
    0
// 

cci_indicator = cci(hl2, 14)
// plot(cci_indicator, color=color.blue)

rsi_slow = sma(rsi(close, 14), 50)
// plot(rsi_slow, color=color.red)

rsi_fast = rsi(close, 14)
// plot(rsi_fast, color=color.green)

isCrossover = if(rsi_fast > rsi_slow and cci_indicator > 0)
    1
else
    0
// plotshape(isCrossover, style = shape.arrowup, color = color.green, size = size.huge)

isCrossunder = if(rsi_fast < rsi_slow and cci_indicator < 0)
    1
else
    0
// plotshape(isCrossunder, style = shape.arrowup, color = color.red, size = size.huge)

// start = timestamp("GMT-5", 2016,9,1,0,0)
// end = timestamp("GMT-5", 2017,9,1,0,0)

// strategy.entry("Long", strategy.long, 1, when = isCrossover and price_up)
// strategy.entry("Short", strategy.short, 1, when = isCrossunder and price_down)
// strategy.close("Long", when = isCrossunder and price_down)
// strategy.close("Short", when = isCrossover and price_up)

strategy.entry("Long", strategy.long, 1, when = isCrossover)
strategy.entry("Short", strategy.short, 1, when = isCrossunder)
strategy.close("Long", when = isCrossunder)
strategy.close("Short", when = isCrossover)

Mais.