Estratégia de onda FiboBuLL baseada na quebra das Bandas de Bollinger


Data de criação: 2023-12-01 14:11:56 última modificação: 2023-12-01 14:11:56
cópia: 0 Cliques: 729
1
focar em
1619
Seguidores

Estratégia de onda FiboBuLL baseada na quebra das Bandas de Bollinger

Visão geral

A estratégia de onda FiboBuLL é uma estratégia de negociação baseada na versão de filtro da faixa de brinquedos, que pode ser encontrada na página do meu programa. A estratégia faz mais quando o preço se fecha acima da linha superior e fica em branco quando o preço se fecha abaixo da linha inferior.

As faixas de Brin são um indicador clássico que usa uma média móvel simples de 20 períodos, com um traço ascendente e descendente de cada 2 padrões de diferença acima da linha de referência. Estas faixas ajudam a visualizar a volatilidade e a tendência dos preços com base na posição dos preços em relação às faixas.

A estratégia não considera outros parâmetros, como volume de transação, RSI, fundamentos, etc., portanto, o usuário deve exercer o seu próprio critério de acordo com a confirmação ou o fundamento de outros indicadores. Os resultados da estratégia são baseados puramente em negociações de ativos e ativos em branco, sem considerar qualquer objetivo ou stop loss definido pelo usuário.

A estratégia funciona melhor quando os preços se fecham em um fechamento de alta/baixa em colunas contínuas. A decisão de usar a estratégia ou o filtro de alta/baixa baseado na volatilidade, juntamente com outros indicadores, é sem dúvida um passo sensato.

A estratégia pode ser usada em gráficos de dia e hora e pode ser usada para encontrar tendências em estratégias de dia e de noite, mas não é recomendada para entradas de negociação, pois não refletem o preço real do ativo.

Princípio da estratégia

O princípio central da estratégia de ondas FiboBuLL é a ruptura do preço com base no indicador da faixa de Brin. A faixa de Brin é composta por um meio-trajeto, um trajeto superior e um trajeto inferior. O meio-trajeto é a média móvel simples de 21 ciclos do preço de encerramento.

Quando o preço de fechamento acima atravessa a órbita, gera um sinal de tomada de posição; quando o preço de fechamento abaixo atravessa a órbita, gera um sinal de tomada de posição. Depois de fazer mais tomadas de posição, novamente, a posição está clara quando a trajetória oposta é quebrada.

A estratégia usa a função barssince para rastrear o preço em relação ao número de rupturas na trajetória ascendente e descendente. Quando o número de colunas de ruptura na trajetória ascendente é menor que o número de colunas na trajetória descendente, o sinal de quebra é gerado.

Ao ajustar os parâmetros do ciclo orbital médio e os parâmetros do múltiplo de diferença padrão, pode-se alterar a sensibilidade de ruptura da faixa de Brin para ajustar o tempo de entrada.

Análise de vantagens

A estratégia de ondas FiboBuLL tem as seguintes vantagens:

  1. A Brincadeira de Price Breakdown é simples e fácil de entender.
  2. A sensibilidade de ruptura pode ser controlada por ajuste de parâmetros
  3. A visualização de Brinks ajuda a avaliar os movimentos e as tendências dos preços
  4. Pode ser usado em conjunto com outros indicadores para melhorar a precisão das decisões
  5. Pode ser usado em vários períodos de tempo, é altamente adaptável

Análise de Riscos

A estratégia de ondas FiboBuLL também tem alguns riscos a serem observados:

  1. Dependendo apenas de uma ruptura da faixa de Bryn, é fácil gerar sinais errados
  2. Não é possível determinar a intensidade e a duração da ruptura.
  3. Não é possível determinar a inversão de preços após a ruptura
  4. Configuração sem perdas, alto risco de perda

Para os riscos acima mencionados, é possível otimizar os seguintes aspectos:

  1. Combinação com outros indicadores para evitar sinais errados
  2. Definição de parâmetros com base em testes de dados históricos
  3. Configurar um ponto de parada para controlar o máximo de perdas
  4. Considere a inclusão de um fator de reversão para avaliar a continuidade

Direção de otimização

A estratégia de ondas FiboBuLL tem algumas melhorias importantes:

  1. Adição de indicadores de transação, como o indicador de energia de maré, para evitar falsas rupturas de impotência
  2. Combinação de indicadores de overbought e oversold, como o RSI, para melhorar a precisão da decisão
  3. Determinar o melhor ciclo e o múltiplo da diferença padrão com base na configuração dos parâmetros de otimização de retrospectiva histórica
  4. Configurar níveis de stop loss e stop loss, controlar riscos e bloquear lucros
  5. Considerando tendências e condições de filtragem de reversão, julgar a direção contínua
  6. Parâmetros de configuração para testes de diferentes variedades e períodos

Otimizando alguns dos pontos acima, pode-se aumentar significativamente a estabilidade e a lucratividade da estratégia de ondas FiboBuLL.

Resumir

A estratégia de onda FiboBuLL usa os princípios básicos da faixa de Brin para determinar a ruptura do preço e o retorno ao centro da trajetória, para rastrear a oscilação do preço no meio da trajetória e para baixo, e para formar um sinal de negociação com a ruptura. A estratégia é simples em conceito, de ampla aplicação e é uma maneira eficaz de rastrear a volatilidade do mercado.

No entanto, a mera dependência de uma brecha pode levar a um sinal errado e a uma brecha impotente. Portanto, é necessário combinar a tendência, o volume de transações e outros fatores para avaliar a confiabilidade da brecha e definir o risco de controle de parada de perdas para que a estratégia seja mais eficaz.

A estratégia de ondas FiboBuLL fornece-nos uma estrutura básica para determinar a hora de negociar com base nas flutuações de preços. A estratégia pode ser uma ferramenta poderosa para a tomada de decisões de negociação em um processo de otimização contínua e em conjunto com outros indicadores.

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

//@version=5
//@FiboBuLL

strategy(shorttitle='FB Wave', title='FiboBuLL Wave (A version of Bollinger Bands Breakout Strategy By Trade Chartist)', overlay=true, pyramiding=1, currency=currency.NONE, initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

src = input(close, title='Source')
length = input.int(21, minval=1, title='SMA length')  // 20 for classis Bollinger Bands SMA line (basis)


mult = input.float(1., minval=0.236, maxval=2, title='Standard Deviation')  //2 for Classic Bollinger Bands //Maxval = 2 as higher the deviation, higher the risk
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)

Show = input.string('Both', options=['Longs Only', 'Shorts Only', 'Both'], title='Trade Type')
CC = input(true, 'Color Bars')

upper = basis + dev
lower = basis - dev

//Conditions for Long and Short - Extra filter condition can be used such as RSI or CCI etc.

short = src < lower  // and rsi(close,14)<40
long = src > upper  // and rsi(close,14)>60

L1 = ta.barssince(long)
S1 = ta.barssince(short)

longSignal = L1 < S1 and not (L1 < S1)[1]
shortSignal = S1 < L1 and not (S1 < L1)[1]

//Plots and Fills


////Long/Short shapes with text
// plotshape(S1<L1 and not (S1<L1)[1]?close:na, text = "sᴇʟʟ", textcolor=#ff0100, color=#ff0100, style=shape.triangledown, size=size.small, location=location.abovebar, transp=0, title = "SELL", editable = true)
// plotshape(L1<S1 and not (L1<S1)[1]?close:na, text = "ʙᴜʏ", textcolor = #008000, color=#008000, style=shape.triangleup, size=size.small, location=location.belowbar, transp=0, title = "BUY", editable = true)  

// plotshape(shortSignal?close:na, color=#ff0100, style=shape.triangledown, size=size.small, location=location.abovebar, transp=0, title = "Short Signal", editable = true)
// plotshape(longSignal?close:na, color=#008000, style=shape.triangleup, size=size.small, location=location.belowbar, transp=0, title = "Long Signal", editable = true)  


p1 = plot(upper, color=color.new(#ff0000, 75), display=display.all, title='Upper Band')
p2 = plot(lower, color=color.new(#008000, 75), display=display.all, title='Lower Band')

p = plot(basis, color=L1 < S1 ? #008000 : S1 < L1 ? #ff0000 : na, linewidth=2, editable=false, title='Basis')

fill(p, p1, color=color.new(color.teal, 85), title='Top Fill')  //fill for basis-upper
fill(p, p2, color=color.rgb(217, 161, 161), title='Bottom Fill', transp=85)  //fill for basis-lower

//Barcolor

bcol = src > upper ? color.new(#8ceb07, 0) : src < lower ? color.new(#ff0000, 0) : src > basis ? color.green : src < basis ? color.red : na

barcolor(CC ? bcol : na, editable=false, title='Color Bars')


// === INPUT BACKTEST RANGE ===
FromMonth = input.int(defval=1, title='From Month', minval=1, maxval=12)
FromDay = input.int(defval=1, title='From Day', minval=1, maxval=31)
FromYear = input.int(defval=2018, title='From Year', minval=2015)
ToMonth = input.int(defval=1, title='To Month', minval=1, maxval=12)
ToDay = input.int(defval=1, title='To Day', minval=1, maxval=31)
ToYear = input.int(defval=9999, title='To Year', minval=2010)

// === FUNCTION EXAMPLE === 
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)  // backtest finish window
window() =>
    time >= start and time <= finish ? true : false

if window() and (Show == 'Longs Only' or Show == 'Both')
    strategy.entry('AL', direction=strategy.long, when=longSignal)
    strategy.close('LongAL', when=shortSignal, comment='AL KAPA')

if window() and (Show == 'Shorts Only' or Show == 'Both')
    strategy.entry('SAT', direction=strategy.short, when=shortSignal)
    strategy.close('SAT', when=longSignal, comment='SAT KAPA')