Estratégia Fractal Breakout


Data de criação: 2023-12-19 15:32:57 última modificação: 2023-12-19 15:32:57
cópia: 2 Cliques: 885
1
focar em
1621
Seguidores

Estratégia Fractal Breakout

Visão geral

A estratégia é uma estratégia de acompanhamento de tendências de linha longa para determinar a tendência dos preços. Ela determina a posição por meio do cálculo dos pontos de divisão dos preços históricos e determina a ruptura do último ponto de divisão.

Princípio da estratégia

  1. Os pontos de divisão são definidos como os preços mais altos do dia acima dos preços mais altos dos dois dias anteriores e dos dois dias seguintes.
  2. Registre o preço do último ponto de divisão como resistência.
  3. Quando o preço de fechamento quebra o último ponto de fractura, considere que a resistência foi quebrada e estabeleça uma posição de mais.
  4. Calcule o preço médio dos últimos N pontos de divisão para determinar a tendência. Quando o preço médio sobe, é uma tendência de alta, e quando cai, é uma tendência de baixa.
  5. Se, ao fazer uma posição múltipla, o preço do ponto de divisão médio se transformar em queda, então a posição está em equilíbrio.

Análise de vantagens

Esta estratégia baseada em pontos de divisão para determinar a tendência, a maior vantagem é que pode filtrar eficazmente o ruído do mercado e determinar a direção da tendência de uma linha mais longa. Em comparação com indicadores como a média móvel simples, ela é mais resistente a flutuações anormais súbitas.

Além disso, a estratégia julga os critérios de construção e manutenção de uma posição com muita clareza, sem problemas de negociação frequente. Isso também torna a estratégia especialmente adequada para a posse de linhas longas.

Análise de Riscos

O maior risco dessa estratégia reside na probabilidade do próprio julgamento dos pontos de divisão. Os pontos de divisão não podem prever 100% de que o preço deve ser revertido, ou seja, a probabilidade de julgamento errado permanece. Quando ocorre um julgamento errado, o risco de perda será enfrentado.

Além disso, o tempo de julgamento de pontos de divisão é longo e não é adequado para negociações de alta frequência. Esta estratégia também não é adequada se você estiver buscando negociações de linha curta.

Direção de otimização

Tendo em conta a probabilidade de erro na determinação do ponto de separação, podemos otimizar o resultado da análise por meio dos seguintes métodos:

  1. Combinando a confirmação com outros indicadores, como o canal de Brink’s Line, a média móvel, etc., evita erros de julgamento de ponto fracionado único.

  2. Ajustar os parâmetros do ponto de divisão, como o número de ciclos antes e depois do julgamento, para otimizar o julgamento do ponto de divisão.

  3. Aumentar a estratégia de parar perdas, parar perdas quando os prejuízos se expandem a um certo nível.

Resumir

Esta estratégia de divisão de ruptura é muito adequada para avaliar tendências de longo prazo e para ser usada por investidores de longo prazo. Só precisamos ajustar os parâmetros adequadamente e adicionar outros indicadores de filtragem para garantir a precisão do julgamento.

Código-fonte da estratégia
/*backtest
start: 2023-11-18 00:00:00
end: 2023-12-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Fractal Breakout Strategy (by ChartArt)", shorttitle="CA_-_Fractal_Breakout_Strat", overlay=true)

// ChartArt's Fractal Breakout Strategy
//
// Version 1.0
// Idea by ChartArt on April 24, 2016.
//
// This long only strategy determines the last fractal top
// and enters a trade when the price breaks above the last
// fractal top. The strategy also calculates the average
// price of the last 2 (or 3) fractal tops to get the trend.
//
// The strategy exits the long trade when the average of the
// fractal tops is falling (when the trend is lower highs).
// And the user can manually set a delay of this exit.
//
// In addition the fractals tops can be colored in blue
// and a line can be drawn based on the fractal tops.
// This fractal top line is colored by the fractal trend.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 


// input

n_time = input(title='Always exit each trade after this amount of bars later (Most important strategy setting)', defval=3)
price = input(hl2,title='Price type to determine the last fractal top and the fractal breakout, the default is (high+low)/2')


// fractal calculation

fractal_top = high[2] > high[3] and high[2] > high[4] and high[2] > high[1] and high[2] > high[0]
fractal_price = valuewhen(fractal_top, price, 1)
use_longer_average = input(true,title='Use Fractal price average of the last 3 fractals instead of the last 2 fractals?')
fractal_average = use_longer_average?(fractal_price[1] + fractal_price[2] + fractal_price[3] ) / 3 : (fractal_price[1] + fractal_price[2]) / 2
fractal_trend = fractal_average[0] > fractal_average[1]
no_repainting = input(true,title='Use the price of the last bar to prevent repainting?')
fractal_breakout = no_repainting?price[1] > fractal_price[0]:price[0] > fractal_price[0]


// highlight fractal tops

show_highlight = input(true,title='Highlight fractal tops in blue and color all other bars in gray?')
highlight = fractal_top?blue:silver
barcolor(show_highlight?highlight:na,offset=-2)
show_fractal_top_line = input(true,title='Draw a colored line based on the fractal tops?')
fractal_top_line = change(fractal_top) != 0 ? price : na
fractal_top_line_color = change(fractal_price) > 0 and fractal_breakout == true ? green : change(fractal_price) < 0 and fractal_breakout == false ? red : blue
plot(show_fractal_top_line?fractal_top_line:na,offset=-2,color=fractal_top_line_color,linewidth=4)


// strategy

trade_entry = fractal_trend and fractal_breakout
trade_exit = fractal_trend[n_time] and fractal_trend == false 
 
if (trade_entry)
    strategy.entry('Long', strategy.long)
 
if (trade_exit)
    strategy.close('Long')