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

Bollinger Bands Filtragem de Desvio Padrão Duplo Estratégia de Negociação Quantitativa de 5 Minutos

Autora:ChaoZhang, Data: 2024-04-30 16:03:11
Tags:BollBBSMA- Não.

img

Resumo

Esta estratégia é baseada no indicador Bollinger Bands e usa filtragem de desvio padrão duplo para alcançar negociação rápida em um período de tempo de 5 minutos. Ele compra quando o preço quebra abaixo da faixa inferior e vende quando quebra acima da faixa superior. As faixas superior e inferior são definidas por diferentes desvios padrão e marcadas com cores diferentes, mostrando visualmente a força da tendência.

Princípio da estratégia

  1. Calcular a linha de base das bandas de Bollinger, banda superior 1, banda superior 2, banda inferior 1 e banda inferior 2.
  2. Gerar um sinal de compra quando o preço de fechamento cruzar acima da faixa inferior 1 a partir de baixo.
  3. Gerar um sinal de venda quando o preço de fechamento cruzar abaixo da faixa superior 1 a partir de cima.
  4. Depois de comprar, feche a posição quando um sinal de venda aparecer.
  5. A banda superior 2 e a banda inferior 2 indicam a força da tendência e fornecem um julgamento auxiliar.

Vantagens da estratégia

  1. O ajuste do desvio-padrão duplo melhora a precisão do julgamento da tendência.
  2. A alta frequência de negociação no nível de 5 minutos é adequada para entrada e saída rápidas.
  3. O julgamento auxiliar da força da tendência ajuda no controlo do risco.
  4. Os parâmetros ajustáveis adaptam-se aos diferentes mercados.

Riscos estratégicos

  1. O comércio frequente pode levar a altas comissões.
  2. Erros no julgamento da tendência trarão perdas.
  3. A ausência de medidas de stop-loss expõe riscos maiores.
  4. Não compreender suficientemente as tendências unilaterais.

Orientações para a otimização da estratégia

  1. Introduzir mecanismos de stop-loss e take-profit para controlar os riscos de transações individuais.
  2. Otimizar os parâmetros das bandas de Bollinger para melhorar a capacidade de captura de tendências.
  3. Adicionar indicadores auxiliares para julgamento da tendência, tais como MA, para aumentar a taxa de vitória.
  4. Estabelecer condições de filtragem para mercados de faixa.

Resumo

Esta estratégia usa as propriedades estatísticas das Bandas de Bollinger, com filtragem de duas camadas para melhorar o julgamento da tendência, adequado para capturar rapidamente as oportunidades de tendência no nível de 5 minutos. No entanto, os problemas com negociação frequente e medidas insuficientes de controle de risco ainda precisam de otimização. No futuro, as melhorias podem continuar a ser feitas em termos de stop-loss e take-profit, otimização de parâmetros e julgamento auxiliar para melhorar a robustez e lucratividade geral.


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

//@version=5
//This displays the traditional Bollinger Bands, the difference is
//that the 1st and 2nd StdDev are outlined with two colors and two
//different levels, one for each Standard Deviation

strategy("Five Min Scalping Strategy", overlay=true)

src = input(close, title="Source")
length = input.int(20, minval=1, title="Length")
mult = input.float(2.0, minval=0.001, maxval=50, title="Multiplier")

basis = ta.sma(src, length)
dev = ta.stdev(src,length)
dev2 = mult * dev

upper1 = basis + dev
lower1 = basis - dev
upper2 = basis + dev2
lower2 = basis - dev2

LongCondition = close[1] < lower1 and close > lower1
ShortCondition = close[1] > upper1 and close < upper1

strategy.entry("Long", strategy.long, when = LongCondition)
strategy.entry("Short", strategy.short, when = ShortCondition)

strategy.close("Long", when = ShortCondition)
strategy.close("Short", when = LongCondition)

colorBasis = src >= basis ? color.blue : color.orange

pBasis = plot(basis, linewidth=2, color=colorBasis)
pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles)
pUpper2 = plot(upper2, color=color.new(color.blue, 0), style=plot.style_circles)
pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles)
pLower2 = plot(lower2, color=color.new(color.orange, 0), style=plot.style_circles)

fill(pBasis, pUpper2, color=color.new(color.blue, 80))
fill(pUpper1, pUpper2, color=color.new(color.blue, 80))
fill(pBasis, pLower2, color=color.new(color.orange, 80))
fill(pLower1, pLower2, color=color.new(color.orange, 80))


Relacionados

Mais.