O recurso está a ser carregado... Carregamento...

Estratégia de negociação de impulso de ruptura fractal com otimização de lucro

Autora:ChaoZhang, Data: 2024-12-11 17:20:09
Tags:TPSL

img

Resumo

Esta estratégia é um sistema de negociação de tendência baseado na teoria do fractal de preços, que identifica estruturas de fractal de mercado e combina condições de gatilho de ponto fixo com configurações de take-profit para negociação automatizada.

Princípios de estratégia

A lógica básica inclui as seguintes etapas-chave:

  1. Identificação de fractal: identifica os fractals superior e inferior comparando três velas consecutivas.
  2. Condições de entrada: Os conjuntos compram o preço de desencadeamento 107 pips acima dos fractais inferiores identificados; os conjuntos vendem o preço de desencadeamento 107 pips abaixo dos fractais superiores identificados.
  3. Configuração de lucro: coloca níveis de lucro de 107 pips a partir do preço de entrada.
  4. Gestão de posições: acompanha continuamente as últimas posições fractais e atualiza os preços de entrada correspondentes.

Vantagens da estratégia

  1. Objectividade: utiliza definições matemáticas claras para identificar a estrutura do mercado, evitando preconceitos de julgamento subjetivo.
  2. Controlo de riscos: utiliza configurações de lucro fixas para objetivos de lucro claros e risco controlável.
  3. Adaptabilidade: Pode operar em vários ambientes de mercado, especialmente adequado para mercados altamente voláteis.
  4. Alta automação: todo o processo de negociação, desde a identificação do sinal até a execução, é automatizado, reduzindo a intervenção humana.

Riscos estratégicos

  1. Risco de Falsa Breakout: Os mercados podem reverter rapidamente após breakouts de curto prazo, desencadeando stop losses.
  2. Risco de mercado turbulento: Frequentes fractais superiores e inferiores em mercados variáveis podem gerar sinais comerciais excessivos.
  3. Risco de ponto fixo: a utilização de pontos de entrada e de lucro fixos pode não corresponder a todas as condições de mercado.
  4. Risco de deslizamento: pode enfrentar problemas significativos de deslizamento em mercados altamente voláteis.

Optimização da Estratégia

  1. Optimização de pontos dinâmicos: ajustar os pontos de entrada e de lucro com base na volatilidade do mercado.
  2. Filtragem de tendências: adicionar indicadores de identificação de tendências para negociar apenas na direção principal da tendência.
  3. Reconhecimento do ambiente de mercado: implementar mecanismos de identificação do estado do mercado para utilizar diferentes parâmetros em diferentes condições de mercado.
  4. Optimização da gestão das posições: introduzir uma dimensão dinâmica das posições com base no capital da conta e nos níveis de risco de mercado.

Resumo

Esta estratégia combina teoria fractal com conceitos de ruptura de momento para construir um sistema de negociação completo. Seus pontos fortes estão na objetividade e alta automação, embora enfrente alguns desafios de adaptabilidade ao mercado. Através de medidas de otimização como ajuste de parâmetros dinâmicos e reconhecimento do ambiente de mercado, a estabilidade e lucratividade da estratégia podem ser ainda melhoradas.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Fractal Buy/Sell Strategy with 107 Pips Target", overlay=true)

// 输入参数
trigger_pips = input.int(107, title="Entry Distance (Pips)")  // 入场点距离底分型或顶分型的距离
take_profit_pips = input.int(107, title="Take Profit (Pips)") // 止盈点数

pip_value = syminfo.mintick * 10 // 点值(每点等于多少价格单位)

// 计算分型
is_bottom_fractal = low[1] < low[2] and low[1] < low[0] // 判断是否为底分型
is_top_fractal = high[1] > high[2] and high[1] > high[0] // 判断是否为顶分型

// 存储分型位置
var float last_bottom_fractal = na
var float last_top_fractal = na

// 更新分型值
if is_bottom_fractal
    last_bottom_fractal := low[1]
    
if is_top_fractal
    last_top_fractal := high[1]

// 计算开盘价格
bottom_trigger_price = na(last_bottom_fractal) ? na : last_bottom_fractal + trigger_pips * pip_value
top_trigger_price = na(last_top_fractal) ? na : last_top_fractal - trigger_pips * pip_value

// 交易逻辑:底分型多单和顶分型空单
if not na(last_bottom_fractal)
    if close <= bottom_trigger_price
        strategy.entry("Buy", strategy.long)
        strategy.exit("Take Profit", from_entry="Buy", limit=bottom_trigger_price + take_profit_pips * pip_value)
        
if not na(last_top_fractal)
    if close >= top_trigger_price
        strategy.entry("Sell", strategy.short)
        strategy.exit("Take Profit", from_entry="Sell", limit=top_trigger_price - take_profit_pips * pip_value)

// 绘制分型和触发价格
plotshape(series=is_bottom_fractal, style=shape.triangleup, location=location.belowbar, color=color.green, title="Bottom Fractal")
plotshape(series=is_top_fractal, style=shape.triangledown, location=location.abovebar, color=color.red, title="Top Fractal")
plot(bottom_trigger_price, title="Buy Trigger", color=color.green, linewidth=1)
plot(top_trigger_price, title="Sell Trigger", color=color.red, linewidth=1)

Relacionados

Mais.