Esta estrategia combina indicadores de impulso a través de diferentes marcos de tiempo para identificar la inversión de tendencia en múltiples escalas de tiempo. Utiliza el oscilador estocástico para detectar reversiones a corto plazo y el indicador (más alto-más bajo) / cerrar para tendencias a medio y largo plazo, lo que permite la detección de reversión en múltiples dimensiones de tiempo.
La estrategia consta de dos componentes:
Utiliza el cruce de la línea rápida estocástica por debajo de la línea lenta junto con los patrones de reversión de precios para identificar las reversiones de tendencia a corto plazo. Específicamente, va largo cuando el precio cierra más alto que el cierre anterior y la línea rápida estocástica cruza por debajo de la línea lenta y por debajo de 50; va corto cuando el precio cierra más bajo que el cierre anterior y la línea rápida estocástica cruza por encima de la línea lenta y por encima de 50.
Este indicador mide la volatilidad de la barra actual. Valores más altos sugieren una mayor volatilidad y reversiones potenciales, mientras que valores más bajos indican una disminución de la volatilidad y la continuación de la tendencia. La estrategia utiliza SMA de este indicador para identificar reversiones de tendencia a medio y largo plazo.
En combinación, los dos componentes permiten a la estrategia detectar reversiones en plazos cortos y medianos a largos.
Mejora de la precisión con indicadores de marcos de tiempo múltiples
El uso de indicadores a corto y medio y largo plazo garantiza la fiabilidad de la señal y evita señales falsas.
Parámetros flexibles del indicador
Los parámetros tanto del Estocástico como del (H-L) /C pueden ajustarse para los regímenes de mercado, lo que hace que la estrategia sea robusta.
Lógica simple e intuitiva
Con Stochastic como núcleo y un filtro de tendencia, el marco es simple y fácil de entender.
Extensibilidad
El marco sencillo permite incorporar fácilmente más indicadores para construir modelos multifactoriales.
Puede tener un rendimiento inferior en una tendencia persistente
La naturaleza de la inversión media hace que sea menos ideal para mercados con tendencias fuertes.
Riesgo de señales falsas
El estocástico y (H-L) /C pueden emitir señales erróneas en mercados anormales.
El ajuste de indicadores requiere experiencia
Los parámetros deben optimizarse para adaptarse a los mercados cambiantes, de lo contrario el rendimiento puede verse afectado.
Se requiere un tamaño de posición adecuado
Como estrategia de inversión, es importante una gestión prudente del riesgo en el dimensionamiento de las posiciones.
Más factores en el modelo multifactorial
Se pueden añadir factores adicionales como el volumen, otros indicadores de inversión para crear modelos multifactoriales.
Implementar el stop loss
El stop loss a tiempo o en movimiento podría ayudar a controlar la pérdida de una sola operación.
Optimización de parámetros
Se pueden explorar métodos más sistemáticos de ajuste de parámetros como algoritmos genéticos.
Aprendizaje automático
Los algoritmos de ML pueden ayudar a mejorar la precisión de la predicción de la inversión.
Análisis del sentimiento
Incorporar datos alternativos como el sentimiento social podría ayudar a predecir las reversiones.
Esta estrategia combina indicadores a corto y mediano plazo para identificar reversiones a través de marcos de tiempo. Tiene ventajas como parámetros flexibles, estructura simple, extensibilidad. Los próximos pasos podrían incluir más factores, stop loss, optimización de parámetros, aprendizaje automático para mejorar aún más la rentabilidad y la gestión de riesgos. En general, esta es una estrategia innovadora que vale la pena investigar y aplicar.
//@version=3 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 23/05/2019 // This is combo strategies for get // a cumulative signal. Result signal will return 1 if two strategies // is long, -1 if all strategies is short and 0 if signals of strategies is not equal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // This histogram displays (high-low)/close // Can be applied to any time frame. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos HLCHist(input_barsback, input_percentorprice, input_smalength) => xPrice = (high-low)/close xPriceHL = (high-low) xPrice1 = iff(input_percentorprice, xPrice * 100, xPriceHL) xPrice1SMA = sma(abs(xPrice1), input_smalength) pos = 0.0 pos := iff(xPrice1SMA[input_barsback] > abs(xPrice1), 1, iff(xPrice1SMA[input_barsback] < abs(xPrice1), -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & (H-L)/C Histogram", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- input_barsback = input(4, title="Look Back") input_percentorprice = input(false, title="% change") input_smalength = input(13, title="SMA Length") reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posHLCHist = HLCHist(input_barsback, input_percentorprice, input_smalength) pos = iff(posReversal123 == 1 and posHLCHist == 1 , 1, iff(posReversal123 == -1 and posHLCHist == -1, -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) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? red: possig == 1 ? green : blue )