Estrategia de combinación de indicadores osciladores de reactivación de reversión


Fecha de creación: 2023-11-02 16:43:41 Última modificación: 2023-11-02 16:43:41
Copiar: 1 Número de Visitas: 724
1
Seguir
1617
Seguidores

Estrategia de combinación de indicadores osciladores de reactivación de reversión

Descripción general

La estrategia es una combinación de estrategias de inversión y resurrección de indicadores de oscilación para obtener señales de negociación más confiables.

Principio de estrategia

La estrategia tiene dos partes:

  1. La estrategia de la inversión

La estrategia inversa proviene de Ulf Jensen, en su libro Cómo duplicar el capital en el mercado de futuros, página 183. La estrategia pertenece al tipo inverso, y la lógica es:

  • Cuando el precio de cierre sea superior al precio de cierre del día anterior, dos días consecutivos, y el 9o día el indicador lento de Stoch esté por debajo de 50, haga una entrada adicional.

  • Se hace una entrada de brecha cuando el precio de cierre es inferior al precio de cierre del día anterior, dos días consecutivos, y cuando el índice rápido de Stoch está por encima de 50 el día 9.

  1. La estrategia para revivir los indicadores de la oscilación

El indicador de resurrección de la oscilación calcula el diferencial de las fluctuaciones más sutiles en el mercado, cuyo valor generalmente oscila entre -1 y 1. El valor más alto del indicador indica una tendencia más fuerte, ya sea una tendencia alcista o una tendencia bajista.

Cuando el indicador alcanza un valor más alto, haga más; cuando el indicador alcanza un valor más bajo, haga un descuento. El indicador es adecuado para el comercio intradía.

Finalmente, cuando las dos señales estratégicas están en la misma dirección, se realiza una operación en la dirección correspondiente.

Análisis de las ventajas

  • La combinación de estrategias de inversión y estrategias de tendencia puede filtrar algunas señales falsas y mejorar la fiabilidad de las señales de negociación.

  • La estrategia de reversión puede capturar oportunidades de reversión a corto plazo; la estrategia de resurrección de indicadores de oscilación puede capturar tendencias de línea media y larga.

  • Los parámetros del índice Stoch están mejor optimizados para filtrar las falsas señales de los mercados de volatilidad.

  • Los indicadores de resurrección y oscilación son más sensibles a las fluctuaciones sutiles del mercado y pueden capturar cambios de tendencia con anticipación.

Riesgos y soluciones

  • La estrategia de inversión es fácil de absorber por la gran tendencia de la inversión, se puede ajustar los parámetros adecuadamente, o se utiliza en combinación con la estrategia de tendencia.

  • Las estrategias de indicadores son propensas a generar demasiadas señales de negociación, y pueden ajustarse los parámetros adecuadamente o usarse en combinación con otros indicadores de filtración.

  • Las dos señales de estrategia pueden no coincidir y pueden tener conflictos. Los parámetros se pueden ajustar según los datos de retroalimentación histórica para optimizar la combinación de ambas.

  • Se pueden introducir estrategias de stop loss para controlar las pérdidas individuales.

Dirección de optimización

  • Prueba diferentes combinaciones de parámetros de inversión para encontrar el mejor.

  • Prueba diferentes parámetros del indicador de resurrección de la oscilación para encontrar el parámetro óptimo.

  • Experimentar con diferentes métodos de optimización de parámetros indicadores, como algoritmos genéticos, bosques aleatorios, etc.

  • Añadir otros indicadores auxiliares para filtrar aún más las señales.

  • El objetivo de este proyecto es aumentar la precisión de las señales mediante el uso de modelos de aprendizaje automático.

  • Introducción de mecanismos de gestión de riesgos, tales como el control de pérdidas, gestión de posiciones, etc.

Resumir

Esta estrategia, combinando la estrategia de reversión y la estrategia de resurrección de los indicadores de oscilación, aprovechando las ventajas de dos tipos diferentes de estrategias, puede mejorar la calidad de las señales de negociación y mostrar un mejor efecto en la retroalimentación. Si se optimiza aún más mediante la optimización de los parámetros, la adición de otros indicadores y la gestión del riesgo, la estrategia podría tener un mejor efecto en el mercado. En general, esta es una estrategia muy innovadora que merece más investigación y aplicación.

Código Fuente de la Estrategia
/*backtest
start: 2023-10-02 00:00:00
end: 2023-10-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 07/10/2020
// This is combo strategies for get a cumulative signal. 
//
// 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
//   The value of Fractal Chaos Oscillator is calculated as the difference between 
// the most subtle movements of the market. In general, its value moves between 
// -1.000 and 1.000. The higher the value of the Fractal Chaos Oscillator, the 
// more one can say that it follows a certain trend – an increase in prices trend, 
// or a decrease in prices trend.
//
//   Being an indicator expressed in a numeric value, traders say that this is an 
// indicator that puts a value on the trendiness of the markets. When the FCO reaches 
// a high value, they initiate the “buy” operation, contrarily when the FCO reaches a 
// low value, they signal the “sell” action. This is an excellent indicator to use in 
// intra-day trading.
//
// 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

fractalUp(pattern) =>
    p = high[pattern+1]
    okl = 1
    okr = 1
    res = 0.0
	for i = pattern to 1
		okl := iff(high[i] < high[i+1] and okl == 1 , 1, 0)
	for i = pattern+2 to pattern*2+1
		okr := iff(high[i] < high[i-1] and okr == 1, 1, 0)
	res := iff(okl == 1 and okr == 1, p, res[1])
    res

fractalDn(pattern) =>
    p = low[pattern+1]
    okl = 1
    okr = 1
    res = 0.0
	for i = pattern to 1
		okl := iff(low[i] > low[i+1] and okl == 1 , 1, 0)
	for i = pattern+2 to pattern*2+1
		okr := iff(low[i] > low[i-1] and okr == 1, 1, 0)
	res := iff(okl == 1 and okr == 1, p, res[1])
    res

FCO(Pattern) =>
    pos = 0.0
    xUpper = fractalUp(Pattern) 
    xLower = fractalDn(Pattern)
    xRes = iff(xUpper != xUpper[1], 1, 
             iff(xLower != xLower[1], -1, 0))
    pos := iff(xRes == 1, 1,
             iff(xRes == -1, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Fractal Chaos Oscillator", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Pattern = input(1, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFCO = FCO(Pattern)
pos = iff(posReversal123 == 1 and posFCO == 1 , 1,
	   iff(posReversal123 == -1 and posFCO == -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 ? #b50404: possig == 1 ? #079605 : #0536b3 )