La estrategia comercial cuantitativa de Donchian basada en la ruptura del canal de precios


Fecha de creación: 2023-12-08 11:00:05 Última modificación: 2023-12-08 11:00:05
Copiar: 0 Número de Visitas: 655
1
Seguir
1621
Seguidores

La estrategia comercial cuantitativa de Donchian basada en la ruptura del canal de precios

Descripción general

La idea central de la estrategia es realizar operaciones de compra y venta en función de las rupturas de precios en el canal de Dongxian, una estrategia cuantitativa de tipo de seguimiento de tendencias. Puede identificar automáticamente los canales de precios, abrir posiciones cuando los precios se encuentran en los canales de ruptura, y cerrar posiciones cuando los precios vuelven a la proximidad o el punto de parada en el canal. La estrategia está diseñada para capturar tendencias de precios de longitud y longitud, y se aplica a la negociación algorítmica de derivados financieros como los índices bursátiles.

El principio

La estrategia se basa en el indicador de las vías de Dongxian, que son las áreas de vías trazadas a través de los máximos y mínimos de precios en un período dado. Su método de cálculo es:

El precio más alto en casi n ciclos Baja línea = precio más bajo en casi n ciclos

Cuando el precio se rompe en la vía ascendente, se considera que se entra en una tendencia alcista, y cuando el precio se cae en la vía descendente, se considera que se entra en una tendencia alcista. Esta estrategia solo considera la situación de romper la vía ascendente.

La lógica de la transacción es la siguiente:

  1. Traza la puesta en marcha de la vía de Dongjian con el precio máximo de n ciclos
  2. Cuando el cierre de la bolsa se rompa, hay que entrar más.
  3. El modo de parada para cerrar el precio de la liquidación de regreso a la vía inferior cerca de la vía o un punto de parada fijado

Las ventajas

La estrategia tiene las siguientes ventajas:

  1. La estrategia es clara, fácil de entender y de implementar
  2. Los indicadores de la Ronda de Dongxian están maduros y son confiables para determinar la dirección de la tendencia.
  3. Identificación automática de las vías, sin necesidad de un análisis manual
  4. Parámetros configurables y adaptabilidad
  5. Incluye un mecanismo de stop loss para limitar las pérdidas

El riesgo

La estrategia también tiene sus riesgos:

  1. El canal de Dongxian podría romperse y causar pérdidas innecesarias
  2. La posición de parada incorrecta puede aumentar las pérdidas
  3. Se debe tener en cuenta el riesgo de reversión al acercarse al paso.
  4. La configuración incorrecta de los parámetros (por ejemplo, la longitud del ciclo) puede afectar la eficacia de la estrategia

Resolución de las mismas:

  1. En combinación con otros indicadores, el filtro de la nivelación es falso.
  2. Optimización de la posición de parada y salida suave
  3. Considere incrementar el volumen de transacciones o ampliar el alcance de las paradas cerca del canal
  4. Prueba diferentes parámetros para encontrar el mejor

Dirección de optimización

La estrategia también puede ser optimizada en los siguientes aspectos:

  1. Añadir otros indicadores de juicio para evitar falsas rupturas, como MACD, KD, etc.
  2. Mecanismos de optimización de la pérdida, como la pérdida móvil con las fluctuaciones de precios
  3. Optimización de los controles de participación, por ejemplo, operando solo cuando la volatilidad aumenta
  4. Optimización de parámetros, búsqueda de la combinación óptima de parámetros

Resumir

La estrategia es clara, fácil de entender y de implementar, utiliza los indicadores de la vía de Tongan para identificar automáticamente la dirección de la tendencia. La configuración es flexible y se puede ajustar según las necesidades reales.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Giovanni_Trombetta

// Strategy to capture price channel breakouts

//@version=4
strategy("ChannelsBreakout", max_bars_back=50, overlay=true)

instrument = input(1, title = "Select 1: Stock/Forex, 2: Future")
money = input(10000, title = "Money for each trade")
backtest_start = input(2000, "Insert first year to backtest")
period = input(50, title = "Period in bars of Donchian Channel")
monetary_stoploss = input(1000, title = "Monetary Stop Loss")

quantity = if instrument != 1 
    1
else
    int(money / close)
    
upBarrier = highest(high,period)
downBarrier = lowest(low,period)
up = highest(high,period / 4)
down = lowest(low,period / 4)

plot(upBarrier, color=color.green, linewidth=2)
plot(downBarrier, color=color.red, linewidth=2)
plot(up, color=color.lime, linewidth=1)
plot(down, color=color.orange, linewidth=2)

longCondition = crossover(close, upBarrier[1]) and year >= backtest_start

if (longCondition)
    strategy.entry("Long", strategy.long, quantity, when = strategy.position_size == 0)

closeCondition = crossunder(close, down[1]) or down < down[1]

if (closeCondition)
    strategy.close("Long", comment = "Trailing")
    
stop_level = strategy.position_avg_price - monetary_stoploss / strategy.position_size
strategy.exit("StopLoss", from_entry = "Long", stop = stop_level)
plot(stop_level, color=color.yellow, linewidth=2)

// l = label.new(bar_index, na,
//   text="PineScript Code", color= color.lime, textcolor = color.white,
//   style=label.style_labelup, yloc=yloc.belowbar, size=size.normal)
// label.delete(l[1])