La estrategia de ruptura inteligente de doble conexión es una combinación de la estrategia de 123 inversiones y la estrategia del oscilador de detección de eje. La estrategia utiliza principalmente la forma de doble conexión para determinar el punto de reversión potencial de la tendencia, en combinación con la detección de eje para filtrar las operaciones de ruptura falsas y lograr operaciones de ruptura para capturar cambios de tendencia en posiciones tecnológicas importantes.
La estrategia tiene dos partes:
La estrategia de inversión proviene de Ulf Jensen Cómo duplicar el valor en el mercado de futuros página 183. La estrategia es una estrategia de inversión.
La lógica concreta es: cuando el precio de cierre es superior al precio de cierre del día anterior durante 2 días consecutivos y la línea de velocidad aleatoria es inferior a 50 en el día 9, hacer más; cuando el precio de cierre es inferior al precio de cierre del día anterior durante 2 días consecutivos y la línea de velocidad aleatoria es superior a 50 en el día 9, hacer un vacío.
La estrategia de detección de la oscilación del eje central fue propuesta por Giorgos E. Siligardos y publicada en la revista Stocks & Commodities en septiembre de 2009.
La estrategia utiliza una combinación de la línea media y el indicador RSI para determinar la oscilación cuando el precio está cerca de la vía ascendente y descendente, generando una señal de negociación. La fórmula de cálculo específica es la siguiente:
当价格 > 移动均线时:
指标值 = (RSI值 - 35) / (85 - 35)
当价格 <= 移动均线时:
指标值 = (RSI值 - 20) / (70 - 20)
如果指标值 > 50, 做多
如果指标值 < 50, 做空
Combinando las dos estrategias, en la forma de doble conexión, si el indicador emite una señal en sentido contrario, se realizan operaciones de ruptura. De esta manera, se pueden detectar nuevas tendencias en lugares tecnológicos importantes y evitar falsas rupturas dentro de la zona de oscilación.
Métodos de control y optimización de riesgos:
La estrategia se puede optimizar en los siguientes aspectos:
Prueba diferentes sistemas lineales para encontrar la mejor combinación de parámetros
Optimización de la configuración de los parámetros del RSI para reducir la tasa de falsedad
Aumentar la filtración de tráfico para asegurar una brecha efectiva
Indicadores de tendencia para evitar una ruptura de tendencia
Optimización automática del ajuste de parámetros con métodos de aprendizaje automático
Aumentar las estrategias para detener los daños y controlar el riesgo
Evaluar la continuidad de las rupturas y fijar objetivos de ganancias
Analiza las características de las diferentes variedades y ajusta la configuración de los parámetros
Mediante la optimización de parámetros, la evaluación de los efectos de la ruptura y el ajuste de la estrategia de detención de pérdidas, se puede mejorar continuamente la estrategia para obtener beneficios estables en diferentes entornos de mercado.
La estrategia de ruptura inteligente de doble eslabón utiliza una combinación de formas de reversión y un mecanismo de detección de filtros indicadores para capturar posibles puntos de cambio de tendencia en lugares tecnológicos importantes. En comparación con la estrategia de seguimiento de rupturas, el tiempo de implementación de las operaciones de ruptura es más preciso y evita la molestia de perder repetidamente en zonas de oscilación.
/*backtest
start: 2023-09-30 00:00:00
end: 2023-10-03 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 20/04/2021
// 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 Pivot Detector Oscillator, by Giorgos E. Siligardos
// The related article is copyrighted material from Stocks & Commodities 2009 Sep
//
// 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
PDO(Length_MA,Length_RSI,UpBand,DownBand,MidlleBand) =>
pos = 0.0
xMA = sma(close, Length_MA)
xRSI = rsi(close, Length_RSI)
nRes = iff(close > xMA, (xRSI - 35) / (85-35),
iff(close <= xMA, (xRSI - 20) / (70 - 20), 0))
pos:= iff(nRes * 100 > 50, 1,
iff(nRes * 100 < 50, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Pivot Detector Oscillator)", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Pivot Detector Oscillator ----")
Length_MA = input(200, minval=1)
Length_RSI = input(14, minval=1)
UpBand = input(100, minval=1)
DownBand = input(0)
MidlleBand = input(50)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posPDO = PDO(Length_MA,Length_RSI,UpBand,DownBand,MidlleBand)
pos = iff(posReversal123 == 1 and posPDO == 1 , 1,
iff(posReversal123 == -1 and posPDO == -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 )