Estratégia de avanço da dupla confirmação

Autora:ChaoZhang, Data: 2024-03-01 10:55:27
Tags:

img

Resumo

A estratégia de ruptura de confirmação dupla é uma estratégia de negociação que combina estratégias de ruptura e estratégias de média móvel.

Princípio da estratégia

A lógica central da estratégia de avanço da dupla confirmação é a seguinte:

  1. Detecte se o preço atravessa o preço mais alto ou o preço mais baixo do dia anterior. Se o preço atravessa o preço mais alto do dia anterior, é visto como um sinal de alta; se o preço atravessa o preço mais baixo do dia anterior, é visto como um sinal de baixa.

  2. Quando ocorre uma ruptura, verifique se a linha rápida (linha de 10 dias) rompe a linha lenta (linha de 30 dias).

  3. Defina uma taxa fixa de stop loss e take profit para calcular o preço de stop loss e take profit. Por exemplo, se a estratégia definir uma taxa de stop loss e take profit de 1:4, então o intervalo de take profit é 4 vezes o intervalo de stop loss.

  4. Após a abertura de uma posição, se o preço desencadear a linha stop loss, stop loss para sair; se a meta take profit for atingida, take profit para sair.

Pode-se ver que a estratégia de ruptura de confirmação dupla utiliza a ruptura de indicadores de julgamento de tendência (médias móveis) e níveis de preços importantes (altos e baixos do dia anterior) para confirmar sinais de negociação, tornando-se um sistema de ruptura relativamente estável e confiável.

Análise das vantagens

A estratégia de avanço da dupla confirmação tem as seguintes vantagens:

  1. Entrar depois de ultrapassar o ponto alto ou baixo do dia anterior pode efetivamente reduzir a probabilidade de falhas, melhorando assim a precisão da entrada.

  2. O julgamento auxiliar da média móvel é sobreposto a ela para evitar posições de abertura frequentes em mercados de choque.

  3. A adoção de uma taxa fixa de stop loss e de take profit para gerir o risco de capital pode manter os riscos e os retornos dentro de um intervalo acessível.

  4. As regras de estratégia são simples e claras, fáceis de compreender e implementar e adequadas para a negociação quantitativa.

Análise de riscos

A estratégia de avanço da dupla confirmação apresenta também os seguintes riscos:

  1. Para evitar este risco, a confirmação pode ser feita na 2a linha K após a ruptura antes da entrada no mercado.

  2. Em mercados oscilantes, os pontos de stop loss são facilmente acionados.

  3. Os rácios fixos de stop loss e take profit não são adequados para todos os produtos e condições de mercado, devendo os parâmetros ser ajustados de acordo com os diferentes mercados.

  4. A definição inadequada dos parâmetros da média móvel também pode perder melhores oportunidades ou aumentar a negociação desnecessária.

Orientações de otimização

A estratégia de avanço da dupla confirmação pode ser otimizada nas seguintes direcções:

  1. Aumentar o número de linhas K de confirmação, por exemplo, observar se o preço de fechamento de 1-2 linhas K após o avanço também atravessou esse importante nível de preço.

  2. Adotar diferentes combinações de parâmetros para diferentes produtos e ambientes de mercado, tais como ciclos de média móvel, índices de stop loss e take profit, etc., para backtesting e otimização.

  3. Combinar com outros indicadores auxiliares, como um aumento no volume de negociação, para confirmar os sinais de entrada.

  4. Aumentar os modelos de aprendizagem de máquina para prever as probabilidades da tendência do mercado e combinar sinais de probabilidade para ajustar os parâmetros da estratégia.

Resumo

A estratégia de avanço de confirmação dupla faz uso abrangente de sinais de avanço de níveis de preços importantes e indicadores de julgamento de médias móveis, o que pode efetivamente melhorar a qualidade dos sinais de negociação. Ao mesmo tempo, o uso de stop loss fixo e take profit para gerenciar o risco de capital permite que ele opere de forma constante. Esta é uma estratégia quantitativa que combina rastreamento de tendências e breakouts, adequada para comerciantes que buscam retornos estáveis.

Embora haja alguns riscos com esta estratégia, os riscos podem ser controlados e os retornos da estratégia podem ser melhorados através de backtesting e otimização contínuos.


/*backtest
start: 2023-02-23 00:00:00
end: 2024-02-29 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estrategia de Trading con Señales de Máximo/Mínimo Diario", overlay=true)

// Obtenemos el alto y el bajo del día anterior
previousDailyHigh = request.security(syminfo.tickerid, "D", high[1], lookahead=barmerge.lookahead_on)
previousDailyLow = request.security(syminfo.tickerid, "D", low[1], lookahead=barmerge.lookahead_on)

// Detectamos si el precio cruza por encima del máximo o por debajo del mínimo del día anterior
priceCrossesPreviousHigh = ta.crossover(close, previousDailyHigh)
priceCrossesPreviousLow = ta.crossunder(close, previousDailyLow)

// Marcamos las señales en el gráfico con flechas bajistas y alcistas según corresponda
plotshape(priceCrossesPreviousHigh, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Price crosses above previous daily high")
plotshape(priceCrossesPreviousLow, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Price crosses below previous daily low")

// EMA rápida
fast_ema = ta.ema(close, 10)
// EMA lenta
slow_ema = ta.ema(close, 30)

// Riesgo beneficio fijo de 1-4
risk_reward_ratio = 4

// Calculamos el tamaño del stop loss basado en el riesgo asumido
risk = close - strategy.position_avg_price
stop_loss = close - (risk / risk_reward_ratio)

// Condiciones de compra y venta
buy_condition = priceCrossesPreviousLow and fast_ema > slow_ema
sell_condition = priceCrossesPreviousHigh and fast_ema < slow_ema

// Marcar entradas
strategy.entry("Compra", strategy.long, when=buy_condition)
strategy.entry("Venta", strategy.short, when=sell_condition)

// Definir objetivo de beneficio basado en el tamaño del stop loss y el riesgo beneficio fijo
target_profit = close + (risk * risk_reward_ratio)

// Definir stop loss y objetivo de beneficio
strategy.exit("Stop Loss/Take Profit", "Compra", stop=stop_loss, limit=target_profit)
strategy.exit("Stop Loss/Take Profit", "Venta", stop=stop_loss, limit=target_profit)

// Señales de compra y venta
plotshape(series=buy_condition, title="Compra", location=location.belowbar, color=color.green, style=shape.triangleup)
plotshape(series=sell_condition, title="Venta", location=location.abovebar, color=color.red, style=shape.triangledown)


Mais.