Estrategia de Bressert estocástica doblemente suavizada

El autor:¿ Qué pasa?, Fecha: 2024-02-05 15:57:37
Las etiquetas:

img

Resumen general

La estrategia de Bressert estocástica doblemente suavizada fue diseñada por William Blau.

La estrategia genera señales de negociación mediante el cálculo de una serie de índices estocásticos dobles suavizados. Específicamente, primero calcula el índice estocástico suavizado de precios, y luego aplica un promedio suave a este índice estocástico nuevamente para obtener el índice estocástico suavizado dual. Cuando la línea de disparo cruza el índice estocástico dual suavizado, se generan señales de compra o venta.

Principio

  1. Calcular el índice estocástico suavizado xPreCalc de precios del período PDS
  2. Aplicar una media móvil exponencial EMAlen a xPreCalc para obtener xDSS, es decir, el índice estocástico doble suavizado
  3. Calcular la línea de disparo xTrigger, que es otra línea EMA de xDSS
  4. Generar señales comerciales:
    • Ir largo cuando xTrigger está por debajo de xDSS y por debajo de la línea de sobreventa
    • Ir corto cuando xTrigger está por encima de xDSS y por encima de la línea de sobrecompra
  5. Trace las curvas del índice estocástico doble suavizado xDSS y la línea de disparo xTrigger

Ventajas

La estrategia combina la capacidad de seguimiento de tendencias de las medias móviles y la capacidad de identificación de sobrecompra/sobreventa de los índices estocásticos.

  1. El doble suavizado filtra las señales falsas y mejora la estabilidad
  2. La línea de disparo genera señales de negociación y evita operaciones frecuentes
  3. Los parámetros personalizables se adaptan a las diferentes condiciones del mercado
  4. Gráficos intuitivos para una fácil comprensión y validación de la estrategia

Los riesgos

La Estrategia de Bressert estocástica doblemente suavizada también tiene algunos riesgos:

  1. Más señales falsas del indicador de Bressert en mercados con baja volatilidad
  2. El doble suavizado puede causar retraso en la señal, puntos de inflexión de precios perdidos
  3. La configuración incorrecta de los parámetros puede no identificar las oscilaciones de precios
  4. El riesgo de negociación sigue existiendo

Contramedidas:

  1. Optimizar los parámetros para mejorar la precisión
  2. Indicadores de filtro con otros indicadores
  3. Uso del tamaño de las posiciones para cubrir riesgos

Optimización

La estrategia también puede optimizarse en los siguientes aspectos:

  1. Ajustar los parámetros del ciclo del índice doble suavizado para optimizar el efecto de suavizado
  2. Añadir mecanismos de stop loss para controlar pérdidas individuales
  3. Añadir indicadores de tendencia para evitar la operación inversa
  4. Utilice el tamaño de la posición para maximizar el espacio de ganancia

Conclusión

La Estrategia de Bressert estocástica doblemente suavizada combina las ventajas de los promedios móviles e índices estocásticos para identificar puntos de sobrecompra / sobreventa y seguir tendencias.


/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 05/04/2017
// Double Smoothed Stochastics (DSS) is designed by William Blaw. 
// It attempts to combine moving average methods with oscillator principles. 
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="DSS Bressert (Double Smoothed Stochastic)", shorttitle="DSS Bressert")
PDS = input(10, minval=1)
EMAlen = input(9, minval=1)
TriggerLen = input(5, minval=1)
Overbought = input(80, minval=1)
Oversold = input(20, minval=1)
reverse = input(false, title="Trade reverse")
hline(Overbought, color=green, linestyle=line)
hline(Oversold, color=red, linestyle=line)
xPreCalc = ema(stoch(close, high, low, PDS), EMAlen)
xDSS = ema(stoch(xPreCalc, xPreCalc, xPreCalc, PDS), EMAlen)
//xDSS = stoch(xPreCalc, xPreCalc, xPreCalc, PDS)
xTrigger = ema(xDSS, TriggerLen)
pos = iff(xTrigger < xDSS and xTrigger < Oversold, -1,
	     iff(xTrigger > xDSS and xTrigger > Overbought, 1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xDSS, color=blue, title="DSS")
plot(xTrigger, color=red, title="Trigger")

Más.