Momentum Breakout Camarilla Estratégia de apoio

Autora:ChaoZhang, Data: 23 de dezembro de 2023 18:09:06
Tags:

img

Resumo

Esta é uma estratégia de negociação de breakout que combina indicadores de impulso e níveis de suporte chave.

Estratégia lógica

A lógica central da estratégia é: quando o preço está perto do nível de suporte chave Camarilla e efetivamente rompe esse nível, um sinal de compra é gerado; quando o preço sobe para o nível de resistência chave Camarilla, um sinal de venda é gerado.

Especificamente, a estratégia usa o nível de suporte Camarilla L3 como o nível de confirmação para o sinal de compra. Quando o preço está abaixo de L3 e abaixo do ponto médio de L3 e L2, a condição de compra será acionada. Isso indica que o preço está perto do suporte crítico e provavelmente vai se recuperar. Para filtrar falhas, a estratégia também define os critérios de entrada de que o preço de fechamento deve ser maior que o preço de abertura.

O método de stop loss da estratégia é definir um nível de stop loss dinâmico. Quando o preço excede o ponto médio dos níveis de resistência Camarilla H1 e H2, a venda de stop loss será acionada. Este nível de stop loss dinâmico pode rastrear o stop loss com base na volatilidade do mercado.

Análise das vantagens

Trata-se de uma estratégia fiável que combina tendências e níveis de apoio.

  1. Utilização de níveis-chave da Camarilla que são níveis de preços comprovadamente importantes.
  2. Combinando filtro de tendência para reduzir ser pego em tendências.
  3. A estratégia de stop loss dinâmica ajusta o nível de stop com base na volatilidade do mercado, com forte tolerância a falhas.

Análise de riscos

A estratégia apresenta também alguns riscos:

  1. Estes níveis-chave podem deixar de ser aplicáveis quando a estrutura do mercado mudar.
  2. O stop loss é muito agressivo, as pequenas paradas podem ser atingidas prematuramente.
  3. Os sinais de compra podem aparecer em retrocessos enganosos em tendências descendentes, com risco de perdas.

As contra-medidas são: ajustar os parâmetros Camarilla para se adequarem melhor ao intervalo de volatilidade do mercado atual; alargar adequadamente o intervalo de stop loss para evitar o stop out prematuro; apenas curto quando em tendência de baixa para evitar a armadilha longa.

Orientações de otimização

Outras orientações de otimização para esta estratégia incluem:

  1. Adicionar condições adicionais do filtro, tais como indicadores de volume ou elasticidade, para evitar a entrada em direção errada.
  2. Otimizar os parâmetros Camarilla para que os níveis de suporte/resistência se adequem melhor à faixa de flutuação atual.
  3. Tente diferentes parâmetros de média móvel para encontrar a melhor combinação de parâmetros.
  4. Ajustar a agressividade das paradas com base nas características dos diferentes produtos.

Conclusão

Esta estratégia utiliza de forma abrangente múltiplas dimensões como tendência, nível de suporte, breakout para formular regras de entrada e parada. É uma estratégia de negociação de breakout relativamente robusta. Combina a eficácia de verificação de níveis importantes de Camarilla e o julgamento da tendência de indicadores de momento.


/*backtest
start: 2023-11-05 00:00:00
end: 2023-11-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//Created by CristianD
strategy(title="CamarillaStrategyVhaouri", shorttitle="CD_Camarilla_StrategyV1", overlay=true) 
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,8)
hh ="X"
//Camarilla
pivot = (high + low + close ) / 3.0 
range = high - low
h5 = (high/low) * close 
h4 = close + (high - low) * 1.1 / 2.0
h3 = close + (high - low) * 1.1 / 4.0
h2 = close + (high - low) * 1.1 / 6.0
h1 = close + (high - low) * 1.1 / 12.0
l1 = close - (high - low) * 1.1 / 12.0
l2 = close - (high - low) * 1.1 / 6.0
l3 = close - (high - low) * 1.1 / 4.0
l4 = close - (high - low) * 1.1 / 2.0
h6 = h5 + 1.168 * (h5 - h4) 
l5 = close - (h5 - close)
l6 = close - (h6 - close)

// Daily line breaks
//sopen = request.security(syminfo.tickerid, "D", open [1])
//shigh = request.security(syminfo.tickerid, "D", high [1])
//slow = request.security(syminfo.tickerid, "D", low [1])
//sclose = request.security(syminfo.tickerid, "D", close [1])
//
// Color
//dcolor=sopen != sopen[1] ? na : black
//dcolor1=sopen != sopen[1] ? na : red
//dcolor2=sopen != sopen[1] ? na : green

//Daily Pivots 
dtime_pivot = request.security(syminfo.tickerid, 'W', pivot[1]) 
dtime_h6 = request.security(syminfo.tickerid, 'W', h6[1]) 
dtime_h5 = request.security(syminfo.tickerid, 'W', h5[1]) 
dtime_h4 = request.security(syminfo.tickerid, 'W', h4[1]) 
dtime_h3 = request.security(syminfo.tickerid, 'W', h3[1]) 
dtime_h2 = request.security(syminfo.tickerid, 'W', h2[1]) 
dtime_h1 = request.security(syminfo.tickerid, 'W', h1[1]) 
dtime_l1 = request.security(syminfo.tickerid, 'W', l1[1]) 
dtime_l2 = request.security(syminfo.tickerid, 'W', l2[1]) 
dtime_l3 = request.security(syminfo.tickerid, 'W', l3[1]) 
dtime_l4 = request.security(syminfo.tickerid, 'W', l4[1]) 
dtime_l5 = request.security(syminfo.tickerid, 'W', l5[1]) 
dtime_l6 = request.security(syminfo.tickerid, 'W', l6[1]) 

men = (dtime_l1-dtime_l2)/7
//plot(sd and dtime_l5 ? dtime_l5 : na, title="Daily L5",color=dcolor2, linewidth=2)
//plot(sd and dtime_l6 ? dtime_l6 : na, title="Daily L6",color=dcolor2, linewidth=2)

longCondition = close <=dtime_l3 and close  <= (dtime_l3-men)//close >dtime_h4 and open < dtime_h4 and EMA < close
if (longCondition)
    strategy.entry("Long12", strategy.long)
    strategy.exit ("Exit Long","Longl2") 
if (high >= (dtime_h1-men))
    strategy.entry("Short", strategy.short)
    strategy.exit ("Exit Short","Short")
  

    


Mais.