Estrategia de seguimiento de tendencia de banda de Bollinger de doble media móvil


Fecha de creación: 2023-12-22 14:54:20 Última modificación: 2023-12-22 14:54:20
Copiar: 1 Número de Visitas: 619
1
Seguir
1621
Seguidores

Estrategia de seguimiento de tendencia de banda de Bollinger de doble media móvil

Descripción general

La estrategia es una estrategia de comercio cuantitativa que utiliza una combinación de bandas de Brin y líneas medias para juzgar y entrar en tendencias. Combina la capacidad de reconocimiento de tendencias de las bandas de Brin y el efecto de fluctuación de las medias móviles para identificar eficazmente la dirección de la tendencia del mercado y entrar en la tendencia.

Principio de estrategia

  1. Los precios máximos y mínimos se utilizan para calcular el canal de la banda de Brin y determinar la dirección de la tendencia del mercado.

    • Los canales de cálculo de precios más altos y más bajos
    • El eje central del canal es el promedio de los precios más altos y más bajos
    • La posición de los precios en el canal determina la dirección de la tendencia
  2. Cálculo del tamaño de la entidad solar para determinar señales de parada y reversión

    • El valor absoluto de la entidad de la línea de sol es el precio de cierre menos el precio de apertura
    • Calcula el promedio de las entidades de rayos X en N ciclos, comparándolos con el tamaño de las entidades de rayos X actuales, para determinar el stop loss y la inversión
  3. Una vez confirmada la dirección de la tendencia, se realiza la entrada en la dirección del canal

    • La tendencia ascendente se adentra cerca de las vías inferiores
    • Cabeza en el aire cerca de la vía superior cuando la tendencia baja
  4. El uso de medias móviles para filtrar y evitar falsas señales

    • Calcula el promedio móvil del precio de cierre de N ciclos
    • Las señales de negociación solo se emiten cuando el precio supera la media

Ventajas estratégicas

  1. Tendencia de juicio en combinación con el canal de la cinta de Bryn y la media móvil, fuerte sistematización

La banda de Brin permite determinar con claridad el canal de precios y la dirección de la tendencia, y las medias móviles filtran las ondas. La combinación de ambos permite identificar con eficacia las tendencias, evitar el impacto de los eventos inesperados del mercado y garantizar la estabilidad del sistema.

  1. Utiliza el tamaño de la entidad solar para detener el daño y controlar el riesgo de manera efectiva

Mediante el cálculo del promedio del tamaño de las entidades de la línea de sol en un determinado período, comparado con el tamaño de las entidades del ciclo actual, se puede determinar con claridad la reversión de la tendencia, realizar un stop loss y una reducción de la posición, lo que permite controlar eficazmente el riesgo de la estrategia.

  1. La entrada cuantitativa y las reglas de stop loss son claras

La estrategia de entrada en condiciones de movimiento de la media y la dirección de la vía, y el uso de la regla de tamaño de la entidad de la línea de sol para el cierre de pérdidas, para que el sistema entero de entrada y las reglas de parada muy clara sistematizada.

Análisis de riesgos

  1. Riesgo de pérdidas potenciales en situaciones de crisis

En situaciones de crisis, los precios pueden tocar el tren de descenso en varias ocasiones y causar pequeñas pérdidas repetidas. En este momento, se debe reducir el tamaño de la posición y reducir las pérdidas individuales.

  1. El riesgo de que una oscilación excesiva se produzca demasiado cerca del punto de parada

En una tendencia fuerte, una corrección de corto plazo en los precios puede provocar que se ejecute la regla de stop loss, en cuyo caso se debe relajar adecuadamente el margen de stop loss para seguir la tendencia.

  1. Posibilidad de que un parámetro incorrecto provoque una señal de error

Los parámetros de las medias móviles y de las bandas de Brin no están configurados correctamente, lo que puede ocasionar señales de identificación errónea. Los parámetros deben optimizarse adecuadamente para que la señal sea estable y fiable.

Dirección de optimización de la estrategia

  1. Optimización de los parámetros de la media móvil

Ajuste los parámetros de las medias móviles para reducir la suavidad y detectar los cambios de tendencia más rápidamente.

  1. Prueba de la eficacia de las diferentes reglas de suspensión

Prueba diferentes reglas de pérdidas, como pérdidas de seguimiento, pérdidas de ATR, etc., para elegir la mejor opción de pérdidas.

  1. Aumentar el apoyo a los modelos de aprendizaje automático

El modelo de entrenamiento basado en una gran cantidad de datos históricos ayuda a determinar tendencias y emitir señales de negociación.

Resumir

La estrategia tiene en cuenta el juicio de tendencias y el control de riesgos, utiliza el canal de la banda de Brin y las medias móviles para identificar tendencias, al mismo tiempo que se detiene con el tamaño de la entidad de la línea de sol. La estrategia es sistemática, las reglas cuantitativas son claras y pueden controlar eficazmente el riesgo para obtener ganancias excedentarias. La estrategia se mejora continuamente a través de la optimización de parámetros y la combinación de aprendizaje automático, por ejemplo, para que la estrategia sea más estable y fiable.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-14 00:00:00
end: 2023-12-21 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=2
strategy("Noro's Bands Scalper Strategy v1.3", shorttitle = "Scalper str 1.3", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
takepercent = input(0, defval = 0, minval = 0, maxval = 1000, title = "take, %")
needct = input(false, defval = false, title = "Counter-trend entry")
len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period")
needbb = input(true, defval = true, title = "Show Bands")
needbg = input(true, defval = true, title = "Show Background")
src = close

//PriceChannel 1
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2

//Distance
dist = abs(src - center)
distsma = sma(dist, len)
hd = center + distsma
ld = center - distsma
hd1 = center + distsma / 2
ld1 = center - distsma / 2

//Trend
trend = close < ld and high < center ? -1 : close > hd and low > center ? 1 : trend[1]

//Lines
colo = needbb == false ? na : black
plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band")
plot(center, color = colo, linewidth = 1, transp = 0, title = "center")
plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band")

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 80)

//Body
body = abs(close - open)
smabody = ema(body, 30)
candle = high - low

//Engulfing
min = min(open, close)
max = max(open, close)
bar = close > open ? 1 : close < open ? -1 : 0
upeng = bar == 1 and bar[1] == -1 and min >= min[1] and max <= max[1] ? 1 : 0
dneng = bar == -1 and bar[1] == 1 and min >= min[1] and max <= max[1] ? 1 : 0

//Signals
up7 = trend == 1 and ((bar == -1 and bar[1] == -1) or (body > smabody and close < open)) ? 1 : 0
dn7 = trend == 1 and bar == 1 and bar[1] == 1 and close > strategy.position_avg_price * (100 + takepercent) / 100 ? 1 : 0
up8 = trend == -1 and bar == -1 and bar[1] == -1 and close < strategy.position_avg_price * (100 - takepercent) / 100 ? 1 : 0
dn8 = trend == -1 and ((bar == 1 and bar[1] == 1) or (body > smabody and close > open)) ? 1 : 0

if up7 == 1 or up8 == 1 
    strategy.entry("Long", strategy.long, needlong == false ? 0 : trend == -1 and needct == false ? 0 : na)

if dn7 == 1 or dn8 == 1
    strategy.entry("Short", strategy.short, needshort == false ? 0 : trend == 1 and needct == false ? 0 : na)