Las bandas de Bollinger y la estrategia de cruce de KD estocástico

El autor:¿ Qué pasa?, Fecha: 2024-03-08 16:49:06
Las etiquetas:

img

Resumen general

Esta estrategia combina dos indicadores técnicos, Bollinger Bands y Stochastic KD, para determinar los puntos de entrada y salida. Su objetivo es capturar el rebote después de que el mercado esté sobrevendido mientras se controla el riesgo de descenso. La estrategia entra en una posición larga cuando el precio de cierre se rompe por debajo de la banda inferior de Bollinger y las líneas de Stochastic KD se cruzan al alza (la línea K se cruza por encima de la línea D). Cierra la posición cuando el precio de cierre se rompe por debajo de la banda media de Bollinger o se rompe por encima de la banda superior de Bollinger.

Principios de estrategia

  1. Calcular Bandas de Bollinger: Utilice la media móvil simple del precio como banda media, y las bandas superior e inferior se calculan sumando y restando un múltiplo fijo de la desviación estándar del precio de la banda media.

  2. Calcular KD estocástico: el valor K representa la posición relativa del precio de cierre actual dentro del rango de los precios más altos y más bajos durante los últimos N períodos. El valor D es la media móvil simple de M días del valor K.

  3. Condición de entrada: Cuando el precio de cierre actual se rompe por debajo de la banda inferior de Bollinger y las líneas estocásticas de KD se cruzan al alza (línea K cruza por encima de la línea D), la estrategia entra en una posición larga.

  4. Condición de salida: cuando el precio de cierre actual se rompe por debajo de la banda media de Bollinger o se rompe por encima de la banda superior de Bollinger, la estrategia cierra la posición.

Al utilizar bandas de Bollinger para determinar si el precio está en un nivel relativamente bajo y confirmar la señal de inversión con el cruce alcista estocástico KD, la estrategia busca capturar el punto de entrada.

Ventajas

  1. Al combinar los indicadores de precio y impulso, la estrategia puede capturar eficazmente el repunte después de las condiciones de sobreventa.

  2. Las bandas de Bollinger muestran de forma dinámica los niveles relativamente altos y bajos de los precios, que son más objetivos y eficaces en comparación con los umbrales fijos.

  3. El indicador KD estocástico refleja el estado de sobrecompra y sobreventa del precio y sus cambios de impulso, complementando las bandas de Bollinger.

  4. Se establecen niveles de stop-loss y take-profit claros para controlar la exposición al riesgo de cada operación.

  5. Los parámetros son ajustables, lo que hace que la estrategia sea adecuada para diferentes mercados y plazos.

Los riesgos

  1. La estrategia puede tener un rendimiento inferior en los mercados de rango o cuando la tendencia no es clara, lo que requiere indicadores adicionales de detección de tendencias para el discernimiento.

  2. El indicador estocástico KD puede dar ocasionalmente señales falsas que requieren una confirmación adicional mediante otros métodos.

  3. La selección de parámetros para las bandas de Bollinger y el KD estocástico debe optimizarse mediante backtesting.

  4. La estrategia carece de consideración para el tamaño de las posiciones y la gestión del dinero, lo que limita su capacidad para controlar las reducciones.

Direcciones de optimización

  1. Introduzca indicadores de tendencia, como las medias móviles, y sólo aplique la estrategia cuando la tendencia sea clara.

  2. Realizar una confirmación secundaria en la señal de cruce alcista de Stochastic KD, como verificar si el valor K se encuentra en el rango bajo.

  3. Optimizar los parámetros de las bandas de Bollinger y el KD estocástico para encontrar la mejor combinación.

  4. Incorporar en la estrategia módulos de dimensionamiento de posiciones y gestión de fondos, como el uso del criterio Kelly para calcular el tamaño de las posiciones y establecer niveles generales de stop loss.

  5. Realizar la optimización de parámetros y las pruebas de retroceso para diferentes mercados y plazos por separado para mejorar la adaptabilidad de la estrategia.

Conclusión

Este artículo presenta una estrategia de negociación basada en las bandas de Bollinger y el KD estocástico. La estrategia determina los puntos de entrada y salida comparando la posición del precio con respecto a las bandas de Bollinger y las señales de cruce del KD estocástico, con el objetivo de capturar el repunte después de las condiciones de sobreventa mientras se controla el riesgo de retirada. Las ventajas de la estrategia se encuentran en su capacidad para representar dinámicamente los niveles relativamente altos y bajos del precio y tomar decisiones basadas en el estado de sobrecompra y sobreventa del precio, proporcionando señales claras y complementarias. Sin embargo, la estrategia también tiene ciertas limitaciones, como el bajo rendimiento en los mercados de rango, la posibilidad de señales falsas del KD estocástico y la falta de tamaño de posición, entre otros.


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

//@version=5
strategy("Bollinger Bands and KD Strategy with Take Profit", overlay=true)

// 輸入參數
length = input(14, title="Bollinger Bands Length")
mult = input(2, title="Bollinger Bands Multiplier")
kdLength = input(14, title="KD Length")
kdSmooth = input(3, title="KD Smooth")
kdD = input(3, title="KD D")

// 計算布林通道
basis = ta.sma(close, length)
upper_band = basis + mult * ta.stdev(close, length)
lower_band = basis - mult * ta.stdev(close, length)

// 計算KD指標
k = ta.stoch(close, high, low, kdLength)
d = ta.sma(k, kdSmooth)  // 使用sma計算KD D

// 判斷進出點的條件
price_below_lower_band = close < lower_band
cross_above_kd = ta.crossover(k, d)
price_above_upper_band = close > upper_band
cross_below_basis = ta.crossunder(close, basis)

// 策略進出點
if (price_below_lower_band and cross_above_kd)
    strategy.entry("Buy", strategy.long)
if (cross_below_basis or price_above_upper_band)
    strategy.close("Buy")

// 繪製布林通道
plot(upper_band, color=color.blue, title="Upper Band")
plot(lower_band, color=color.red, title="Lower Band")
plot(basis, color=color.green, title="Basis")

// 繪製KD指標
hline(80, "Overbought", color=color.red)
hline(20, "Oversold", color=color.green)
plot(k, color=color.blue, title="K")
plot(d, color=color.red, title="D")


Más.