Estrategia de ruptura del canal doble de Donchian


Fecha de creación: 2024-02-04 09:42:14 Última modificación: 2024-02-04 09:42:14
Copiar: 0 Número de Visitas: 990
1
Seguir
1617
Seguidores

Estrategia de ruptura del canal doble de Donchian

Descripción general

La estrategia de ruptura de doble tangential channel es una estrategia de negociación cuantitativa basada en el tangential channel. La estrategia utiliza una combinación de tangential channel rápido y tangential channel lento para lograr operaciones de ruptura de alto rendimiento con bajo riesgo.

Principio de estrategia

La estrategia se basa principalmente en dos canales de dongxian, que incluyen un canal de dongxian lento con un ciclo más largo y un canal de dongxian rápido con un ciclo más corto.

El ciclo de la vía lenta de Dongxian es más largo y elimina el ruido del mercado, y sus señales de ruptura tienen una mayor fiabilidad. Cuando el precio rompa la vía lenta, haga una entrada adicional; Cuando el precio rompa la vía lenta, haga una entrada en blanco.

El corto ciclo de la corredura rápida de Dongxian permite una respuesta rápida a los cambios de precio a corto plazo. Cuando el precio vuelve a romper esta corredura, indica que la tendencia se ha invertido y se necesita un alto o una parada inmediata.

Además, se establecen condiciones de volatilidad como filtro de entrada para la estrategia. La entrada se activa solo cuando la fluctuación de los precios supera el porcentaje de brecha previamente establecido. Esto evita la entrada frecuente en la compilación horizontal.

Análisis de las ventajas

  • El uso de dos vías para establecer dos líneas de defensa permite un control eficaz de los riesgos.
  • El uso de canales rápidos y lentos para capturar tendencias de manera eficiente
  • El mecanismo de filtrado de volatilidad puede reducir las transacciones ineficaces
  • Con las ventajas de rastrear tendencias y evitar la reducción de categorías
  • Las reglas son claras, sencillas y fáciles de entender

Análisis de riesgos

  • Los puntos de detención pueden romperse en situaciones de crisis y causar grandes pérdidas.
  • La configuración incorrecta de los parámetros (por ejemplo, la longitud del ciclo del canal) puede causar descuentos en los efectos de la política
  • Los costos de transacción también afectan a los beneficios.
  • La necesidad de estar atentos a los saltos en la situación causados por eventos importantes

Se pueden reducir estos riesgos mediante medidas como la optimización de parámetros, la configuración razonable de puntos de parada y la atención a los eventos importantes.

Dirección de optimización

  • Prueba de diferentes combinaciones de parámetros de ciclo de la vía de Dongxian
  • Optimización de los parámetros de volatilidad para encontrar el mejor momento de entrada
  • Añadir indicadores de tendencia para evitar el comercio a la baja
  • La combinación de las opciones de valores fundamentales
  • Ajuste del mecanismo de suspensión de pérdidas para evitar la expansión de las pérdidas

Resumir

La estrategia de ruptura del canal de doble tangente es una estrategia de seguimiento de tendencias relativamente estable y confiable en su conjunto. Al mismo tiempo, tiene las ventajas de la captura de tendencias y el control de riesgos, y es un módulo básico adecuado para una variedad de estrategias de negociación de acciones.

Código Fuente de la Estrategia
/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © omererkan

//@version=5
strategy(title="Double Donchian Channel Breakout", overlay=true, initial_capital = 1000, commission_value = 0.05, default_qty_value = 100, default_qty_type = strategy.percent_of_equity)


slowLen = input.int(50, title="Slow Donchian")
fastLen = input.int(30, title="Fast Donchian")
volatility = input.int(3, title="Volatility (%)")
longProfitPerc = input.float(2, title="Long TP1 (%)", minval=0.0, step=0.1) * 0.01
shortProfitPerc = input.float(2, title="Short TP1 (%)", minval=0.0, step=0.1) * 0.01
TP1Yuzde =input.int(50, title = "TP1 Position Amount (%)")

ubSlow = ta.highest(close, slowLen)[1]
lbSlow = ta.lowest(close, slowLen)[1]

ubFast = ta.highest(close, fastLen)[1]
lbFast = ta.lowest(close, fastLen)[1]

plot(ubSlow, color=color.green, linewidth=2, title="Slow DoCh - Upperband")
plot(lbSlow, color=color.green, linewidth=2, title="Slow DoCh - Lowerband")
plot(ubFast, color=color.blue, linewidth=2, title="Fast DoCh - Upperband")
plot(lbFast, color=color.blue, linewidth=2, title="Fast DoCh - Lowerband")

fark = (ubSlow - lbSlow) / lbSlow * 100

longExitPrice  = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)

longCondition = ta.crossover(close, ubSlow) and fark > volatility
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = ta.crossunder(close, lbSlow) and fark > volatility
if (shortCondition)
    strategy.entry("Short", strategy.short)

if strategy.position_size > 0 and ta.crossunder(close, lbFast) 
    strategy.close("Long", "Close All")

if strategy.position_size < 0 and ta.crossover(close, ubFast)
    strategy.close("Short", "Close All")

// Take Profit
if strategy.position_size > 0
    strategy.exit("TP1", "Long", qty_percent = TP1Yuzde, limit = longExitPrice)

if strategy.position_size < 0
    strategy.exit("TP1", "Short", qty_percent = TP1Yuzde, limit = shortExitPrice)