Estrategia de seguimiento de tendencias basada en CCI cero


Fecha de creación: 2023-09-28 16:00:36 Última modificación: 2023-09-28 16:00:36
Copiar: 0 Número de Visitas: 770
1
Seguir
1617
Seguidores

Descripción general

La estrategia utiliza el cruce de los ceros del indicador CCI como señal de entrada y salida para capturar la dirección de la tendencia. Cuando el indicador CCI pasa de ceros por encima de la zona negativa, y se vacía cuando pasa de ceros por debajo de la zona positiva, se logra el efecto de seguimiento de la tendencia.

Principio de estrategia

  • La duración del índice CCI es de 20 ciclos.
  • Cuando el indicador CCI lleve 0, haga más entradas, la línea de stop loss es de -100.
  • Cuando el indicador CCI es de 0, la entrada es libre y la línea de parada es de 100 .
  • Las condiciones de estabilidad son el índice CCI cruzando cero nuevamente.

La lógica central de la estrategia es capturar el cruce de cero del indicador CCI como una señal para juzgar la tendencia de los precios. Cuando el indicador CCI pasa de una zona negativa a una zona positiva, indica que los precios están fuera de la zona de exceso de venta, y es posible que se forme una tendencia al alza. Cuando el indicador CCI pasa de una zona positiva a una zona negativa, indica que los precios están fuera de la zona de exceso de venta, y es posible que se forme una tendencia a la baja.

Análisis de las ventajas

  • El uso de un cruce de ceros del índice CCI para determinar la dirección de la tendencia es una aplicación más clásica del índice CCI.
  • El uso de un indicador CCI de la longitud de los parámetros adecuados puede filtrar las señales de comercio de exceso de ruido y capturar los principales puntos de cambio de tendencia.
  • La estrategia de entrar una sola vez en una tendencia de cambio y establecer un stop loss puede reducir el exceso de operaciones innecesarias y concentrar los fondos en la búsqueda de grandes pérdidas.
  • Los parámetros de los indicadores CCI y los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros de los parámetros.

Análisis de riesgos

  • El índice CCI puede generar señales de cruce de cero con falsas rupturas, lo que provoca pérdidas innecesarias.
  • El ajuste incorrecto de la distancia de frenado puede causar un frenado demasiado amplio o demasiado estrecho.
  • La configuración de la longitud de los parámetros del indicador CCI es irrazonable y puede filtrar oportunidades de negociación efectivas de períodos más cortos.
  • Existe el riesgo de que se pierda un cierto tiempo, es decir, que la tendencia de los precios se haya formado, pero la señal de cruce de cero en el indicador CCI se retrasó, lo que provocó una entrada tardía.

Respuesta:

  • Confirmar en combinación con otros indicadores para evitar falsos cruces con el índice CCI.
  • Ajuste dinámico de la distancia de frenado.
  • Optimización de la longitud de los parámetros del CCI para capturar tendencias en diferentes longitudes de ciclo.
  • La liberalización de las condiciones de entrada, sin tener que deducir el cruce de cero CCI.

Dirección de optimización

La estrategia puede ser optimizada aún más en las siguientes direcciones:

  1. Optimización de la longitud de los parámetros del indicador CCI para encontrar la combinación óptima de parámetros. Se puede encontrar el parámetro óptimo recorriendo diferentes longitudes de parámetros, probando la rentabilidad y la tasa de éxito.

  2. Añadir confirmación de otros indicadores, como KDJ, MACD, etc., para evitar pérdidas innecesarias por una falsa ruptura del indicador CCI. Se puede establecer que el precio continúe rompiendo un rango de precios o que entre en juego solo cuando otros indicadores emitan señales simultáneamente.

  3. Ajuste dinámico de la distancia de detención. Puede ajustar automáticamente el rango de intervalos de la distancia de detención en función de la volatilidad del mercado. Reducir la distancia de detención es favorable para el cierre oportuno, pero también puede ser demasiado sensible; aumentar la distancia de detención es favorable para la tendencia continua, pero también puede causar grandes pérdidas.

  4. Optimización de las condiciones de entrada para reducir los errores. Se pueden flexibilizar las condiciones de entrada, comenzando a entrar cuando el indicador CCI está cerca de cero, aumentando gradualmente la posición, en lugar de cruzar el cero para entrar en juego.

  5. Aumentar las condiciones de salida para maximizar las ganancias. Cuando la tendencia se invierte, se puede establecer una nueva señal de salida, por ejemplo, una parada cuando el precio retrocede una cierta amplitud.

Resumir

Esta estrategia utiliza el indicador de CCI de cero para determinar la dirección de la tendencia de los precios, entrar en la posición cuando se cruza, y establecer una distancia de parada razonable, para poder seguir la tendencia de manera efectiva. Una vez optimizada la estrategia, puede convertirse en una estrategia de seguimiento de tendencia estable y confiable.

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

//@version=2
strategy("CCI Level Zero Strategy (by Marcoweb) v1.0", shorttitle="CCI_L_Z_Strat_v1.0", overlay=true)

///////////// CCI
CCIlength = input(20, minval=1, title="CCI Period Length") 
CCIoverSold = -100
CCIoverBought = 100
CCIzeroLine = 0
CCI = cci(hlc3, CCIlength)
price = hlc3
vcci = cci(price, CCIlength)

source = close
buyEntry = crossover(source, CCIzeroLine)
sellEntry = crossunder(source, CCIzeroLine)
plot(CCI, color=black,title="CCI")
p1 = plot(CCIoverSold, color=blue,title="-100")
p2 = plot(CCIoverBought, color=red,title="100")
p3 = plot(CCIzeroLine, color=orange,title="0")


///////////// CCI 0Trend v1.0 Strategy 
if (not na(vcci))

    if (crossover(CCI, CCIzeroLine))
        strategy.entry("CCI_L", strategy.long, stop=CCIoverSold,  comment="CCI_L")
    else
        strategy.cancel(id="CCI_L")
        
    if (crossunder(CCI, CCIzeroLine))
        strategy.entry("CCI_S", strategy.short, stop=CCIoverBought,  comment="CCI_S")
    else
        strategy.cancel(id="CCI_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)