Estrategia técnica de trading compuesta de los tres dragones


Fecha de creación: 2023-12-21 11:56:31 Última modificación: 2023-12-21 11:56:31
Copiar: 0 Número de Visitas: 636
1
Seguir
1621
Seguidores

Estrategia técnica de trading compuesta de los tres dragones

Descripción general

El sistema de Sanlong es una estrategia de negociación de tecnología combinada que combina el indicador de tendencia de la extensión de la cantidad de precios, el indicador del canal de Dongxian y el indicador de la SAR de la parallaxa. La estrategia utiliza las ventajas complementarias de los tres indicadores para identificar la dirección de la tendencia del mercado y las posibles señales de compra y venta.

Principio de estrategia

La estrategia utiliza primero el indicador de tendencia de volumen de precios extendido y el canal de Dongxian para determinar la dirección de la tendencia del mercado. Cuando el indicador de tendencia de volumen de precios extendido está por encima de la línea de base y el precio está por encima del canal de Dongxian, está en una tendencia alcista; por el contrario, el indicador de tendencia de volumen de precios extendido está por debajo de la línea de base y el precio está por debajo del canal de Dongxian, está en una tendencia descendente.

Después de identificar la dirección de la tendencia del mercado, la estrategia introduce un indicador de SAR de parallax para identificar el momento específico de compra y venta. Cuando el indicador de SAR de parallax atraviesa el precio debajo, genera una señal de compra; cuando el indicador de SAR de parallax atraviesa el precio encima, genera una señal de venta.

Para verificar aún más la señal, la estrategia también confirma la dirección de la tendencia en varios períodos de tiempo, evitando entrar en juego durante las fuertes fluctuaciones del mercado. Además, la estrategia también establece múltiples niveles de parada para bloquear los beneficios y controlar el riesgo.

Análisis de las ventajas

La mayor ventaja del sistema de Sanlong es que la combinación de indicadores utiliza tres tipos diferentes de indicadores que son complementarios entre sí, lo que permite una evaluación más completa y precisa de las tendencias del mercado. En concreto, las principales ventajas son:

  1. El indicador de tendencia de los volúmenes de precios extendidos permite identificar con precisión los puntos de cambio de tendencia y la intensidad de la tendencia, lo cual es fundamentalmente bueno.
  2. Los indicadores de la vía de Dongxian pueden determinar la dirección de la tendencia con claridad y capturar mejor la tendencia.
  3. El SAR de la parallaxa en combinación con el uso de indicadores de tendencia, permite encontrar puntos de compra y venta con mayor precisión.

Mediante la combinación orgánica de los indicadores, se puede aprovechar al máximo las ventajas de los indicadores, lo que permite al sistema Samsung determinar con precisión el movimiento de las líneas largas, medianas y largas, y identificar con mayor precisión los puntos de venta y venta, lo que permite obtener una mejor relación de riesgo-beneficio.

Análisis de riesgos

Como una estrategia de combinación de indicadores, el riesgo general es controlado, pero hay ciertos riesgos a tener en cuenta:

  1. La extensión del indicador de tendencia de la cantidad de precios para juzgar el riesgo de error en casos de brechas falsas y reversiones masivas;
  2. En el proceso de recolección de la sacudida, el canal de Dongjian puede estrecharse y generar una mayor probabilidad de señales erróneas.
  3. La configuración incorrecta de los parámetros SAR de la línea de parálisis también puede tener un cierto impacto en la identificación de puntos de venta y compra.

Para los riesgos anteriores, recomendamos ajustar adecuadamente la configuración de los parámetros del indicador y ayudar a referirse a otros indicadores para reducir la probabilidad de que un solo indicador falle. Además, el manejo razonable de los estoppos y las posiciones también es fundamental para el control de riesgos de la estrategia en general.

Optimización de la estrategia

El sistema Samsung todavía tiene espacio para una mayor optimización:

  1. Se pueden introducir algoritmos de aprendizaje automático para optimizar los parámetros del indicador.
  2. Se puede considerar la introducción de indicadores de volatilidad para ayudar a la evaluación y mejorar la estabilidad de la estrategia;
  3. Los indicadores de sentimiento se pueden combinar para evaluar el impacto de las fluctuaciones de sentimiento público en la estrategia.

A través de la optimización de parámetros algorítmicos, el juicio de combinaciones de múltiples indicadores y el análisis cuantitativo del comportamiento, se espera que se mejore aún más la rentabilidad y la estabilidad de los sistemas de Sanlong. Seguiremos prestando atención a las tecnologías de vanguardia de la industria y optimizando continuamente el sistema de estrategias de mejora.

Resumir

El sistema de Sanlong es una estrategia de combinación de indicadores tecnológicos para determinar el movimiento del mercado y encontrar puntos de venta y ventaja mediante la extensión del indicador de tendencia de precio, el indicador de la vía de Dongxian y el indicador SAR de la línea de parálisis. La estrategia es precisa, controla el riesgo y, después de ser verificada varias veces, es un sistema de estrategia eficaz para inversores de línea media y larga.

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

//@version=5
strategy(title="TRIPLE DRAGON SYSTEM", overlay=true,default_qty_type = strategy.percent_of_equity,default_qty_value=100,initial_capital=1000,pyramiding=0,commission_value=0.01)
/////////////// DRAG-ON ///// EMA'S /////////////// 
emar = ta.ema(close,5)
plot(emar, color=color.blue, title="S-Fast EMA")
//EMAlengthTRF = input.int(200, minval=1,title = "EMA Filter")
//ematrf = ta.ema(close,EMAlengthTRF)
//plot(ematrf, "EMA-TREND FILTER", color=color.red,linewidth = 4)
/////////////// 1-DRAG-ON /////EXTENDED PRICE VOLUME TREND /////////////// 
lenght = input(200,"EPVT - Trend Lenght")   
var cumVol = 0.
cumVol += nz(volume)
if barstate.islast and cumVol == 0
    runtime.error("No volume is provided by the data vendor.")
src = close

vt = ta.cum(ta.change(src)/src[1]*volume)
upx = ta.highest(vt,lenght)
downx = ta.lowest(vt,lenght)
basex = (upx +downx)/2
VTX = vt - basex

/////////////// 2-DRAG-ON ///// DON TREND /////////////// 

length = input.int(200, minval=1, title = "Donchian Lenght")
lower = ta.lowest(length)
upper = ta.highest(length)
basis = math.avg(upper, lower)

updiff = upper - close
downdiff = lower - close
dontrend = -(updiff + downdiff)   

xupx = ta.highest(dontrend,length) >0 ? ta.highest(dontrend,length) : 0 

xdownx = ta.lowest(dontrend,length) < 0 ?ta.lowest(dontrend,length) :0 
xxbasisxx = math.avg(xdownx, xupx)

inversedragup = xupx[1]  
inversedragdown = xdownx[1]  
inversedragon = (inversedragup+inversedragdown)/2

/////////////// 3-DRAG-ON ///// SUPER SAR-X /////////////// 
start = input(0.02)
increment = input(0.02)
maximum = input(0.8)
entry_bars = input(1, title='Entry on Nth trend bar')

atr = ta.atr(14)

atr := na(atr) ? ta.tr : atr

psar = 0.0  // PSAR
af = 0.0  // Acceleration Factor
trend_dir = 0  // Current direction of PSAR
ep = 0.0  // Extreme point
trend_bars = 0

sar_long_to_short = trend_dir[1] == 1 and close <= psar[1]  // PSAR switches from long to short
sar_short_to_long = trend_dir[1] == -1 and close >= psar[1]  // PSAR switches from short to long

trend_change = barstate.isfirst[1] or sar_long_to_short or sar_short_to_long

// Calculate trend direction
trend_dir := barstate.isfirst[1] and close[1] > open[1] ? 1 : barstate.isfirst[1] and close[1] <= open[1] ? -1 : sar_long_to_short ? -1 : sar_short_to_long ? 1 : nz(trend_dir[1])

trend_bars := sar_long_to_short ? -1 : sar_short_to_long ? 1 : trend_dir == 1 ? nz(trend_bars[1]) + 1 : trend_dir == -1 ? nz(trend_bars[1]) - 1 : nz(trend_bars[1])

// Calculate  Acceleration Factor
af := trend_change ? start : trend_dir == 1 and high > ep[1] or trend_dir == -1 and low < ep[1] ? math.min(maximum, af[1] + increment) : af[1]

// Calculate extreme point
ep := trend_change and trend_dir == 1 ? high : trend_change and trend_dir == -1 ? low : trend_dir == 1 ? math.max(ep[1], high) : math.min(ep[1], low)

// Calculate PSAR
psar := barstate.isfirst[1] and close[1] > open[1] ? low[1] : barstate.isfirst[1] and close[1] <= open[1] ? high[1] : trend_change ? ep[1] : trend_dir == 1 ? psar[1] + af * atr : psar[1] - af * atr

//////////////// MELODY ///////////////////
VTY = ta.valuewhen(ta.cross(VTX,0),close,0)
//plot(VTY, color=color.black, title="Extended-PVT")

//DONTRENDX = ta.valuewhen(ta.cross(dontrend,0),close,0)
//plot(DONTRENDX, color=color.red, title="DONCHIAN TREND")

SSARX = ta.valuewhen(ta.cross(psar,close),close,0)
//plot(SSARX, color=color.black, title="SSAR-X")

MAXDRAG = math.max(SSARX,VTY)
//plot(MAXDRAG, color=color.black, title="MAX DRAG")
MINDRAG = math.min(SSARX,VTY)
//plot(MINDRAG, color=color.black, title="MIN DRAG")
BASEDRAG = math.avg(MAXDRAG,MINDRAG)
//plot(BASEDRAG, color=color.red, title="BASE DRAG")


/////BUY AND SELL LOGIC ///////////
DRAGONBUY = (ta.crossover(close,MAXDRAG) or ta.crossover(close,MINDRAG) )
DRAGONBUYSTOP = (ta.crossunder(close,MAXDRAG) or ta.crossunder(close,MINDRAG)) 
DRAGONBUYPLOT = ta.valuewhen(DRAGONBUY==true,close,0)
plot(DRAGONBUYPLOT, color=color.red, title="BUY LINE")

DRAGONSELL = (ta.crossunder(close,MAXDRAG) or ta.crossunder(close,MINDRAG) ) 
DRAGONSELLSTOP = (ta.crossover(close,MAXDRAG) or ta.crossover(close,MINDRAG))
DRAGONSELLPLOT = ta.valuewhen(DRAGONSELL==true,close,0)
plot(DRAGONSELLPLOT, color=color.red, title="SELL LINE")

/////TAKE PROFIT LOGIC ///////////
tp1 = input.int(5, minval=1,title = "TP-1")
tp2 = input.int(10, minval=1,title = "TP-2")
tp3 = input.int(15, minval=1,title = "TP-3")

TPTAKA1B = DRAGONBUYPLOT*(1+tp1/100)
//plot(TPTAKA1B, "BUY-TP1", color=color.red,linewidth = 1)
TPTAKA2B = DRAGONBUYPLOT*(1+tp2/100)
//plot(TPTAKA2B, "BUY-TP2", color=color.red,linewidth = 1)
TPTAKA3B = DRAGONBUYPLOT*(1+tp3/100)
//plot(TPTAKA3B, "BUY-TP3", color=color.red,linewidth = 1)

TPTAKA1S = DRAGONSELLPLOT*(1-tp1/100)
//plot(TPTAKA1S, "SELL-TP1", color=color.red,linewidth = 1)
TPTAKA2S = DRAGONSELLPLOT*(1-tp2/100)
//plot(TPTAKA2S, "SELL-TP2", color=color.red,linewidth = 1)
TPTAKA3S = DRAGONSELLPLOT*(1-tp3/100)
//plot(TPTAKA3S, "SELL-TP3", color=color.red,linewidth = 1)


BUYTP = ta.crossunder(emar,TPTAKA1B) or ta.crossunder(emar,TPTAKA2B) or ta.crossunder(emar,TPTAKA3B) 
SELLTP = ta.crossover(emar,TPTAKA1B) or ta.crossover(emar,TPTAKA2B) or ta.crossover(emar,TPTAKA3B)

/////STRATEGY ///////////
// Enter condition 
longCondition = DRAGONBUY==true 
if longCondition
    strategy.entry('Long', strategy.long, comment = "ENTER-LONG")

// Exit condition 
strategy.close('Long', when=DRAGONBUYSTOP, comment = "EXIT-LONG")

// Enter condition 
ShortCondition = DRAGONSELL  
if ShortCondition
    strategy.entry('Short', strategy.short, comment = "ENTER-SHORT")

// Exit condition 
strategy.close('Short', when=DRAGONSELLSTOP, comment = "EXIT-SHORT")
///// END OF STRATEGY ///////////