Estratégia de ruptura de reversão de candelabro consecutiva

Autora:ChaoZhang, Data: 2024-03-05 16:07:40
Tags:

img

Estratégia geral

A estratégia de reversão de velas consecutivas é a de capturar oportunidades de negociação quando o preço da ação mostra um sinal de reversão e quebra níveis de resistência importantes após um período de quedas consecutivas. A estratégia define parâmetros como o número de velas consecutivas para baixo, o número de velas consecutivas para cima e as condições de stop-loss.

Princípio da estratégia

  1. Definir condições de entrada: Quando o preço da ação caiu para X velas consecutivas, seguido por Y velas consecutivas, e a estratégia atualmente não tem posição, a condição de entrada é acionada e uma posição longa é aberta.
  2. Definir condições de stop-loss: Após a abertura de uma posição, se o preço da ação cair abaixo do preço de fechamento mais baixo das velas anteriores, ou cair abaixo do preço mais alto no momento da entrada menos 2 vezes o ATR (Average True Range), a condição de stop-loss é acionada e a posição é fechada.
  3. Registre o preço de entrada e o preço de stop-loss correspondentes para cada entrada e redefina os parâmetros após o encerramento da posição para se preparar para a próxima negociação.
  4. Use o script de pinho para escrever o código da estratégia, que pode ser testado e otimizado em plataformas como o TradingView.

A chave para a estratégia reside em identificar corretamente os sinais de reversão e estabelecer parâmetros apropriados. O número de velas consecutivas para baixo e o número de velas consecutivas para cima são dois parâmetros importantes que precisam ser otimizados com base nos resultados do backtest. Além disso, definir as condições de stop-loss também é crucial.

Vantagens da estratégia

  1. Adequado para mercados oscilantes e fases iniciais de tendências: a estratégia abre posições quando aparece um sinal de reversão após um período de ajustamento de preços, facilitando a captura de oportunidades no início de uma tendência.
  2. O preço das ações pode ser reduzido em função da variação da taxa de câmbio.
  3. Parâmetros ajustáveis e forte adaptabilidade: Parâmetros como o número de velas consecutivas e as condições de stop-loss podem ser ajustados de acordo com as características do mercado e as preferências pessoais, aumentando a adaptabilidade da estratégia.

Riscos estratégicos

  1. A seleção inadequada de parâmetros leva a negociações frequentes: se o número de velas consecutivas for muito pequeno, isso pode fazer com que a estratégia abra e feche posições com frequência, aumentando os custos de transação.
  2. A definição inadequada da posição stop-loss leva a um aumento das perdas: se a posição stop-loss for demasiado larga, pode causar perdas excessivas numa única transacção; se a posição stop-loss for demasiado estreita, pode provocar o encerramento prematuro de transacções rentáveis.
  3. A estratégia é mais adequada para utilização em mercados oscilantes e em fases iniciais de tendências.
  4. Falta de gestão de posições e gestão de capital: o código de estratégia actual não inclui a gestão de posições e a gestão de capital.

Orientações para a otimização da estratégia

  1. Otimize o número de velas consecutivas: Encontre o número de velas consecutivas para baixo e para cima com melhor desempenho no período mais recente, testando diferentes combinações de parâmetros.
  2. Otimizar as condições de stop-loss: considerar a utilização de condições de stop-loss mais dinâmicas, tais como a definição de posições de stop-loss baseadas em ATR ou percentagem, para se adaptar às diferentes situações de volatilidade do mercado.
  3. Adicionar negociação bidirecional para longo e curto: atualmente, a estratégia só tem uma direção de longo.
  4. Introduzir a gestão de posições e a gestão de capitais: ajustar dinamicamente o tamanho da posição de cada operação em função da situação de capital da conta e da preferência de risco, e definir limites gerais de risco para melhorar a robustez da estratégia.
  5. Combinar com outros indicadores ou sinais técnicos: a estratégia pode ser combinada com outros indicadores técnicos (como RSI, MACD, etc.) ou sinais de negociação (como breakouts, padrões, etc.) para melhorar a precisão das posições de abertura e fechamento.

Resumo da estratégia

A estratégia de reversão de velas consecutivas toma decisões de negociação capturando sinais de reversão após quedas consecutivas nos preços das ações. A estratégia é simples e fácil de entender, adequada para uso em mercados oscilantes e estágios iniciais de tendências. Ao definir parâmetros como o número de velas consecutivas e condições de stop-loss, ela pode se adaptar flexivelmente a diferentes condições do mercado. No entanto, a estratégia também tem algumas limitações, como a adaptabilidade média aos mercados de tendência de longo prazo e a falta de gestão de posição e gestão de capital.

Em aplicações práticas, a estratégia precisa ser otimizada e melhorada de acordo com as características do mercado e as próprias preferências de risco. Por exemplo, a otimização da configuração do número de velas consecutivas e condições de stop-loss, a adição de negociação bidirecional para posições longas e curtas, a introdução de gestão de posições e gestão de capital e a combinação com outros indicadores técnicos e sinais de negociação. Isso pode melhorar a lucratividade da estratégia, controlando os riscos e alcançando retornos estáveis de investimento.

Em geral, a estratégia de ruptura de reversão de velas consecutiva é uma estratégia de negociação simples e prática que vale mais exploração e otimização na prática. No entanto, nenhuma estratégia é onipotente. Os investidores também precisam combinar sua própria experiência e julgamento, tomar decisões prudentes e executar rigorosamente para permanecer invencíveis no mercado a longo prazo.


/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bottom Out Strategy", overlay=true)
consecutiveBarsUp = input(2)
consecutiveBarsDown = input(3)
price = close
ups = 0.0
ups := price > price[1] ? nz(ups[1]) + 1 : 0
dns = 0.0
dns := price < price[1] ? nz(dns[1]) + 1 : 0
var entry_bar_index = 1000000
var active = false
var stop_loss = 0.0

// === INPUT BACKTEST RANGE ===
i_from = input(defval = timestamp("01 Jan 2023 00:00 +0000"), title = "From")
i_thru = input(defval = timestamp("01 Mar 2024 00:00 +0000"), title = "Thru")
// === FUNCTION EXAMPLE ===
date() => true

entry_condition() => 
	date() and dns[2] >= consecutiveBarsDown and ups >= consecutiveBarsUp and not active

exit_condition() =>
	date() and active and (close < nz(stop_loss) or close < high - 2 * ta.atr(7))

if (entry_condition())
	strategy.entry("ConsDnLong", strategy.long, comment="CDLEntry")
	entry_bar_index := bar_index
	active := true
	stop_loss := math.min(close, close[1], close[2])
	// log.info("Entry at bar {0}, close={1}, stop_loss={2} ", entry_bar_index, close, stop_loss)
if (exit_condition())
	strategy.close("ConsDnLong", comment = "CDLClose")
	// log.info("Close at bar {0}", bar_index)
	entry_bar_index := 1000000
	active := false
// if (dns >= consecutiveBarsDown)
// 	strategy.entry("ConsDnSE", strategy.short, comment="ConsDnSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
plot(high - 2* ta.atr(7))

Mais.