
La estrategia utiliza el oscilador estocástico para determinar el punto de reversión de la tendencia a corto plazo y la combinación de los indicadores de precio más alto y precio más bajo con el período más largo para determinar la tendencia a medio y largo plazo para determinar la reversión de la tendencia a varias dimensiones de tiempo.
La estrategia tiene dos partes:
Esta sección utiliza la línea rápida y la línea lenta del oscilador estocástico para determinar la reversión de la tendencia a corto plazo. En concreto, si el precio de cierre se eleva el día anterior y la línea rápida de Stochastic está por debajo de la línea lenta y la línea rápida está por debajo de 50, haga más; si el precio de cierre se eleva el día anterior y la línea rápida de Stochastic está por encima de la línea lenta y la línea rápida está por encima de 50, haga un vacío.
El indicador refleja la volatilidad de la línea K actual. Si el valor del indicador es mayor, la fluctuación actual aumenta y puede revertirse; Si el valor del indicador es menor, la fluctuación actual se debilita y la tendencia puede persistir.
La combinación de los dos indicadores permite determinar la reversión de la tendencia en el corto y el mediano y largo plazo, lo que permite una estrategia de negociación a varias escalas de tiempo.
La estrategia utiliza indicadores a corto y medio plazo para garantizar la fiabilidad de la señal de reversión y evitar la falsa señal causada por un solo indicador.
Los parámetros del oscilador estocástico y el indicador de precios máximos-mínimos/closos pueden ser ajustados según el mercado, lo que hace que la estrategia sea más flexible.
La estrategia tiene a Stochastic como núcleo, con el apoyo de tendencias a medio y largo plazo, y la estructura es simple y clara, fácil de entender y modificar.
El marco de la estrategia es simple y universal, permite introducir más indicadores y construir modelos multifactoriales.
La estrategia es inversa y puede no funcionar bien en un mercado de tendencia continua. Se deben ajustar los parámetros adecuadamente para adaptarse a un mercado de tendencia.
En situaciones de mercado anormales, Stochastic y (precio más alto - precio más bajo) / precio de cierre pueden emitir señales erróneas, y es necesario prevenir el riesgo de señales falsas.
Los parámetros de Stochastic y el indicador de precios máximos/mínimos/closes necesitan ser optimizados en función de las condiciones del mercado, de lo contrario pueden afectar el rendimiento de la estrategia.
La estrategia es inversa, con una gran volatilidad de ganancias y pérdidas, y requiere un control de posiciones y riesgos.
Se pueden introducir más factores dentro del marco existente, como el volumen de transacciones y otros indicadores de reversión, para construir modelos multifactoriales.
Se puede configurar el stop loss móvil o el stop loss de tiempo para controlar eficazmente las pérdidas de una sola transacción.
Los parámetros se pueden optimizar mediante métodos más sistemáticos, como los algoritmos genéticos.
La aplicación de algoritmos de aprendizaje automático para entrenar a los modelos para determinar la reversión de la tendencia podría mejorar aún más la precisión.
Introducir análisis de sentimientos de datos no estructurados como los datos sociales para ayudar a predecir los puntos de inflexión.
Esta estrategia integra indicadores de dos dimensiones de tiempo a corto y mediano plazo para determinar el cambio de tendencia en varios períodos de tiempo. Es un excelente marco de estrategia de reversión. Tiene ventajas como la flexibilidad de los parámetros indicadores, la estructura simple y la capacidad de expansión.
//@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 )