Esta estrategia genera señales de negociación basadas en el oscilador de deterioro de DiNapoli. Refleja los niveles de sobrecompra / sobreventa por la diferencia entre el precio y la media móvil, con el objetivo de identificar oportunidades de reversión. Las señales se generan cuando el oscilador cruza un umbral.
Los componentes clave son:
Promedio móvil: Calcula la línea de base de la tendencia.
Indicador de diferencia: el precio menos la media móvil forma el oscilador.
Línea de umbral: cruzar este nivel activa señales.
Signo largo: cruce del oscilador por encima del umbral.
Signo corto: el oscilador cruza por debajo del umbral.
Opción inversa: cambia las señales largo/corto.
La estrategia tiene como objetivo capturar las reversiones a corto plazo mediante la identificación de divergencias entre el precio y la tendencia.
En comparación con otras estrategias de reversión, las ventajas son:
Lógica sencilla e intuitiva, fácil de implementar.
Parámetros mínimos, pruebas de retroceso convenientes.
Flexibilidad en el ajuste de parámetros para diferentes períodos.
Opción inversa adaptable a diferentes mercados.
Eliminar las paradas y salidas para controlar el riesgo.
Las reducciones son relativamente pequeñas, ajustables a través de parámetros.
Potencial para optimizar con el aprendizaje automático.
En general, el perfil de riesgo/beneficio es bueno para el comercio a corto plazo.
Sin embargo, los principales riesgos son:
La dependencia excesiva de la optimización de parámetros corre el riesgo de sobreajuste.
Retrasos en la media móvil y el oscilador.
Falta de confirmación de otras variables.
El efecto del tiempo puede deteriorarse en los mercados cambiantes.
Difícil de generar persistentemente alfa, requiere ajustes frecuentes.
Necesidad de monitorear las relaciones de recompensa/riesgo y la suavidad de la curva.
La alta frecuencia del comercio aumenta los costos de transacción.
La robustez en todos los mercados requiere validación.
Basándose en el análisis, las mejoras pueden incluir:
Probando diferentes parámetros de promedio móvil.
Añadiendo confirmación de volumen.
Implementar paradas y salidas para controlar el riesgo.
Evaluación de la solidez en diferentes mercados y plazos.
Prueba posterior de ventanas rodantes para verificación continua.
Ajustando el tamaño de la posición a una frecuencia más baja.
Incorporando aprendizaje automático para mejores parámetros.
Optimización de las estrategias generales de gestión de riesgos.
Iteraciones continuas para adaptarse a los mercados cambiantes.
En resumen, esta es una idea de estrategia de inversión de la media relativamente simple. El ajuste adecuado de parámetros puede producir resultados decentes. Pero evitar el sobreajuste y lograr un éxito persistente requiere pruebas de retroceso, optimización y mejoras continuas desde múltiples dimensiones.
/*backtest start: 2023-08-23 00:00:00 end: 2023-09-22 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version = 2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 05/12/2016 // DiNapoli Detrended Oscillator Strategy // 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="DiNapoli Detrended Oscillator Strategy Backtest") Length = input(14, minval=1) Trigger = input(0) reverse = input(true, title="Trade reverse") hline(Trigger, color=gray, linestyle=line) xSMA = sma(close, Length) nRes = close - xSMA pos = iff(nRes > Trigger, 1, iff(nRes <= Trigger, -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) plot(nRes, color=blue, title="DiNapoli") barcolor(possig == -1 ? red: possig == 1 ? green : blue )