Estrategia combinada de negociación de inversión de múltiples factores

El autor:¿ Qué pasa?, Fecha: 2023-09-20 15:13:58
Las etiquetas:

Resumen general

Esta estrategia combina múltiples indicadores de reversión para tomar posiciones de dirección contraria cuando surgen señales de reversión de precios. Pertenece a las estrategias de negociación algorítmica de reversión media.

Estrategia lógica

  1. En primer lugar, el sistema de reversión 123 se utiliza para identificar señales de reversión de precios, basadas en la acción de los precios de dos barras consecutivas y el indicador estocástico.

  2. En segundo lugar, el indicador de Kurtosis Rápida y Lenta (FSK, por sus siglas en inglés) juzga la reversión del sentimiento en función de la aceleración del impulso.

  3. El sistema de reversión 123 y el indicador de reversión FSK se combinan como una combinación.

  4. Se puede habilitar el comercio inverso, tomando corto cuando la señal original es larga, y viceversa.

Análisis de ventajas

  1. La combinación de múltiples factores puede mejorar la precisión de la señal y evitar señales falsas.

  2. El sistema 123 y el indicador FSK son complementarios en la detección de reversiones en los marcos de tiempo.

  3. El comercio inverso permite sacar provecho de las reversiones bruscas.

  4. El uso de múltiples factores de reversión mejora la robustez de la estrategia.

  5. Fácil de entender e implementar, adecuado para principiantes en el comercio de cantidades.

Análisis de riesgos

  1. Las señales de inversión pueden producir señales falsas que resultan en pérdidas.

  2. La mala sincronización de las reversiones puede llevar a perseguir los picos y los fondos.

  3. El comercio inverso puede producir pérdidas en tendencias persistentes.

  4. La optimización incorrecta de parámetros conduce a un sobreajuste.

  5. La alta frecuencia de operaciones puede acarrear mayores costes de transacción.

Direcciones de optimización

  1. Prueba añadiendo otros factores de reversión como RSI, KD para enriquecer la combinación.

  2. Optimizar los parámetros para una mejor sensibilidad del indicador.

  3. Añadir un filtro de tendencia para evitar operaciones contra tendencia.

  4. Utilice el dimensionamiento dinámico de la posición para optimizar la eficiencia del capital.

  5. Optimizar el stop loss para limitar las pérdidas por operación.

  6. Evaluar el impacto de los costes de transacción para evitar el exceso de negociación.

Conclusión

Esta estrategia combina el sistema de reversión 123 y el indicador FSK para negociar reversiones de precios en la dirección contraria. Puede filtrar señales falsas y mejorar la precisión. Pero las estrategias de reversión enfrentan el riesgo de reversiones inciertas. Se necesitan ajustes continuos de parámetros, dimensionamiento de posición y controles de frecuencia comercial para reducir riesgos y mejorar la robustez.


/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/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
// This indicator plots the Fast & Slow Kurtosis. The Kurtosis is a market
// sentiment indicator. The Kurtosis is constructed from three different parts.
// The Kurtosis, the Fast Kurtosis(FK), and the Fast/Slow Kurtosis(FSK).
//
// 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

FSK(Triger) =>
    pos = 0.0
    xMOM_R = mom(mom(close, 3), 1)
    xMOM_RAvr = ema(xMOM_R, 65)
    xMOM_RWAvr = wma(xMOM_RAvr, 3)
    pos := iff(xMOM_RAvr > Triger and xMOM_RWAvr > Triger, 1,-1) 
    pos

strategy(title="Combo Backtest 123 Reversal & FSK (Fast and Slow Kurtosis)", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Triger = input(0, minval=0.001)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFSK = FSK(Triger)
pos = iff(posReversal123 == 1 and posFSK == 1 , 1,
	   iff(posReversal123 == -1 and posFSK == -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.