Reversión de tendencia cruzada combinada con tres estrategias dobles de oscilador de diez

El autor:¿ Qué pasa?, Fecha: 2024-01-19 14:41:02
Las etiquetas:

img

Resumen general

Esta estrategia combina principalmente señales de dos tipos diferentes de estrategias para superponer señales de estrategia y mejorar la calidad de la señal.

Estrategia 1: Estrategia de reversión de tendencia cruzada

Esta estrategia se origina en la página 183 del libro Cómo triplicé mi dinero en el mercado de futuros. Pertenece al tipo de estrategia de inversión. La lógica específica es: cuando el precio de cierre es mayor que el precio de cierre anterior durante dos días consecutivos, y la línea lenta K de 9 días es inferior a 50, vaya largo; cuando el precio de cierre es menor que el precio de cierre anterior durante dos días consecutivos, y la línea rápida K de 9 días es superior a 50, vaya corto.

Estrategia 2: Estrategia de los osciladores de tres a diez

Esta estrategia utiliza la diferencia entre el promedio móvil de 3 días y el promedio móvil de 10 días para construir un indicador. Específicamente, es el promedio móvil exponencial de 3 días menos el promedio móvil exponencial de 10 días. La diferencia es la línea rápida. Tomando un promedio móvil simple de 16 días de esta línea rápida se obtiene la línea lenta. Cuando la línea rápida rompe la línea lenta de abajo a arriba, vaya largo; cuando la línea rápida rompe la línea lenta de arriba a abajo, vaya corto.

Principio de la estrategia

  • En primer lugar, calcular la señal de negociación postReversal123 de la estrategia de inversión de tendencia cruzada;
  • Luego calcular la señal de negociación posD_Tres de las tres diez estrategias de oscilador;
  • Determinar la dirección y el precio específicos de negociación basados en la señal combinada pos;
  • Dibujar K-líneas en diferentes colores.

Análisis de ventajas

Esta señal compuesta de apilamiento de múltiples estrategias tiene las siguientes ventajas:

  1. Filtrar señales falsas y mejorar la calidad de la señal

    Dado que se requieren dos estrategias para emitir señales en la misma dirección al mismo tiempo, se puede evitar el impacto de señales falsas en una sola estrategia, mejorando así la fiabilidad de la señal.

  2. Integrar varias ideas comerciales

    La combinación de estrategias de reversión y estrategias de tendencia integra dos ideas en cierta medida Reducir los puntos ciegos de la estrategia y obtener una perspectiva de mercado más completa.

  3. Alta flexibilidad

    Según las necesidades reales, la combinación de estrategias participantes puede ajustarse para crear estrategias de combinación más diversificadas mediante la combinación de diferentes tipos de estrategias.

Análisis de riesgos

  1. Suposiciones contradictorias

    La suposición básica de esta estrategia es que múltiples estrategias pueden verificar señales entre sí.

  2. Señales inconsistentes

    Cuando las dos señales de estrategia son inconsistentes, es imposible determinar cuál estrategia es más confiable, y existe un cierto riesgo de decisión.

  3. Desajuste de parámetros

    La configuración incorrecta de parámetros puede hacer que algunas estrategias no funcionen correctamente, lo que resulta en que no se logren los efectos esperados de las combinaciones de estrategias.

Contramedidas:

  1. Establecer puntos de stop loss para controlar las pérdidas de señales individuales

  2. Optimizar los parámetros para garantizar el funcionamiento normal de la estrategia

Direcciones de optimización

La estrategia también puede optimizarse en las siguientes direcciones:

  1. Aumentar la combinación de más estrategias

  2. Condiciones previas de filtración

    De acuerdo con las condiciones del mercado, pueden fijarse algunas condiciones previas, como el filtrado del mercado, para evitar la apertura de posiciones en condiciones de mercado inadecuadas.

  3. Ajuste dinámico de las ponderaciones de la estrategia

    Los pesos de las diferentes estrategias en la combinación pueden ajustarse dinámicamente de acuerdo con su rendimiento histórico, de modo que las estrategias con un mejor rendimiento puedan desempeñar un papel más importante.

  4. Optimiza los detalles del parámetro

    Se puede utilizar un enfoque más sistemático para probar y optimizar cuidadosamente los parámetros internos de cada estrategia con el fin de obtener los parámetros óptimos.

Resumen de las actividades


/*backtest
start: 2024-01-11 00:00:00
end: 2024-01-18 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 04/12/2019
// 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
// TradeStation does not allow the user to make a Multi Data Chart with 
// a Tick Bar Chart and any other type a chart. This indicator allows the 
// user to plot a daily 3-10 Oscillator on a Tick Bar Chart or any intraday interval.
// Walter Bressert's 3-10 Oscillator is a detrending oscillator derived 
// from subtracting a 10 day moving average from a 3 day moving average. 
// The second plot is an 16 day simple moving average of the 3-10 Oscillator. 
// The 16 period moving average is the slow line and the 3/10 oscillator is 
// the fast line.
// For more information on the 3-10 Oscillator see Walter Bressert's book 
// "The Power of Oscillator/Cycle Combinations" 
//
// 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

D_Three(Length1, Length2, Length3) =>
    pos = 0.0
    xPrice =  security(syminfo.tickerid,"D", hl2)
    xfastMA = ema(xPrice, Length1)
    xslowMA = ema(xPrice, Length2)
    xMACD = xfastMA - xslowMA
    xSignal = sma(xMACD, Length3)
    pos := iff(xSignal > xMACD, -1,
    	     iff(xSignal < xMACD, 1, nz(pos[1], 0)))     
    pos

strategy(title="Combo Backtest 123 Reversal & D_Three Ten Osc", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Length1 = input(3, minval=1)
Length2 = input(10, minval=1)
Length3 = input(16, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posD_Three = D_Three(Length1, Length2, Length3)
pos = iff(posReversal123 == 1 and posD_Three == 1 , 1,
	   iff(posReversal123 == -1 and posD_Three == -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 )

Más.