Estrategia combinada de inversión de impulso

El autor:¿ Qué pasa?, Fecha: 2023-10-23 15:11:20
Las etiquetas:

img

Resumen general

Esta estrategia combina el indicador de impulso CMO y el indicador de reversión Estocástico para construir un modelo multifactorial para descubrir oportunidades comerciales en diferentes entornos de mercado.

Análisis lógico

La estrategia consta de dos subestrategias:

  1. 123 Estrategia de reversión

    • Utilice el Estocástico de 9 días para identificar los niveles de sobrecompra y sobreventa

    • Ir largo si el precio de cierre sube durante 2 días consecutivos y el estocástico está por debajo de 50

    • Ir corto si el precio de cierre cae durante 2 días consecutivos y el Estocástico es superior a 50

  2. Estrategia de valor absoluto de las OCM

    • Calcular el valor absoluto de la OCM

    • OCM por encima de 70 indica sobrecompra, va corto

    • OCM por debajo de 20 indica sobreventa, ir largo

Por último, se genera una señal comercial cuando dos subestrategias coinciden.

La estrategia hace pleno uso de los puntos fuertes del indicador de impulso CMO y el indicador de reversión Estocástico.

Análisis de ventajas

La estrategia tiene las siguientes ventajas:

  1. El modelo multifáctor se adapta a los diferentes entornos de mercado

  2. CMO tiene una fuerte capacidad de detección de tendencias, Stochastic localiza con precisión los puntos de reversión

  3. Sólo se negocian cuando dos señales acuerdan evitar señales falsas y mejorar la rentabilidad

  4. Gran espacio de ajuste de parámetros permite la optimización para diferentes productos y marcos de tiempo

  5. La combinación de indicadores a largo y corto plazo revela más oportunidades

  6. Reglas simples y claras, fáciles de entender y automatizar, adecuadas para el comercio de algo

Análisis de riesgos

La estrategia también presenta los siguientes riesgos:

  1. Existe la probabilidad de señales falsas de las subestrategias, los parámetros necesitan optimización

  2. Una reversión repentina de la tendencia puede llevar a grandes pérdidas

  3. Frecuencia de operaciones alta, los costes de transacción deben tenerse en cuenta

  4. El retraso de los indicadores conduce a retrasos

  5. El ajuste de parámetros es un reto para diferentes productos

Soluciones:

  1. Optimizar los parámetros de la subestrategia para reducir las señales falsas

  2. Utilizar el stop loss para limitar las pérdidas por operación

  3. Ajustar las reglas de entrada a una menor frecuencia de negociación

  4. Emplear datos de tick para minimizar el retraso

  5. Aplicar el aprendizaje automático para el ajuste automático de parámetros

Direcciones de optimización

La estrategia puede mejorarse en los siguientes aspectos:

  1. Introducir más factores como la volatilidad y el volumen para un modelo sistemático de múltiples factores

  2. Construir un mecanismo dinámico de optimización de parámetros que se adapte a los regímenes de mercado

  3. Optimizar la lógica de entrada utilizando probabilidad y suavización exponencial, etc.

  4. Asegurar la posición a largo plazo con operaciones a corto plazo para alcanzar objetivos duales

  5. Extraer más características con aprendizaje profundo para construir reglas de negociación no lineales

  6. Explorar modelos libres de parámetros para evitar sesgos humanos

  7. Incorporar datos y noticias de alta frecuencia para reducir el retraso

Conclusión

La estrategia utiliza el indicador de impulso CMO y el indicador de reversión Estocástico para construir un modelo multifactor para oportunidades de negociación en mercados de tendencia y laterales. En comparación con los modelos de un solo factor, el enfoque multifactor se adapta mejor a entornos de mercado complejos. Mientras tanto, el gran espacio de ajuste de parámetros y las reglas simples lo hacen fácil de optimizar y automatizar, adecuado para el desarrollo del comercio de algo. Sin embargo, la gestión de riesgos es crucial, y se requiere una alta demanda de selección de parámetros y optimización de modelos. En general, la estrategia de combo de reversión de impulso proporciona una idea de negociación sistemática digna de referencia y exploración.


/*backtest
start: 2023-09-22 00:00:00
end: 2023-10-22 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 17/09/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
//    This indicator plots the absolute value of CMO. CMO was developed by Tushar 
//    Chande. A scientist, an inventor, and a respected trading system developer, 
//    Mr. Chande developed the CMO to capture what he calls "pure momentum". For 
//    more definitive information on the CMO and other indicators we recommend the 
//    book The New Technical Trader by Tushar Chande and Stanley Kroll.
//    The CMO is closely related to, yet unique from, other momentum oriented indicators 
//    such as Relative Strength Index, Stochastic, Rate-of-Change, etc. It is most closely 
//    related to Welles Wilder`s RSI, yet it differs in several ways:
//        - It uses data for both up days and down days in the numerator, thereby directly 
//          measuring momentum;
//        - The calculations are applied on unsmoothed data. Therefore, short-term extreme 
//          movements in price are not hidden. Once calculated, smoothing can be applied to 
//          the CMO, if desired;
//        - The scale is bounded between +100 and -100, thereby allowing you to clearly see 
//          changes in net momentum using the 0 level. The bounded scale also allows you to 
//          conveniently compare values across different securities.
//
// 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

CMOabs(Length, TopBand, LowBand) =>
    pos = 0
    xMom = abs(close - close[1])
    xSMA_mom = sma(xMom, Length)
    xMomLength = close - close[Length]
    nRes = abs(100 * (xMomLength / (xSMA_mom * Length)))
    pos := iff(nRes > TopBand, -1,
    	     iff(nRes < LowBand, 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & CMOabs", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthCMO = input(9, minval=1)
TopBand = input(70, minval=1)
LowBand = input(20, maxval=0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCMOabs = CMOabs(LengthCMO, TopBand, LowBand)
pos = iff(posReversal123 == 1 and posCMOabs == 1 , 1,
	   iff(posReversal123 == -1 and posCMOabs == -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.