La estrategia de reversión de la línea K continua

El autor:¿ Qué pasa?, Fecha: 2024-03-05 16:07:40
Las etiquetas:

连续K线反转突破策略

Resumen de las estrategias

La idea central de la estrategia de ruptura de la línea K consecutiva es capturar las oportunidades de negociación en las que el precio de una acción aparece después de una caída continua durante un período de tiempo y rompe los puntos de resistencia importantes. La estrategia se desarrolla mediante la configuración de parámetros como el número de líneas K consecutivas de caída, el número de líneas K consecutivas de subida y las condiciones de stop loss, para abrir más posiciones cuando se cumplan las condiciones específicas y para mantenerse en equilibrio cuando se activan las condiciones de stop loss.

Principios estratégicos

  1. Establecer condiciones de entrada: cuando el precio de la acción cae continuamente después de la línea de la raíz X K, y luego sube continuamente a la línea de la raíz Y K, y en este momento la estrategia no tiene posiciones, se desencadena la condición de entrada, abrir más posiciones.
  2. Establecer condiciones de stop loss: después de la apertura, si el precio de la acción es inferior al precio mínimo de cierre de las líneas K anteriores, o inferior al precio máximo menos 2 veces ATR (amplitud real promedio), se activan las condiciones de stop loss, el equilibrio.
  3. Cada vez que se abre una posición, se registra el precio de entrada y el precio de stop loss correspondientes, y se restablecen los parámetros después del cierre de la posición para prepararse para la próxima operación.
  4. El código de la estrategia se escribe con el script pine, que puede ser reevaluado y optimizado en plataformas como TradingView.

La clave de la estrategia es identificar correctamente las señales de reversión y establecer los parámetros adecuados. El número de líneas K consecutivas que caen y el número de líneas K consecutivas que se elevan son dos parámetros importantes que deben optimizarse en función de los resultados de la retrospección.

Las ventajas estratégicas

  1. Aplicable a mercados turbulentos y al inicio de tendencias: esta estrategia se utiliza para tomar posiciones cuando aparecen señales de reversión después de que el precio de las acciones se haya ajustado durante un período de tiempo, para capturar más fácilmente las oportunidades en la fase inicial de la tendencia.
  2. Riesgo de control de pérdidas en el momento oportuno: Al establecer condiciones de control de pérdidas basadas en los mínimos anteriores y ATR, se puede estabilizar y controlar pérdidas en el momento oportuno cuando el precio de las acciones vuelva a caer.
  3. Parámetros ajustables, adaptabilidad fuerte: el número de líneas K continuas, las condiciones de stop loss, etc. pueden ajustarse según las características del mercado y las preferencias personales, para aumentar la adaptabilidad de la estrategia.

El riesgo estratégico

  1. La elección incorrecta de parámetros conduce a operaciones frecuentes: Si el número de K-lines consecutivas está configurado de manera demasiado pequeña, puede provocar que la estrategia abra posiciones frecuentes y aumente los costos de transacción.
  2. El mal ajuste de la posición de stop-loss puede aumentar las pérdidas: si la posición de stop-loss está demasiado amplia, puede causar una pérdida excesiva en una sola operación; si la posición de stop-loss está demasiado estrecha, puede causar que una operación que podría haber sido rentable se detenga prematuramente.
  3. La estrategia es más adecuada para ser utilizada en mercados turbulentos y en los primeros momentos de una tendencia, y puede no beneficiarse plenamente de la subida en mercados de tendencia estable en el largo plazo.
  4. Falta de gestión de posiciones y gestión de fondos: el código de estrategias actual no refleja el contenido de la gestión de posiciones y la gestión de fondos, y en las aplicaciones prácticas también se necesitan incluir estos elementos para mejorar la estabilidad de la estrategia.

Dirección de optimización estratégica

  1. Optimización del número de K-líneas continuas: se encuentra el número de K-líneas consecutivas de caída y el número de K-líneas consecutivas de subida que mejor se han desempeñado en el período más reciente mediante la repetición de diferentes combinaciones de parámetros.
  2. Optimización de las condiciones de stop loss: se puede considerar el uso de condiciones de stop loss más dinámicas, por ejemplo, para establecer posiciones de stop loss según el ATR o el porcentaje, para adaptarse a diferentes fluctuaciones del mercado.
  3. Unirse a una estrategia de doble dirección: la estrategia actual es hacer más de una dirección, puede considerarse unirse a una estrategia de hacer nada, mientras que captura las oportunidades de subidas y bajadas.
  4. Introducción de la gestión de posiciones y la gestión de fondos: se ajusta dinámicamente el tamaño de las posiciones de cada operación según la situación de los fondos de la cuenta y las preferencias de riesgo, y se establece un límite de riesgo general para mejorar la solidez de la estrategia.
  5. Combinado con otros indicadores técnicos o señales: puede combinarse con otros indicadores técnicos (como RSI, MACD, etc.) o señales comerciales (como rupturas, formas, etc.) para mejorar la precisión de la apertura y la posición.

Resumen de la estrategia

La estrategia de reversión continua de la línea K para tomar decisiones comerciales se basa en captar señales de reversión después de una caída continua del precio de las acciones. La estrategia es simple y fácil de entender, es adecuada para su uso en mercados turbulentos y en los inicios de la tendencia, y se puede adaptar con flexibilidad a diferentes condiciones del mercado mediante la configuración de parámetros como el número de líneas K continuas y las condiciones de stop-loss. Sin embargo, la estrategia también tiene algunas limitaciones, como la adaptabilidad a la tendencia a largo plazo, la falta de gestión de posiciones y gestión de fondos, etc.

En las aplicaciones prácticas, se necesita optimizar y mejorar la estrategia según las características del mercado y las preferencias de riesgo propias. Por ejemplo, optimizar el número de líneas K continuas y la configuración de condiciones de stop loss, incorporar operaciones bidireccionales multiespacios, introducir la gestión de posiciones y la gestión de fondos, y en combinación con otros indicadores técnicos y señales comerciales, etc. Esto puede controlar el riesgo y lograr un rendimiento de inversión estable mientras se mejora la rentabilidad de la estrategia.

En general, la estrategia de ruptura inversa de la línea K continua es una estrategia de negociación simple y práctica que vale la pena explorar y optimizar en la práctica. Sin embargo, ninguna estrategia es omnipotente, y los inversores también necesitan combinar su experiencia y juicio, tomar decisiones prudentes y ejecutar estrictamente para mantenerse en el mercado a largo plazo.


/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bottom Out Strategy", overlay=true)
consecutiveBarsUp = input(2)
consecutiveBarsDown = input(3)
price = close
ups = 0.0
ups := price > price[1] ? nz(ups[1]) + 1 : 0
dns = 0.0
dns := price < price[1] ? nz(dns[1]) + 1 : 0
var entry_bar_index = 1000000
var active = false
var stop_loss = 0.0

// === INPUT BACKTEST RANGE ===
i_from = input(defval = timestamp("01 Jan 2023 00:00 +0000"), title = "From")
i_thru = input(defval = timestamp("01 Mar 2024 00:00 +0000"), title = "Thru")
// === FUNCTION EXAMPLE ===
date() => true

entry_condition() => 
	date() and dns[2] >= consecutiveBarsDown and ups >= consecutiveBarsUp and not active

exit_condition() =>
	date() and active and (close < nz(stop_loss) or close < high - 2 * ta.atr(7))

if (entry_condition())
	strategy.entry("ConsDnLong", strategy.long, comment="CDLEntry")
	entry_bar_index := bar_index
	active := true
	stop_loss := math.min(close, close[1], close[2])
	// log.info("Entry at bar {0}, close={1}, stop_loss={2} ", entry_bar_index, close, stop_loss)
if (exit_condition())
	strategy.close("ConsDnLong", comment = "CDLClose")
	// log.info("Close at bar {0}", bar_index)
	entry_bar_index := 1000000
	active := false
// if (dns >= consecutiveBarsDown)
// 	strategy.entry("ConsDnSE", strategy.short, comment="ConsDnSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
plot(high - 2* ta.atr(7))

Más contenido