En el caso de las ayudas estatales, las ayudas estatales se consideran compatibles con el mercado interior.

El autor:¿ Qué pasa?, Fecha: 2023-10-13 15:29:05
Las etiquetas:

Resumen general

Esta es una estrategia de negociación de reversión basada en el indicador CCI. Se abrirán operaciones de reversión cuando el indicador CCI muestre niveles de sobrecompra o sobreventa.

Estrategia lógica

En primer lugar, esta estrategia se basa en el indicador CCI, cuya fórmula es:

El CCI = (Precio típico - promedio móvil simple) / (0,015 * Desviación estándar)

¿Dónde? Precio típico = (más alto + más bajo + cerrar) / 3 La media móvil simple = media móvil del precio típico durante los últimos N días
Desviación estándar = raíz cuadrada de la variación del precio típico durante los últimos N días

Esta estrategia utiliza un indicador CCI de 11 períodos y -150 se establece como el nivel de sobreventa, mientras que 150 como el nivel de sobrecompra.

Cuando se cierra cada barra, se comprueba el indicador CCI de 11 períodos. Si el CCI se cruza por debajo de -150, se genera una señal larga. Si el CCI cruza por encima de 150, se genera una señal corta.

Después de recibir la señal, la orden de mercado se utilizará para abrir la posición.

Análisis de ventajas

  1. El uso del indicador CCI puede captar eficazmente las oportunidades de reversión de precios
  2. Los parámetros CCI se pueden ajustar para la optimización
  3. El objetivo de ganancia fija y el índice de stop loss controlan eficazmente el riesgo
  4. Lógica estratégica simple y clara, fácil de entender e implementar

Análisis de riesgos

  1. El indicador CCI puede generar muchas señales falsas, las señales de entrada pueden no ser fiables
  • Solución: Optimizar los parámetros CCI, añadir filtros con otros indicadores
  1. El objetivo de ganancia fija y el índice de stop loss pueden no ser adecuados para diferentes productos
  • Solución: añadir objetivo de ganancia dinámica y stop loss
  1. La estrategia se basa únicamente en la CCI, el riesgo de ineficacia es elevado
  • Solución: Combinar múltiples indicadores para mejorar la robustez
  1. No hay consideración sobre el costo de negociación, el rendimiento en vivo puede sufrir
  • Solución: añadir control de deslizamiento, reducir la frecuencia de negociación

Direcciones de optimización

  1. Optimizar los parámetros CCI para encontrar mejores combinaciones de parámetros
  2. Añadir otros indicadores como MACD, KDJ para el filtrado de señales
  3. Desarrollar un objetivo de ganancia dinámica y un stop loss en lugar de un ratio fijo
  4. Optimizar la estrategia para reducir la frecuencia de negociación, reduciendo el impacto de los costes de negociación
  5. Realizar la optimización de backtesting para encontrar la mejor combinación de parámetros para el comercio en vivo

Resumen de las actividades

La estrategia de inversión CCI de 4 horas es una estrategia simple que utiliza el indicador CCI para la negociación de inversión. Tiene la ventaja de una lógica clara y una implementación fácil. Pero también tiene debilidades como señales CCI poco confiables y un objetivo de ganancia / stop loss inflexible. Se pueden hacer mejoras adicionales optimizando los parámetros CCI, agregando indicadores de filtro, desarrollando salidas dinámicas, etc. En general, esta estrategia proporciona una idea basada en CCI para la negociación cuantitativa, pero requiere una mayor optimización antes de la aplicación en vivo.


/*backtest
start: 2023-09-12 00:00:00
end: 2023-10-12 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("4H CCI Strategy", overlay=true)
length = input( 11 )
overSold = input( -150 )
overBought = input( +150 )
price1 = high
price2 = low
ucci = cci(price1, length)
dcci = cci(price2, length)
vcci = cci(ohlc4, 11)

resCustom = input(title="Timeframe", defval="15")
Length = input(16, minval=1)
xPrice = request.security(syminfo.tickerid, resCustom, hlc3)
xvnoise = abs(xPrice - xPrice[1])
nfastend = 0.666
nslowend = 0.0645
nsignal = abs(xPrice - xPrice[Length])
nnoise = sum(xvnoise, Length)
nefratio = iff(nnoise != 0, nsignal / nnoise, 0)
nsmooth = pow(nefratio * (nfastend - nslowend) + nslowend, 2) 
nAMA = nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1]))
basis1 = nAMA
slope = change(basis1,1)

if (not na(vcci))
    if (crossover(dcci, overSold))
        strategy.entry("CCILE", strategy.long, comment="CCILE")
        strategy.exit("exit", "CCILE", profit = 0.01, loss = 0.005)
    if (crossunder(ucci, overBought))
        strategy.entry("CCISE", strategy.short, comment="CCISE")
        strategy.exit("exit", "CCISE", profit = 0.01, loss = 0.005)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Más.