
O sistema de negociação em bandas de onda que pode determinar a auto-adaptação é uma estratégia de acompanhamento de tendências projetada especificamente para mercados altamente voláteis. A estratégia identifica a terceira flutuação no mercado como ponto de entrada, combinando a forma de absorção com a verificação de volume de transação como sinal de confirmação, ao mesmo tempo em que usa mecanismos de stop loss / stop loss adaptativos e métodos de gerenciamento de posições baseados em risco. O núcleo da estratégia é capturar o movimento contínuo de um mercado forte e entrar em negociação somente depois que a tendência é claramente estabelecida e estruturalmente confirmada, evitando o risco de entrada precoce.
A estratégia baseia-se em múltiplos filtros e mecanismos de confirmação para garantir a admissão apenas em casos de alta probabilidade:
Filtros de tendências: Use uma média móvel simples de 50 ciclos (SMA) para determinar a direção do mercado. Os preços acima da SMA são considerados uma tendência ascendente, adequada para fazer mais; Os preços abaixo da SMA são considerados uma tendência descendente, adequada para fazer menos.
Lógica de contagem de ondas:
Submersão confirmada:
Filtros de quantidade de entregaO volume de transações atual da linha K deve ser maior do que a média de transações de 20 ciclos, garantindo que as transações sejam feitas apenas com a participação de instituições.
Filtros de inclinação MA: Requer que o SMA de 50 ciclos tenha uma inclinação superior a 0,1 nas 3 linhas K mais recentes, evitando a tendência de choque ou de plano, e confirme a dinâmica para a negociação.
Filtro de período de negociaçãoA transação só é executada dentro de uma determinada janela de tempo, evitando oscilações noturnas e falta de liquidez.
Mecanismo de suspensão de prejuízos:
Gestão de posições com base no risco: Calcule o tamanho da posição de forma dinâmica com base no montante de risco e tamanho de stop loss por transação, garantindo a consistência do risco.
Admissão estruturadaA estratégia evita a caça à queda ao esperar pela terceira onda, entrando apenas quando a tendência está estabelecida e é confirmada pela estrutura de preços, aumentando significativamente a taxa de vitória.
Mecanismo de confirmação múltipla: Combinação de filtros de várias camadas, como tendências, contagem de ondulações, forma de linha K, volume de transação e indicadores de energia dinâmica, para garantir a entrada apenas quando vários sinais coincidem, reduzindo os falsos sinais.
Gestão de risco adaptativaAtividade: Ajustar o nível de stop loss com base na dinâmica real da volatilidade do mercado, reduzir automaticamente o alcance do stop loss durante a alta volatilidade e proteger o capital.
Controle de risco quantitativoO principal objetivo é garantir que o montante de risco de cada transação seja consistente, independentemente da variação das condições de mercado, através do cálculo preciso do tamanho da posição de cada transação.
Confirmação de fundos da instituiçãoA partir de janeiro de 2017, o Banco Central Europeu (BCE) lançou uma nova estratégia de negociação com o Banco Central Europeu (BCE) para aumentar a probabilidade de continuidade da tendência, através de um filtro de volume de transação.
Projeto à prova de ruídoO filtro de tempo e as exigências de menor inclinação ajudam a evitar falsos sinais em mercados de baixa qualidade e sem direção.
Parâmetros personalizadosA estratégia oferece vários parâmetros ajustáveis, permitindo que os comerciantes otimizem de acordo com as preferências pessoais de risco e diferentes condições de mercado.
Risco de reposição do contador de flutuaçãoQuando o sinal aciona uma transação, o contador de oscilação é reiniciado, o que pode levar a um sinal subsequente perdido em um momento indesejável. Recomenda-se a implementação de um mecanismo de reinicialização mais inteligente ou o aumento da identificação de sinais secundários.
Restrição de janela de retrocesso fixa: O uso de uma janela de retrocesso de linha K de 5 linhas fixas pode ter um desempenho inconsistente em diferentes cenários de mercado. Considere o uso de uma janela de retrocesso adaptativa, que se ajusta automaticamente à volatilidade do mercado.
Excessiva dependência de um único período de tempoA operação em apenas um gráfico de 5 minutos pode perder uma estrutura importante de um período de tempo maior. Recomenda-se a adição de análise de vários períodos de tempo para melhorar a qualidade de entrada.
Taxa de suspensão fixaA taxa de retorno de risco fixo (RRR) pode não ser adequada para todos os cenários de mercado. Em períodos de baixa volatilidade, isso pode levar a objetivos irreais. Em períodos de alta volatilidade, pode ser prematuramente lucrativo. Considere a possibilidade de ajustar o nível de parada com base no ATR ou na dinâmica de volatilidade do mercado.
Risco de depreciação de tamanho da linha KA lógica de processamento da linha K grande (< 25 pontos de um limite) é um valor fixo que pode não ser adequado para todos os cenários de mercado. Recomenda-se o uso de valores relativos (< como porcentagem do ATR) em vez de um número de pontos fixos.
Limitação do período de negociaçãoO filtro de tempo de negociação fixo pode perder oportunidades de mercado importantes. Considere a possibilidade de ajustar dinamicamente a janela de tempo de negociação de acordo com as condições reais de volatilidade e liquidez.
Optimização de parâmetros de adaptação:
Multi-quadros de tempo em conjunto:
Análise de alta volatilidade:
Melhoria da gestão inteligente de fundos:
Aprendizagem estatística melhorada:
Otimização de execução:
O sistema de negociação de bandas é uma estratégia de acompanhamento de tendências bem projetada para melhorar a qualidade de negociação por meio de múltiplos filtros e mecanismos de confirmação. Sua principal vantagem reside na capacidade de identificação de bandas baseada na estrutura do mercado, em condições de entrada rigorosas e na capacidade de gerenciamento de risco auto-adaptável. A estratégia evita efetivamente falsas rupturas e entradas precoces, evitando assim a absorção, esperando a confirmação da terceira onda e do volume de transação, e assegurando o controle do risco através do cálculo dinâmico do tamanho da posição.
Embora a estratégia esteja bastante perfeita, ainda há espaço para melhorias, especialmente em termos de adaptabilidade de parâmetros, análise de multi-tempos e gerenciamento de fundos avançado. A estratégia pode melhorar ainda mais a robustez e a lucratividade em diferentes ambientes de mercado através da implementação de medidas de otimização recomendadas, especialmente a introdução de parâmetros dinâmicos baseados em ATR e confirmação de multi-tempos.
Acima de tudo, os traders devem entender que a estratégia é baseada em capturar oportunidades de alta probabilidade de continuação de tendências confirmadas, e não em prever pontos de inflexão. Esperando pacientemente que as condições sejam alinhadas e aplicando rigorosamente as regras de gerenciamento de risco, a estratégia pode se tornar um sistema de negociação robusto.
/*backtest
start: 2025-01-01 00:00:00
end: 2025-05-12 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BNB_USDT"}]
*/
// @version=6
strategy("US30 Stealth Strategy", overlay=true)
// === USER INPUTS ===
maLen = input.int(50, "Trend MA Length")
volMaLen = input.int(20, "Volume MA Length")
hlLookback = input.int(5, "Lookback for High/Low Detection")
rrRatio = input.float(2.2, "Risk-to-Reward Ratio", step=0.1)
maxCandleSize = input.float(30.0, "Max Candle Size (pips/points)")
pipValue = input.float(1.0, "Pip Value (USD per pip/point)")
riskAmount = input.float(500.0, "Risk Per Trade (USD)")
largeCandleThreshold = input.float(25.0, "Threshold for large candles")
maSlopeLen = input.int(3, "MA Slope Lookback Bars")
minSlope = input.float(0.1, "Min Slope Threshold")
// === TREND DETECTION ===
ma = ta.sma(close, maLen)
slope = ma - ma[maSlopeLen]
isSlopeUp = slope > minSlope
isSlopeDown = slope < -minSlope
isDownTrend = close < ma and isSlopeDown
isUpTrend = close > ma and isSlopeUp
// === COUNTERS ===
var int lhCount = 0
var int hlCount = 0
// === LOWER HIGH DETECTION ===
isLowerHigh = high < ta.highest(high[1], hlLookback)
if isLowerHigh
lhCount += 1
hlCount := 0
// === HIGHER LOW DETECTION ===
isHigherLow = low > ta.lowest(low[1], hlLookback)
if isHigherLow
hlCount += 1
lhCount := 0
// === ENGULFING DETECTIONS ===
bearEng = (close < open) and (close < open[1]) and (open > close[1]) and (close <= open[1]) and (open >= close[1])
bullEng = (close > open) and (close > open[1]) and (open < close[1]) and (close >= open[1]) and (open <= close[1])
// === VOLUME FILTER ===
volMA = ta.sma(volume, volMaLen)
volOK = volume > volMA
// === TIME FILTER (Oman 2AM–11PM = UTC 22:00–19:00) ===
inSession = (hour >= 22 or hour < 19)
// === CANDLE SIZE & SL LOGIC ===
rawCandleSize = high - low
useHalfCandle = rawCandleSize > largeCandleThreshold
slSize = useHalfCandle ? rawCandleSize / 2 : rawCandleSize
validSize = rawCandleSize <= maxCandleSize
// === SIGNAL CONDITIONS ===
sellSig = inSession and isDownTrend and (lhCount == 3) and bearEng and volOK and validSize
buySig = inSession and isUpTrend and (hlCount == 3) and bullEng and volOK and validSize
// === RISK-CALCULATED POSITION SIZE ===
positionSize = riskAmount / (slSize * pipValue)
// === SL/TP LEVELS ===
bearSL = close + slSize
bearTP = close - rrRatio * slSize
bullSL = close - slSize
bullTP = close + rrRatio * slSize
// === EXECUTIONS ===
if sellSig
strategy.entry("Sell", strategy.short, qty=positionSize)
strategy.exit("TP/SL Sell", from_entry="Sell", stop=bearSL, limit=bearTP)
lhCount := 0
if buySig
strategy.entry("Buy", strategy.long, qty=positionSize)
strategy.exit("TP/SL Buy", from_entry="Buy", stop=bullSL, limit=bullTP)
hlCount := 0