Estratégia de seguimento de tendência com média móvel Hull baseada em TSI e CCI
Visão Geral
Esta estratégia combina três indicadores: o Índice de Força Relativa Verdadeiro (TSI), o Índice do Canal de Mercadorias (CCI) e a Média Móvel Hull (Hull MA), formando uma estratégia de negociação de acompanhamento de tendência. Pode ser utilizada em qualquer ativo negociável em períodos de 1 hora ou superiores, para realizar negociações de longo prazo seguindo a tendência.
Princípio da Estratégia
A estratégia baseia-se principalmente nos indicadores TSI e CCI para avaliar a tendência do mercado e as condições de sobrecompra/sobrevenda, e na Hull MA para determinar a tendência de médio prazo dos preços. A combinação dos três serve como condição básica para abertura de posições.
Especificamente, quando a linha rápida do TSI cruza acima da linha lenta e o CCI cruza acima de +20 com n1 em alta, é feita uma operação de compra (long). Quando a linha rápida do TSI cruza abaixo da linha lenta e o CCI cruza abaixo de -20 com n1 em queda, é feita uma operação de venda (short). A Hull MA é usada para filtrar a tendência de médio prazo: só se compra quando o preço está abaixo da Hull MA, e só se vende quando o preço está acima da Hull MA.
Dessa forma, com a confirmação de indicadores de diferentes períodos, é possível filtrar eficazmente falsos rompimentos e acompanhar tendências de médio e longo prazo.
Análise de Vantagens
Esta é uma estratégia de acompanhamento de tendência relativamente estável e eficiente, com as seguintes vantagens principais:
-
O uso do TSI para determinar a direção da tendência de longo prazo é mais confiável, evitando interferências de ruídos de curto prazo do mercado;
-
A adição do indicador CCI permite confirmar condições de sobrecompra e sobrevenda, filtrando parte dos sinais falsos;
-
A análise da Hull MA torna os pontos de entrada mais precisos, aumentando significativamente a probabilidade de lucro;
-
A integração de indicadores com parâmetros diferentes melhora a confiabilidade dos sinais e reduz a probabilidade de interferências;
-
A configuração flexível dos parâmetros permite adaptação a diferentes ciclos de mercado para otimização.
Análise de Riscos
Embora a estratégia tenha alta estabilidade, ainda existem alguns riscos a serem considerados:
-
O mercado pode sofrer reversões bruscas, impossibilitando um stop loss rápido e causando perdas significativas;
-
Tanto o TSIDiff quanto o CCI podem gerar sinais falsos e atrasos, perdendo alguns pontos de entrada;
-
Parâmetros mal ajustados também podem levar a uma frequência excessiva de negociações ou à deterioração da qualidade dos sinais.
Medidas corretivas:
-
Ajustar adequadamente os pontos de stop loss para controlar perdas individuais;
-
Combinar com outros indicadores para confirmação, aumentando a precisão dos sinais;
-
Ajustar os parâmetros de acordo com o mercado para garantir a estabilidade da estratégia.
Direções de Otimização
A estratégia pode ser otimizada nos seguintes aspectos:
-
Experimentar diferentes combinações de parâmetros para encontrar a melhor correspondência entre indicadores;
-
Incorporar algoritmos de aprendizado de máquina para otimização adaptativa dos parâmetros;
-
Adicionar um módulo de gerenciamento de capital para tornar os lucros mais estáveis;
-
Incluir mais filtros para aumentar a taxa de acerto da estratégia.
Estes serão os focos de otimização futura.
Resumo
Esta estratégia utiliza de forma integrada os indicadores TSI, CCI e Hull MA, formando uma estratégia de acompanhamento de tendência relativamente estável e eficiente. Ela aplica com sucesso as vantagens de indicadores de múltiplos períodos, melhorando a qualidade dos sinais. Os próximos passos incluem o aprimoramento da estabilidade e rentabilidade da estratégia por meio de otimização de parâmetros e adição de filtros.
/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="TSI CCI Hull", shorttitle="TSICCIHULL", default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills= false, calc_on_every_tick=true, pyramiding=0)
long = input(title="Long Length", type=input.integer, defval=50)- 1

