BB Estratégia de negociação dupla longa e curta

Autora:ChaoZhang, Data: 2023-11-02 15:40:00
Tags:

img

Resumo

A estratégia de negociação de longo e curto duplo do BB é uma estratégia que utiliza as Bandas de Bollinger para negociação de duas vias. Combina a faixa média, faixa superior e faixa inferior das Bandas de Bollinger para implementar a abertura e fechamento de posições longas e curtas.

Análise dos princípios

Esta estratégia baseia-se principalmente no princípio das Bandas de Bollinger. As Bandas de Bollinger consistem de uma banda média, uma banda superior e uma banda inferior, representando a tendência móvel dos preços. A banda média é a média móvel de n dias, a banda superior é a banda média + k desvios padrão e a banda inferior é a banda média - k desvios padrão.

Especificamente, a estratégia primeiro calcula as faixas média, superior e inferior de Bollinger. Em seguida, julga se o preço toca a faixa superior. Se sim, abre posições curtas. Também julga se o preço toca a faixa inferior. Se sim, abre posições longas. Após abrir posições, também define preços de stop loss e take profit. Por exemplo, após abrir posições longas, o preço de stop loss seria o preço de abertura menos uma certa porcentagem, e o preço de take profit seria o preço de abertura mais uma certa porcentagem. Finalmente, a estratégia também define as condições de fechamento, incluindo stop loss, take profit sendo atingido e o preço de reentrada nas faixas de Bollinger.

A estratégia utiliza plenamente a capacidade das Bandas de Bollinger para refletir as condições de mercado sobrecompradas e sobrevendidas, e implementa negociações longas e curtas relativamente precisas.

Análise das vantagens

A estratégia apresenta as seguintes vantagens:

  1. As bandas de Bollinger podem identificar a principal direção da tendência e abrir posições a tempo de capturar tendências.

  2. Comércio bidirecional: permite simultaneamente negociações longas e curtas, sem ser limitado a uma direcção.

  3. Controle de riscos: a configuração de stop loss e take profit garante que cada negociação tenha medidas de mitigação de perdas.

  4. Com base no indicador Bollinger Bands, as regras da estratégia são diretas e fáceis de entender.

  5. Parâmetros como o comprimento do ciclo e o multiplicador de desvio padrão podem ser ajustados para otimizar a estratégia.

  6. Aplicável a diferentes mercados. Pode ser aplicado a ações, forex, criptomoedas etc.

Análise de riscos

A estratégia apresenta também alguns riscos:

  1. Risco de falha das bandas de Bollinger.

  2. O risco de perda de parada pode ser atingido durante mudanças drásticas da tendência.

  3. Risco de otimização excessiva. A otimização excessiva pode levar a sobreajuste.

  4. Risco de alta frequência de negociação, as frequentes flutuações das bandas de Bollinger podem conduzir a excesso de negociação.

  5. O risco de saída baseado apenas no toque da banda pode ser prematuro.

As soluções são:

  1. Combina com indicadores de tendência, estratégia de fechamento a tempo quando as bandas falharem.

  2. Adotar um stop loss.

  3. Testes de retrocesso em mercados e prazos diferentes para evitar o excesso de adequação.

  4. Relaxar o intervalo de flutuação para reduzir a frequência de negociação.

  5. Adicione indicadores de saída como a divergência MACD para confirmar o sinal das bandas.

Orientações de otimização

A estratégia pode ser otimizada nos seguintes aspectos:

  1. Ajuste os parâmetros de Bollinger como o comprimento do ciclo para corresponder a diferentes tendências do ciclo e o multiplicador de desvio padrão para se adequar à volatilidade do mercado.

  2. Adicionar filtro de tendência, combinar indicadores como média móvel para determinar tendência, evitar falsos sinais quando não há tendência clara.

  3. Otimizar a estratégia de stop loss, como trailing stop loss para acompanhar o preço mais perto, ou definir stop loss com base no ATR.

  4. Adicione filtros de entrada como bandas de quebra de preço de fechamento para evitar falsas quebras na faixa média.

  5. Usar aprendizagem de máquina para otimizar automaticamente parâmetros.

  6. Adicionar indicadores de saída como a divergência MACD para complementar os sinais de banda.

Resumo

Em geral, a estratégia de negociação de longo e curto duplo BB é uma estratégia de Bollinger Bands muito típica e prática. Ele usa as Bandas de Bollinger para julgar condições de sobrecompra e sobrevenda para capturar tendências, implementa negociação bidirecional, e define stop loss e take profit para controle de risco. A estratégia tem as vantagens de capturar tendências, negociação bidirecional e controle de risco, e também tem problemas como falha de Bollinger Bands. Podemos melhorar a estratégia ajustando parâmetros de Bollinger, adicionando filtros de tendência, otimizando stop loss, etc. A estratégia tem grande praticidade e potencial, e é uma estratégia de negociação simples útil que vale a pena recomendar.


/*backtest
start: 2023-10-25 00:00:00
end: 2023-11-01 00:00:00
period: 2m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © samuelkanneman

//@version=5
strategy('MI_BB ', overlay=true)
// i_startTime = input.time(title='Start Date Filter', defval=timestamp('01 Nov 2020 13:30 +0000'), tooltip='Date & time to begin trading from')
// i_endTime = input.time(title='End Date Filter', defval=timestamp('1 Nov 2022 19:30 +0000'), tooltip='Date & time to stop trading')

dateFilter = true

longitud = input(20, title='Longitud')
Desv = input.float(2.0, title='Desvio estandar', step=0.1)
fuente = input(close, title='Fuente')

TakeP = input.float(5.0, title='Take Profit', step=0.1)
StopL = input.float(1.0, title='Stop Loss', step=0.1)
var SL = 0.0
var TP = 0.0

[banda_central, banda_sup, banda_inf] = ta.bb(fuente, longitud, Desv)

comprado = strategy.position_size > 0
vendido = strategy.position_size < 0



if not vendido and not comprado and dateFilter
// Short
    if close >= banda_sup
    //cantidad= (strategy.equity/close)
        strategy.entry('venta', strategy.short)
        SL := close * (1 + StopL / 100)
        TP := close*(1-TakeP/100)
        
//Long
    else if close <= banda_inf
    //cantidad= (strategy.equity/close)
        strategy.entry('compra', strategy.long)
        SL := close * (1 - StopL / 100)
        TP := close*(1+TakeP/100)
    
//cierrres short
if close <= TP and vendido
    strategy.close ("venta" , comment="Salto TP")
if close <= banda_inf and vendido
    strategy.close ("venta" , comment="Banda Inferior")
if close >= SL and vendido
    strategy.close ("venta" , comment="Salto SL")
    
   
//cierre long
if close >= TP and comprado
    strategy.close ("compra" , comment="Salto TP")  
if close >= banda_sup and comprado
    strategy.close ("compra" , comment="Banda Superior")
    
if close <= SL and comprado
    strategy.close ("compra" , comment="Salto SL")
    


p1 = plot(banda_central)
p2 = plot(banda_sup)
p3 = plot(banda_inf)
fill(p2, p3, transp=90)




Mais.