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

Estratégia de ruptura de nível 20

Autora:ChaoZhang, Data: 2024-02-26 17:27:50
Tags:

img

Resumo

A estratégia de breakout de 20 níveis é uma estratégia de seguimento de tendência. Sua idéia central é que quando o preço atravessa um certo nível chave, ele indica uma inversão de tendência. Neste ponto, posições longas ou curtas podem ser estabelecidas de acordo com a direção do breakout.

Esta estratégia escolhe a média móvel de 20 dias como o nível chave. Quando o preço de fechamento atravessa a média móvel de 20 dias de cima, vá longo; quando o preço de fechamento atravessa a média móvel de 20 dias de baixo, vá curto.

Princípios

A estratégia de breakout de 20 níveis usa a média móvel de 20 dias para julgar as quebras de tendência. Quando os preços quebram a média móvel de 20 dias de cima para baixo, isso indica uma tendência de queda no mercado, então devemos ficar curtos. Quando os preços quebram a média móvel de 20 dias de baixo para cima, isso indica uma tendência de alta no mercado, então devemos ficar longos.

Esta estratégia também incorpora o indicador MACD para determinar as condições do mercado. Os sinais curtos são emitidos apenas quando o MACD é uma barra vermelha; os sinais longos são emitidos apenas quando o MACD é uma barra verde. Isso evita gerar sinais errados durante as consolidações do mercado.

Especificamente, a lógica estratégica é:

  1. Definir a média móvel de 20 dias como linha de base;
  2. Quando o preço de fechamento for superior à linha de base +0,2% e a condição MACD estiver preenchida, negociar próximo do preço de abertura no dia seguinte à ruptura;
  3. Quando o preço de fechamento for inferior à linha de base -0,2% e a condição MACD estiver preenchida, proceder a operações de curto prazo perto do preço de abertura no dia seguinte à ruptura;
  4. Estabelecer um stop loss a 0,5% abaixo da linha de base e um take profit a 1% acima da linha de base para posições longas;
  5. Defina o stop loss a 0,5% acima da linha de base e o take profit a 1% abaixo da linha de base para posições curtas.

Com esta configuração, esta estratégia pode capturar oportunidades no tempo em que ocorrem transições de tendência, alcançando o objetivo de acompanhar as tendências do mercado.

Análise das vantagens

A estratégia de ruptura de 20 níveis tem as seguintes vantagens:

  1. As regras de cálculo e julgamento da média móvel de 20 dias são muito simples.

  2. Usando breakouts de preços como sinais de negociação pode efetivamente evitar operações reversas desnecessárias.

  3. Forte capacidade de rastreamento de tendências. A média móvel de 20 dias pode refletir muito bem as mudanças nas tendências de médio prazo. A combinação de filtros MACD evita o estabelecimento errôneo de posições durante as consolidações de tendências.

Análise de riscos

A estratégia de ruptura de 20 níveis também apresenta os seguintes riscos:

  1. Quando os preços flutuam violentamente, o método da média móvel de 20 dias ficará atrasado, possivelmente perdendo a melhor oportunidade de entrada.

  2. Se não houver um bom filtro de indicador, haverá muitas negociações inválidas.

  3. A estratégia não considera a amplitude das flutuações de preços.

  4. Os níveis fixos de stop loss e take profit também afectam o bom funcionamento da estratégia, o que exige ajustes dos parâmetros em função dos diferentes activos subjacentes.

Orientações de otimização

A estratégia de ruptura de 20 níveis pode ser otimizada nos seguintes aspectos:

  1. Tente as médias móveis com diferentes períodos, tais como 10 dias, 30 dias, etc., para ver qual período pode entender melhor a tendência.

  2. Adicionar indicadores de volatilidade para ajustar dinamicamente as posições com base na magnitude das flutuações de preços.

  3. Optimize as posições de stop loss e take profit. Os parâmetros ideais podem ser calculados a partir de dados históricos de backtest.

  4. Tente combinar outros indicadores como KDJ, Bandas de Bollinger, etc. para filtragem de sinais.

  5. Desenvolver versões melhoradas encontrando tendências maiores em prazos mais longos primeiro, e depois entrando em prazos mais baixos.

Conclusão

A estratégia de ruptura de 20 níveis identifica pontos de virada de tendência através de rupturas de preço. Ela tem as vantagens de operação simples e forte capacidade de rastreamento de tendência. Mas ainda há alguns riscos que precisam de otimização adicional para se adaptar à complexidade do mercado.


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

//@version=5


//@version=4
strategy("20 Level Breakout", overlay=true)

baseLevel = math.floor(close * 100) /100
eigthylevel = baseLevel - 0.002
twentyLevel = baseLevel + 0.002
takeprofitL = baseLevel - 0.01
stoplossL = baseLevel + 0.02 
takeprofitS = baseLevel + 0.015
stoplossS = baseLevel - 0.02

isPriceAboveLevel(price, level) =>
    price > level

breakout = close > twentyLevel and close > baseLevel
breakoutl = close < eigthylevel and close < baseLevel
// Entry condition: Only enter if there are no open trades and the close is between baseLevel and baseLevel + 0.01
isLong = breakout and close > baseLevel and close <= (baseLevel + 0.01) and ta.rsi(close, 14) > 40 and ta.ema(close,50)<close
isShort = breakoutl and close < baseLevel and close >= (baseLevel - 0.01)
// Debugging
plot(isLong ? 1 : 0, color=color.blue, style=plot.style_histogram)
plotshape(isLong, style=shape.triangledown, color=color.green, size=size.small)
plotshape(isShort, style = shape.triangleup, color =  color.red, size = size.small)
// Plotting the stop loss line
plot(stoplossL, color=color.red, linewidth=2, title="Take Profit")
plot(stoplossS, color=color.green, linewidth = 2, title = " Take Profit")
strategy.entry("Short", strategy.short, when=isLong, stop =twentyLevel)
strategy.exit("Stop Loss/Profit", "Short", stop = stoplossL , limit = takeprofitL)

strategy.entry("Long",strategy.long, when=isShort , stop = eigthylevel )
strategy.exit("Stop loss/Profit", "Long", stop = stoplossS , limit = takeprofitS)

Mais.