En la carga de los recursos... Cargando...

Bandas de Bollinger Filtración de doble desviación estándar Estrategia de negociación cuantitativa de 5 minutos

El autor:¿ Qué pasa?, Fecha: 2024-04-30 16:03:11
Las etiquetas:El Boll- ¿ Qué?La SMAel

img

Resumen general

Esta estrategia se basa en el indicador de Bollinger Bands y utiliza filtro de doble desviación estándar para lograr una negociación rápida en un marco de tiempo de 5 minutos. Compra cuando el precio se rompe por debajo de la banda inferior y vende cuando se rompe por encima de la banda superior. Las bandas superior e inferior están establecidas por diferentes desviaciones estándar y marcadas con diferentes colores, mostrando visualmente la fuerza de la tendencia.

Principio de la estrategia

  1. Calcular la línea de base de las bandas de Bollinger, banda superior 1, banda superior 2, banda inferior 1 y banda inferior 2.
  2. Generar una señal de compra cuando el precio de cierre cruza por encima de la banda inferior 1 desde abajo.
  3. Generar una señal de venta cuando el precio de cierre cruza por debajo de la banda superior 1 desde arriba.
  4. Después de comprar, cierre la posición cuando aparezca una señal de venta.
  5. La banda superior 2 y la banda inferior 2 indican la fuerza de la tendencia y proporcionan un juicio auxiliar.

Ventajas estratégicas

  1. El ajuste de la doble desviación tipo mejora la precisión del juicio de la tendencia.
  2. La alta frecuencia de negociación en el nivel de 5 minutos es adecuada para entradas y salidas rápidas.
  3. El juicio auxiliar de la fuerza de la tendencia ayuda con el control del riesgo.
  4. Los parámetros ajustables se adaptan a los diferentes mercados.

Riesgos estratégicos

  1. El comercio frecuente puede llevar a altas comisiones.
  2. Los errores en el juicio de la tendencia traerán pérdidas.
  3. La falta de medidas de stop-loss expone a mayores riesgos.
  4. No es suficiente comprender las tendencias unilaterales.

Direcciones para la optimización de la estrategia

  1. Introducir mecanismos de stop-loss y take-profit para controlar los riesgos de una sola transacción.
  2. Optimizar los parámetros de las bandas de Bollinger para mejorar la capacidad de captura de tendencias.
  3. Añadir indicadores auxiliares para el juicio de tendencia, como MA, para aumentar la tasa de ganancia.
  4. Establecer las condiciones de filtración para los mercados de rango.

Resumen de las actividades

Esta estrategia utiliza las propiedades estadísticas de las bandas de Bollinger, con filtro de doble capa para mejorar el juicio de tendencia, adecuado para capturar rápidamente las oportunidades de tendencia a nivel de 5 minutos. Sin embargo, los problemas con operaciones frecuentes y medidas insuficientes de control de riesgos aún necesitan optimización.


/*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

Más.