Estratégia de fuga de três linhas

Autora:ChaoZhang, Data: 23 de setembro de 2023 16:02:20
Tags:

Resumo

Esta estratégia é baseada em um gráfico de três linhas modificadas. Duas linhas feitas de preços de fechamento formam uma forma de cloud. A quebra abaixo da nuvem sinaliza uma nova tendência de baixa. A quebra acima da nuvem sinaliza uma nova tendência de alta. É uma estratégia de ação de preço que pode ser combinada com filtros de tendência como o SuperTrend.

Estratégia lógica

  1. Defina o preço atual xu, xu1, xu2, xu3 para traçar três linhas.

  2. Atualizar xu1, xu2, xu3 com base no preço como faixa superior/inferior.

  3. Xu quebra xu3 começa uma tendência curta, quebra xu1 começa uma tendência longa.

  4. Grava a banda de nuvens usando xu e xu3.

  5. Opção para negociar na direção inversa.

  6. Entrar nas nuvens e sair quando voltar para dentro.

Análise das vantagens

As vantagens desta estratégia são as seguintes:

  1. Baseado unicamente na ação dos preços, não afetado por indicadores.

  2. Padrão de três linhas claro e intuitivo.

  3. Flexibilidade para reverter as transacções.

  4. Fácil de combinar com tendências e outros indicadores.

  5. Facilita testes e visualizações para refinamento.

Análise de riscos

Os principais riscos desta estratégia são:

  1. Padrões de preços propensos a falsas rupturas de eventos.

  2. Não haver stop loss expõe-nos a grandes perdas.

  3. Ignora os custos comerciais.

  4. Os parâmetros fixos podem não ser adequados a diferentes produtos.

  5. Não conta para fuga consecutiva.

  6. A reversão da negociação é arriscada face às principais tendências.

Orientações de otimização

A estratégia pode ser melhorada:

  1. Adicionar stop loss e otimizar paradas.

  2. Contabilização dos custos de negociação.

  3. Parâmetros de ensaio para diferentes produtos.

  4. Melhorando a lógica de fuga para pausas consecutivas.

  5. Adicionar filtro de tendência para evitar negociações contra-tendência.

  6. Controlar o dimensionamento da posição.

  7. Aumentar o período de testes de retrospectiva de robustez.

Resumo

A estratégia de breakout de três linhas fornece sinais intuitivos baseados em padrões de preço. Pode ser fortalecida adicionando tendências, indicadores, paradas, lógica e parâmetros otimizados e dimensionamento de posição. Isso pode transformá-lo em um robusto sistema de negociação de curto prazo.


/*backtest
start: 2022-09-22 00:00:00
end: 2023-09-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 31/05/2019
// This is a modified version of the three line break price representation. 
// It is composed with 2 lines made of Close price values forming a “cloud”.
//    If the trend is bullish and the price breach the lower level of the green 
//       cloud, a new bearish trend is taking place.
//    If the current trend is bearish and the price breakout the upper band of 
//       the cloud, a new bullish trend is forming.
// This is a “price action” indicator, signals may be filtered by long term trend 
// analysis with other indicators such as Supertrend for instance.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Three Line Break", overlay = true)
reverse = input(false, title="Trade reverse")
xtrend = 1
xu = close
xu1 = close
xu2 = close
xu3 = close
if xtrend[1] == 1
    if close > xu[1]
        xu3 := xu2[1]
        xu2 := xu1[1]
        xu1 := xu[1]
        xu := close
        xtrend := 1
    else 
        if close < xu3[1]
            xu3 := xu1[1]
            xu2 := xu1[1]
            xu1 := xu1[1]
            xu := close
            xtrend := -1        
        else
            xtrend := 1
else
    if close > xu3[1]
        xu3 := xu1[1]
        xu2 := xu1[1]
        xu1 := xu1[1]
        xu := close
        xtrend := 1
    else
        if close < xu[1] 
            xu3 := xu2[1]
            xu2 := xu1[1]
            xu1 := xu[1]
            xu := close
            xtrend := -1
        else
            xtrend := -1
colorm = xtrend == -1 ? red: xtrend == 1 ? green : blue 
possig = iff(reverse and xtrend == 1, -1,
          iff(reverse and xtrend == -1, 1, xtrend))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 		
p1 = plot(xu, color=colorm)
p2 = plot(xu3, color=colorm)
fill(p1, p2, color=colorm)

Mais.