
O sistema de negociação de cruzamento acelerado de HMA é uma estratégia de acompanhamento de tendências integrada, que combina o Hull Moving Average (HMA), o filtro de curvatura (Curvature) e o mecanismo de gerenciamento de risco baseado no Average True Range (Average True Range, ATR). A estratégia determina a direção da tendência do mercado através da junção de HMAs rápidas e lentas, enquanto seleciona sinais com bastante movimento usando o indicador de curvatura e usa a dinâmica ATR para definir paradas e posições de perda, o que permite uma grande e eficaz adaptação à volatilidade do mercado.
A estratégia centra-se em três componentes-chave:
Sistema de sinalização cruzada HMA:
Filtros de força de curvatura:
Estrutura de gestão de risco baseada em ATR:
A lógica de execução da negociação é clara: quando o HMA rápido atravessa o HMA lento e a curvatura é positiva, a posição é aberta; quando o HMA rápido atravessa o HMA lento e a curvatura é negativa, a posição é aberta. A estratégia de saída usa um stop loss de rastreamento baseado em ATR, e o stop loss também é ajustado de acordo com o movimento do preço na direção favorável, bloqueando o lucro.
Forte adaptaçãoA HMA é sensível às mudanças de preços e a estratégia global pode ajustar automaticamente a distância de parada e o tamanho da posição de acordo com a volatilidade do mercado, permitindo que ela mantenha um desempenho relativamente consistente em diferentes ambientes de mercado.
Filtragem de alta qualidadeAtravés da aplicação de indicadores de curvatura, a estratégia é capaz de identificar e filtrar sinais de falta de dinâmica, entrando apenas quando a tendência tem uma aceleração suficiente, reduzindo significativamente as falsas rupturas e as negociações inválidas.
Controle de risco rigorosoO sistema de gerenciamento de risco baseado em ATR garante que o risco de cada transação seja sempre mantido no nível predeterminado e que não haja perdas excessivas por uma única transação, independentemente da intensidade da volatilidade do mercado.
Gestão de posições dinâmicasEstratégia: Calcule posições ótimas de acordo com a volatilidade do mercado atual e a dinâmica dos fundos da conta, reduzindo automaticamente as posições em situações de alta volatilidade e aumentando moderadamente as posições em situações de baixa volatilidade, alcançando um equilíbrio entre eficiência de capital e controle de risco.
Quadro de negociação completoA estratégia oferece um sistema de negociação completo, desde a geração de sinais, condições de entrada, cálculo de posições até o gerenciamento de stop loss, sem a necessidade de adicionar outros módulos.
Capacidade de negociação bidirecionalAtividades: Apoia a negociação bidirecional de ativos e ativos líquidos, permitindo a busca de oportunidades de lucro em várias tendências de mercado, sem se limitar a uma única direção.
Mercado de turbulência não funciona bemComo uma estratégia de acompanhamento de tendências, em ambientes de mercado de liquidação horizontal ou com frequência de turbulências, pode ocorrer uma perda contínua de pequenas perdas, conhecida como “lavagem de folha”. A solução é adicionar um módulo de identificação de estado de mercado, suspender a negociação ou ajustar os parâmetros quando o mercado de turbulência é identificado.
Sensibilidade do parâmetroO desempenho da estratégia é mais sensível à configuração de parâmetros como o ciclo HMA, o limiar de curvatura e o múltiplo ATR. A escolha inadequada de parâmetros pode levar a overtrading ou perder tendências importantes. Recomenda-se otimizar os parâmetros por meio de retrospectiva em diferentes ambientes de mercado ou considerar a implementação de mecanismos de auto-adaptação de parâmetros.
Ponto de deslizamento e risco de liquidez: Em mercados altamente voláteis, o preço de execução real pode ter um grande desvio do preço do sinal. Especialmente para variedades com pouca liquidez, esse deslizamento pode afetar significativamente o desempenho da estratégia.
Abertura de risco sistêmicoA estratégia pode manter uma posição maior em um ambiente de forte tendência, e se o mercado tiver uma reversão súbita (como um grande choque de notícias), o rastreamento de stop loss pode não ser capaz de proteger o dinheiro em tempo hábil. Pode ser considerado o estabelecimento de um limite de stop loss absoluto ou a introdução de um mecanismo de detecção de mutações de taxa de flutuação como proteção adicional.
Filtragem de curvatura excessivaA definição de um limiar de curvatura muito alto pode levar a uma tendência inicial perdida, enquanto a definição de um limiar muito baixo pode introduzir um sinal de ruído excessivo. É necessário encontrar um ponto de equilíbrio no feedback ou considerar ajustar o limiar de acordo com a dinâmica do mercado.
Confirmação do Multi-Tempos:
Teor da curvatura de adaptação:
Introdução de confirmação de entrega:
Gerenciamento de Prejuízos Inteligentes:
Adição de análise de curvatura de diferença de HMA:
Optimizar estratégias de gestão de fundos:
O sistema de negociação de cruzamento acelerado de HMA é uma estratégia de seguimento de tendências bem projetada, que combina cruzamentos de HMA, filtragem de curvatura dinâmica e gerenciamento de risco ATR para construir uma estrutura de negociação completa e robusta. A vantagem central da estratégia é sua adaptabilidade e controle de risco completo, que protege os fundos de negociação enquanto capta as tendências do mercado.
A estratégia é especialmente adequada para mercados com características de tendência visíveis, mas pode ser desafiada em mercados de turbulência. A performance da estratégia é esperada para melhorar ainda mais com a implementação de medidas de otimização recomendadas, especialmente a confirmação de múltiplos prazos e o ajuste de parâmetros de adaptação. Para os comerciantes de quantificação, é um sistema com uma base sólida que pode ser aplicado diretamente ou como ponto de partida para a construção de estratégias de negociação mais complexas.
Note-se que qualquer estratégia de negociação precisa ser validada por um histórico de retrospectiva e simulação de negociação adequados, e ajustar os parâmetros de acordo com as características específicas do mercado e as preferências de risco pessoais. A estratégia fornece um quadro equilibrado de análise técnica, teoria da dinâmica e gerenciamento de risco, mas a aplicação bem-sucedida ainda requer ajustes cuidadosos e monitoramento contínuo do trader.
/*backtest
start: 2024-06-30 00:00:00
end: 2025-06-28 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":50000000}]
*/
//@version=6
strategy("HMA Crossover + ATR + Curvature (Long & Short)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === Inputs ===
fastLength = input.int(15, title="Fast HMA Period")
slowLength = input.int(34, title="Slow HMA Period")
atrLength = input.int(14, title="ATR Period")
riskPercent = input.float(1.0, minval=0.1, maxval=10, title="Risk per Trade (%)")
atrMult = input.float(1.5, title="Stop Loss ATR Multiplier")
trailMult = input.float(1.0, title="Trailing Stop ATR Multiplier")
curvThresh = input.float(0.0, step=0.01, title="Curvature Threshold (Min Acceleration)")
// === Calculations ===
fastHMA = ta.hma(close, fastLength)
slowHMA = ta.hma(close, slowLength)
atr = ta.atr(atrLength)
// Curvature: approximate second derivative (acceleration)
curv = ta.change(ta.change(fastHMA))
// Entry Conditions
bullish = ta.crossover(fastHMA, slowHMA) and curv > curvThresh
bearish = ta.crossunder(fastHMA, slowHMA) and curv < -curvThresh
// Risk Management
stopLoss = atr * atrMult
trailStop = atr * trailMult
capital = strategy.equity
riskCapital = capital * (riskPercent / 100)
qty = riskCapital / stopLoss
// === Strategy Logic ===
if (bullish)
strategy.entry("Long", strategy.long, qty=qty)
strategy.exit("Long Trail Stop", from_entry="Long", trail_points=trailStop, trail_offset=trailStop)
if (bearish)
strategy.entry("Short", strategy.short, qty=qty)
strategy.exit("Short Trail Stop", from_entry="Short", trail_points=trailStop, trail_offset=trailStop)
plotshape(bullish, title="Buy", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(bearish, title="Sell", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")