Estratégia de acompanhamento das tendências do T3-CCI

Autora:ChaoZhang, Data: 2023-11-24 10:33:31
Tags:

img

Resumo

Esta é uma estratégia quantitativa que utiliza a linha média móvel suavizada T3 e o indicador CCI para rastrear tendências.

Princípio da estratégia

A estratégia primeiro calcula a linha média móvel suavizada T3 e o indicador CCI. Em seguida, converte o indicador CCI no indicador T3-CCI através de uma série de cálculos de filtragem. Gerar um sinal de compra quando o indicador T3-CCI cruza acima do eixo 0 e um sinal de venda quando cruza abaixo do eixo 0. Para filtrar sinais falsos, a estratégia requer que o indicador T3-CCI mantenha o mesmo sinal por dois períodos consecutivos antes de fazer uma ordem.

Em especial, a estratégia adopta as seguintes medidas:

  1. Calcular o indicador CCI e o indicador T3
  2. Converter o indicador CCI no indicador T3-CCI através de uma série de filtros digitais
  3. Julgar o estado longo/curto do indicador T3-CCI
  4. Esperar sinais persistentes sobre duas barras como sinais de entrada

Análise das vantagens

A estratégia apresenta as seguintes vantagens:

  1. O indicador CCI é efetivamente suavizado através do indicador T3 para filtrar o ruído do mercado.
  2. Adopta um mecanismo de confirmação dupla para evitar sinais falsos
  3. Seguir as tendências de médio a longo prazo e evitar retrações de curto prazo

Análise de riscos

A estratégia apresenta também alguns riscos:

  1. É propenso a gerar sinais falsos em mercados de intervalo
  2. O mecanismo de dupla confirmação pode perder oportunidades a curto prazo
  3. Risco elevado de stop loss em grandes inversões de tendência

Contramedidas:

  1. Ajustar os parâmetros CCI e T3 para otimizar o desempenho do indicador
  2. Redução adequada dos períodos de confirmação ou execução simultânea de combinações de parâmetros rápido/lento
  3. Adotar um stop loss móvel ou um stop loss oportuno para controlar a perda de uma única transação

Orientações de otimização

A estratégia pode ser otimizada nas seguintes direcções:

  1. Ajustar os parâmetros do CCI e do T3 de acordo com os diferentes ciclos e mercados
  2. Aumentar os indicadores de avaliação da tendência para melhorar a qualidade do sinal
  3. Ajustar automaticamente a posição stop loss com base na volatilidade
  4. Optimização dinâmica de parâmetros utilizando métodos de aprendizagem de máquina

Resumo

Em geral, esta é uma estratégia de rastreamento de tendências confiável de médio a longo prazo. Ele controla os riscos com confirmação dupla e recursos de rastreamento de tendências, e pode servir como uma estratégia básica de negociação de tendências.


/*backtest
start: 2023-11-16 00:00:00
end: 2023-11-23 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/12/2016
// This simple indicator gives you a lot of useful information - when to enter, when to exit
// and how to reduce risks by entering a trade on a double confirmed signal.
//
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="FX Sniper:  T3-CCI Strategy", shorttitle="T3-CCI")
CCI_Period = input(14, minval=1)
T3_Period = input(5, minval=1)
b = input(0.618)
reverse = input(false, title="Trade reverse")
hline(0, color=purple, linestyle=line)
xPrice = close
b2 = b*b
b3 = b2*b
c1 = -b3
c2 = (3*(b2 + b3))
c3 = -3*(2*b2 + b + b3)
c4 = (1 + 3*b + b3 + 3*b2)
nn = iff(T3_Period < 1, 1, T3_Period)
nr = 1 + 0.5*(nn - 1)
w1 = 2 / (nr + 1)
w2 = 1 - w1    
xcci = cci(xPrice, CCI_Period)
e1 = w1*xcci + w2*nz(e1[1])
e2 = w1*e1 + w2*nz(e2[1])
e3 = w1*e2 + w2*nz(e3[1])
e4 = w1*e3 + w2*nz(e4[1])
e5 = w1*e4 + w2*nz(e5[1])
e6 = w1*e5 + w2*nz(e6[1])
xccir = c1*e6 + c2*e5 + c3*e4 + c4*e3  
cciHcolor =  iff(xccir >= 0 , green,
               iff(xccir < 0, red, black))
pos =  iff(xccir > 0, 1,
         iff(xccir < 0, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xccir, color=blue, title="T3-CCI")
plot(xccir, color=cciHcolor, title="CCIH", style = histogram)

Mais.