Estrategia de reversión de cruce de líneas dobles


Fecha de creación: 2023-11-24 17:03:47 Última modificación: 2023-11-24 17:03:47
Copiar: 0 Número de Visitas: 622
1
Seguir
1617
Seguidores

Estrategia de reversión de cruce de líneas dobles

Descripción general

La estrategia de inversión de doble línea cruzada es una estrategia de seguimiento de tendencias que combina la estrategia de inversión de 123 y la estrategia de oscilador de tendencia de DiNapoli para generar señales de negociación a través de la cruz de doble línea para lograr la función de seguir las tendencias del mercado.

Principio de estrategia

La estrategia tiene dos partes:

  1. 123 estrategia de inversión: Esta estrategia utiliza un indicador estocástico para generar una señal de compra cuando el precio de cierre se eleva después de dos días consecutivos de caída y la línea rápida estocástica está por debajo de la línea lenta y la línea rápida está por debajo de 50. Se genera una señal de venta cuando el precio de cierre se eleva después de dos días consecutivos de caída y la línea rápida estocástica está por encima de la línea lenta y la línea rápida está por encima de 50.

  2. DiNapoli a la estrategia de oscilador de tendencia: esta estrategia utiliza el promedio móvil de los precios, generando una señal de transacción cuando el precio está por encima o por debajo de una cierta amplitud del promedio móvil. En concreto, genera una señal de compra cuando el precio supera el promedio móvil Trigger positivo y genera una señal de venta cuando el precio está por debajo del promedio móvil Trigger negativo.

Las dos estrategias anteriores generan señales de negociación independientes, y esta estrategia las integra. La estrategia solo genera instrucciones de negociación reales cuando las señales de negociación de las dos coinciden, es decir, cuando el cruce de dos líneas forma una señal de simetría, de lo contrario no se realiza ninguna operación.

Análisis de las ventajas

Esta estrategia, combinada con señales de intercambio binario, permite un seguimiento eficaz de las tendencias del mercado y tiene las siguientes ventajas:

  1. Aproveche al máximo el poder de juicio y la tendencia de los indicadores estocásticos para evitar pérdidas por la desviación de una sola señal.

  2. El DiNapoli permite identificar tendencias y evitar posiciones innecesarias debido a fluctuaciones aleatorias.

  3. La intersección de dos líneas reduce efectivamente las señales falsas, mejora la calidad de la señal y proporciona una base sólida para juzgar el rumbo de la situación.

  4. Los parámetros de la estrategia son ajustables, los usuarios pueden elegir combinaciones de parámetros según sus preferencias personales y adaptarse con flexibilidad a diferentes entornos de mercado.

Análisis de riesgos

La estrategia también tiene los siguientes riesgos:

  1. En un mercado alcista, la estrategia puede ser demasiado cautelosa debido a la configuración de los parámetros del indicador, lo que lleva a perder una buena oportunidad de compra. Los parámetros se pueden ajustar adecuadamente para que la estrategia sea más positiva.

  2. En un mercado bajista, las señales de cruce de dos líneas pueden retrasarse, lo que lleva a un exceso de compra y venta, por lo que el ciclo de promedio debe reducirse adecuadamente para que la estrategia sea más sensible.

  3. En caso de que se produzca un gran movimiento unilateral, la señal de cruce de dos líneas puede ser lenta, y se debe establecer un stop loss para controlar las pérdidas.

Dirección de optimización

La estrategia se puede optimizar en las siguientes direcciones:

  1. Prueba y optimización de los parámetros del indicador estocástico y el indicador DiNapoli para encontrar la combinación óptima de parámetros.

  2. Añade otros indicadores de juicio auxiliares, como el indicador de volumen, para enriquecer la lógica interna de la estrategia y mejorar la precisión de la señal.

  3. Utiliza métodos de aprendizaje automático para entrenar y optimizar los parámetros de la estrategia y las reglas de generación de señales para adaptarse más a los cambios en el mercado.

  4. Combinado con indicadores técnicos avanzados para determinar la estructura local, distinguir entre las señales de línea corta y media y larga, la estrategia funciona en varios marcos de tiempo.

Resumir

La estrategia de inversión de doble línea cruzada utiliza dos indicadores para formar una señal de comercio de doble línea cruzada. Puede seguir de manera efectiva las tendencias del mercado y obtener mejores ganancias con la condición de controlar el riesgo. Es una estrategia de seguimiento de tendencias confiable.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 18/02/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
// DiNapoli Detrended Oscillator Strategy
//
// 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

DiNapoli(Length, Trigger) =>
    pos = 0.0
    xSMA = sma(close, Length)
    nRes = close - xSMA
    pos := iff(nRes > Trigger, 1,
    	     iff(nRes <= Trigger, -1, nz(pos[1], 0)))    
    pos

strategy(title="Combo Backtest 123 Reversal & DiNapoli Detrended Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthDiN = input(14, minval=1)
TriggerDiN = input(0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posDiN = DiNapoli(LengthDiN, TriggerDiN)
pos = iff(posReversal123 == 1 and posDiN == 1 , 1,
	   iff(posReversal123 == -1 and posDiN == -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 )