Tendencia de seguimiento de la estrategia basada en el oscilador de banda de Bollinger

El autor:¿ Qué pasa?, Fecha: 2023-10-10 10:54:05
Las etiquetas:

Resumen general

La idea central de esta estrategia es identificar tendencias utilizando el oscilador de banda de Bollinger y entrar en posiciones cuando las tendencias cambian.

Estrategia lógica

La estrategia utiliza principalmente el oscilador de banda de Bollinger para determinar la dirección de la tendencia.

BBO = (Close - N-day Moving Average) / (2 * N-day Standard Deviation) * 100

Donde Close es el precio de cierre, la media móvil de N días es la media móvil simple de N días de cierre y la desviación estándar de N días es la desviación estándar de N días de cierre.

La estrategia primero calcula el BBO de 65 días, luego el promedio móvil de 30 días de BBO. Cuando BBO cruza por encima de su MA, señala una tendencia alcista, vaya largo. Cuando BBO cruza por debajo de su MA, señala una tendencia bajista, vaya corto.

Después de ingresar posiciones, la estrategia utiliza stop loss móvil, take profit fijo y trailing stop loss para controlar los riesgos y bloquear las ganancias.

Ventajas

  1. BBO es sensible a los cambios de tendencia.

  2. El movimiento de stop loss controla la pérdida individual cuando la tendencia se invierte.

  3. Las ganancias fijas se bloquean en las ganancias cuando la tendencia es correcta.

  4. Trailing stop loss maximiza las ganancias para una sola operación.

  5. La estrategia es simple e intuitiva.

Los riesgos

  1. El BBO puede dar señales falsas.

  2. El stop loss/take profit incorrecto puede salir demasiado pronto.

  3. Las ganancias fijas pueden salir demasiado pronto, perdiendo más ganancias.

  4. Los parámetros necesitan optimización para evitar el sobreajuste.

  5. Se requiere un capital suficiente.

Optimización

  1. Optimice los parámetros BBO y MA.

  2. Prueba diferentes métodos de stop loss como ATR, porcentaje.

  3. Optimizar las ganancias fijas y las pérdidas de parada.

  4. Añadir filtros para evitar señales falsas.

  5. Optimizar el tamaño de las posiciones para diferentes mercados.

  6. Prueba de la eficacia de la estrategia en todos los instrumentos y plazos.

Conclusión

La estrategia identifica los cambios de tendencia utilizando BBO y entra en posiciones en consecuencia. Controla los riesgos y bloquea las ganancias con varios tipos de salidas. La estrategia es simple e intuitiva, pero requiere optimización de parámetros. Puede funcionar bien en los mercados de tendencia si se optimiza correctamente, pero se deben tener cuidado con las señales falsas y las salidas inadecuadas.


/*backtest
start: 2022-10-03 00:00:00
end: 2023-10-09 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="Strategy CCT Bollinger Band Oscillator", shorttitle="Hornkild", calc_on_order_fills=true, default_qty_type=strategy.percent_of_equity, default_qty_value=50, overlay=false)

length=input(65)
lengthMA=input(30)
src=close
cctbbo=100 * ( src + 2*stdev( src, length) - sma( src, length ) ) / ( 4 * stdev( src, length ) )

//ul=hline(100, color=gray, editable=true)
//ll=hline(0, color=gray)
//hline(50, color=gray)
//fill(ul,ll, color=blue)
//plot(cctbbo, color=blue, linewidth=2)
//plot(ema(cctbbo, lengthMA), color=red)

TP = input(0) * 10
SL = input(0) * 10
TS = input(1) * 10
TO = input(10) * 10
CQ = 100

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na
TOP = (TO > 0) ? TO : na

longCondition = crossover(cctbbo, ema(cctbbo, lengthMA))
if (longCondition)
    strategy.entry("Long", strategy.long)


shortCondition = crossunder(cctbbo, ema(cctbbo, lengthMA))
if (shortCondition)
    strategy.entry("Short", strategy.short)

strategy.exit("Close Short", "Short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)
strategy.exit("Close Long", "Long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)

Más.