O recurso está a ser carregado... Carregamento...

CCI Tendência de cruzamento zero Seguindo a estratégia

Autora:ChaoZhang, Data: 2023-09-28 16:00:36
Tags:

Resumo

Esta estratégia utiliza os cruzamentos zero do indicador CCI como sinais de entrada e saída para capturar a direção da tendência.

Estratégia lógica

  • Utilize 20 períodos para o indicador CCI.
  • Quando o CCI cruzar acima de 0, vá longo com stop loss em -100.
  • Quando o CCI cruzar abaixo de 0, vá para curto com stop loss a 100.
  • Saia quando a CCI cruzar o zero novamente.

A lógica central é capturar as cruzamentos zero do CCI como sinais de mudanças de tendência. Quando o CCI passa de zona negativa para zona positiva, ele indica que os preços saíram de sobrevenda e podem iniciar uma tendência de alta. Quando o CCI passa de zona positiva para negativa, ele indica que os preços saíram de sobrecompra e podem iniciar uma tendência de queda. A estratégia entra nas cruzamentos e define uma parada de perda razoável para controlar o risco.

Análise das vantagens

  • A utilização de cruzes zero do CCI para determinar a direção da tendência é uma aplicação clássica do indicador.
  • O CCI de comprimento adequado filtra o ruído e detecta os principais pontos de mudança de tendência.
  • Apenas uma entrada por tendência, com paradas, reduz o excesso de negociação, concentra fundos para grandes ganhos.
  • Os parâmetros CCI e a distância de parada são otimizados para uma melhor universalidade.

Análise de riscos

  • A CCI pode dar sinais falsos de travessia, causando perdas desnecessárias.
  • A distância de perda de parada incorrecta pode ser demasiado larga ou demasiado estreita.
  • A duração errada do CCI pode filtrar oportunidades úteis de curto prazo.
  • Existe o risco de atraso no tempo, o CCI pode atrasar a formação da tendência real, causando uma entrada tardia.

Soluções:

  • Adicionar outros indicadores de confirmação, evitar travessias falsas do CCI.
  • Ajustar dinamicamente a distância de parada.
  • Otimizar o comprimento do CCI para captar tendências em diferentes prazos.
  • Relaxar as regras de entrada, não exigir estritamente passagens CCI zero.

Orientações de otimização

A estratégia pode ser ainda melhorada nos seguintes aspectos:

  1. Otimize o comprimento do parâmetro CCI para encontrar a melhor configuração. Teste diferentes comprimentos e avalie a rentabilidade e a taxa de vitória.

  2. Adicionar outros indicadores como KDJ, MACD para confirmação, evitar sinais falsos CCI. Requer ruptura persistente dos níveis de preços ou sinais concorrentes.

  3. A distância de parada de perda é ajustada dinamicamente com base na volatilidade do mercado. Paradas mais apertadas significam paradas oportunas, mas podem ser muito sensíveis. Paradas mais largas permitem manter tendências, mas aumentam a perda se paradas.

  4. Relaxa as regras de entrada para reduzir as entradas perdidas, começa a escalar à medida que a CCI se aproxima do cruzamento zero, em vez de esperar pelo cruzamento exato.

  5. Adicionar regras de saída da tendência para maximizar os lucros, novas saídas quando a tendência se inverte, como o preço recuar certa porcentagem.

Conclusão

Esta estratégia usa cruzes CCI zero para determinar a direção da tendência e entrar nas cruzes com perda de parada razoável, seguindo efetivamente as tendências.


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

//@version=2
strategy("CCI Level Zero Strategy (by Marcoweb) v1.0", shorttitle="CCI_L_Z_Strat_v1.0", overlay=true)

///////////// CCI
CCIlength = input(20, minval=1, title="CCI Period Length") 
CCIoverSold = -100
CCIoverBought = 100
CCIzeroLine = 0
CCI = cci(hlc3, CCIlength)
price = hlc3
vcci = cci(price, CCIlength)

source = close
buyEntry = crossover(source, CCIzeroLine)
sellEntry = crossunder(source, CCIzeroLine)
plot(CCI, color=black,title="CCI")
p1 = plot(CCIoverSold, color=blue,title="-100")
p2 = plot(CCIoverBought, color=red,title="100")
p3 = plot(CCIzeroLine, color=orange,title="0")


///////////// CCI 0Trend v1.0 Strategy 
if (not na(vcci))

    if (crossover(CCI, CCIzeroLine))
        strategy.entry("CCI_L", strategy.long, stop=CCIoverSold,  comment="CCI_L")
    else
        strategy.cancel(id="CCI_L")
        
    if (crossunder(CCI, CCIzeroLine))
        strategy.entry("CCI_S", strategy.short, stop=CCIoverBought,  comment="CCI_S")
    else
        strategy.cancel(id="CCI_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Mais.