
La estrategia de cuantificación de la limpieza de liquidez dinámica en varios niveles es un sistema de negociación avanzado diseñado específicamente para detectar y aprovechar el comportamiento de caza de pérdidas en el mercado. La estrategia se basa en el hecho de que las entidades de mercado a menudo crean falsas brechas en áreas de liquidez clave (como los altos o bajos recientes) y luego se revierten rápidamente.
El principio central de la estrategia es identificar y aprovechar lo que se conoce como “limpieza de liquidez” o “caza de pérdidas”.
Identificación de las zonas de fluidezLa estrategia utiliza un período de retroceso (de 20 ciclos por defecto) para determinar los precios más altos y más bajos más recientes, que generalmente agrupan una gran cantidad de órdenes de stop loss.
Detección de la brechaLa estrategia detecta posibles eventos de limpieza de liquidez cuando los precios actuales superan los máximos o mínimos previos.
high > highestHigh[1]low < lowestLow[1]Condiciones de filtradoEn la actualidad, la estrategia se basa en dos filtros clave para reducir las señales falsas:
Señales de entrada:
Gestión de riesgosLas estrategias utilizan la configuración de stop loss dinámica basada en ATR:
Seguimiento de transaccionesLa estrategia sigue los cambios en las posiciones y marca los puntos de entrada y salida en el gráfico, proporcionando una retroalimentación visual intuitiva de las operaciones.
Después de un análisis en profundidad, la estrategia tiene las siguientes ventajas:
Perspectivas del mercadoLa estrategia captura las debilidades psicológicas de los participantes en el mercado, es decir, el comportamiento concentrado de establecer paros en posiciones clave, un patrón que se repite en el mercado.
Mecanismo de confirmación múltipleLa combinación del comportamiento de los precios, los indicadores técnicos y el análisis del volumen de transacciones, forma un sistema de triple confirmación que reduce considerablemente las señales falsas.
Gestión de riesgos dinámicosEl uso de ATR para el establecimiento de paradas de pérdidas permite a la administración de riesgos adaptarse a los cambios en la volatilidad del mercado, estableciendo paradas más amplias en mercados de alta volatilidad y paradas más estrechas en mercados de baja volatilidad.
Condiciones objetivas de admisiónLas condiciones de entrada de las estrategias se basan exclusivamente en indicadores técnicos objetivos y en el comportamiento del mercado, reduciendo la interferencia con el juicio subjetivo.
Sistema de retroalimentación visualLos puntos de entrada y salida pueden ser marcados en el gráfico para evaluar el rendimiento de la estrategia y hacer análisis retrospectivo.
Adaptación a las diferentes condiciones del mercadoLa estrategia puede adaptarse a diferentes entornos de mercado y variedades de transacciones a través de configuraciones de parámetros ajustables.
A pesar de la ingeniosa estrategia, los siguientes puntos de riesgo existen:
Riesgo de una ruptura equivocada: El mercado puede tener un movimiento unidireccional persistente después de una ruptura, en lugar de una reversión esperada, lo que puede provocar que se desencadene un stop loss. La solución es optimizar los parámetros de retracción o agregar un filtro de tendencia adicional.
Sensibilidad de los parámetrosEl rendimiento de la estrategia es sensible a los ajustes de parámetros (como el período de retracción, el multiplicador ATR y el mínimo RSI). Se recomienda ajustar los parámetros óptimos para diferentes mercados y marcos de tiempo mediante la retroalimentación.
Dependencia del entorno de mercado: Esta estrategia funciona mejor en mercados convulsionados, y puede generar señales erróneas frecuentes en mercados de fuerte tendencia. Se puede considerar agregar un componente de identificación de tendencias para evitar este riesgo.
Cantidad de rendimiento anormalEn ciertos mercados o días especiales de negociación, el volumen de transacciones puede ser anormal debido a factores extraordinarios (por ejemplo, días festivos, anuncios de políticas) que afectan la calidad de la señal. Se puede considerar el uso de volumen de transacciones relativo o ajustar el volumen de transacciones en multiplicadores.
Riesgo de deslizamiento: En eventos de alta volatilidad, el precio de ejecución real puede diferir significativamente del precio de entrada teórico. Se recomienda considerar medidas adicionales de protección de puntos de deslizamiento en las operaciones en vivo.
Basados en el análisis del código, las siguientes son algunas posibles direcciones de optimización:
Añadir filtro de tendenciasIntroducir componentes de reconocimiento de tendencias (como promedios móviles, indicadores ADX, etc.) y entrar en la bolsa solo cuando la dirección de la tendencia coincide con la señal de entrada, evitando invertir en una tendencia fuerte.
Ajuste de parámetros dinámicosIntroducción de un mecanismo de adaptación que ajuste automáticamente el período de retroceso y el multiplicador de ATR según la volatilidad del mercado, lo que permite que las estrategias se adapten mejor a las diferentes condiciones del mercado.
Mejor análisis del volumen de transaccionesSe puede considerar el uso de la tasa de cambio de la transacción relativa o el análisis de la trayectoria de la transacción, en lugar de una simple comparación del promedio de la transacción, para obtener una confirmación de la transacción más precisa.
El filtro del tiempoAumentar los filtros de tiempo de negociación para evitar los horarios de apertura y cierre de mercados con fluctuaciones anormales o la publicación de datos económicos específicos.
Análisis de marcos de tiempo múltiples: Integración de análisis de la estructura del mercado en los marcos de tiempo más altos, buscando oportunidades de negociación solo cerca de las zonas de soporte y resistencia en los marcos de tiempo más altos.
Optimización de las estrategias de contenciónSe puede considerar la implementación de una estrategia de parada por etapas, moviendo el stop loss al precio de costo después de alcanzar cierta ganancia, para lograr operaciones sin riesgo.
Aprendizaje automático: Aprender los patrones de barrido de fluidez histórica mediante la introducción de algoritmos de aprendizaje automático para optimizar la selección de parámetros y el proceso de generación de señales.
La estrategia de cuantificación de la limpieza de liquidez dinámica de múltiples niveles es un sistema de negociación cuidadosamente diseñado para capturar los comportamientos de caza de pérdidas comunes en los mercados. Combinando brechas de precios, indicadores RSI y análisis de volumen de transacción, la estrategia es capaz de identificar efectivamente las brechas falsas y entrar en juego cuando los precios se invierten. El sistema de gestión de riesgo dinámico de la estrategia se basa en el indicador ATR y se adapta a diferentes condiciones de fluctuación del mercado.
Si bien la estrategia funciona bien en mercados convulsos, puede enfrentar desafíos en entornos de fuerte tendencia. La estabilidad y la rentabilidad de la estrategia se pueden mejorar aún más mediante el aumento de filtros de tendencia, la optimización de la configuración de los parámetros y la mejora del análisis de la transacción.
En general, se trata de una estrategia de negociación con una sólida base teórica y práctica, adecuada para inversores a medio y largo plazo y operadores de día en una variedad de entornos de mercado. Con la optimización continua y la gestión adecuada del riesgo, la estrategia tiene el potencial de ser una herramienta poderosa en la cartera de operaciones.
/*backtest
start: 2024-06-30 00:00:00
end: 2025-01-31 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Liquidity Sweep Strategy v2 - Fixed Close Labels", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === INPUTS ===
lookback = input.int(20, title="Lookback for High/Low Sweep")
atrMult = input.float(1.5, title="ATR Multiplier for TP/SL")
volumeMult = input.float(1.5, title="Volume Spike Multiplier")
rsiPeriod = input.int(14, title="RSI Period")
rsiOB = input.int(60, title="RSI Overbought")
rsiOS = input.int(40, title="RSI Oversold")
// === CALCULATIONS ===
highestHigh = ta.highest(high, lookback)
lowestLow = ta.lowest(low, lookback)
sweepHigh = high > highestHigh[1]
sweepLow = low < lowestLow[1]
volMA = ta.sma(volume, 20)
volSpike = volume > volMA * volumeMult
rsi = ta.rsi(close, rsiPeriod)
atr = ta.atr(14)
longSL = low - atr * atrMult
longTP = close + atr * atrMult
shortSL = high + atr * atrMult
shortTP = close - atr * atrMult
// === ENTRY CONDITIONS ===
longEntry = sweepLow and rsi < rsiOS and volSpike
shortEntry = sweepHigh and rsi > rsiOB and volSpike
// === STRATEGY EXECUTION ===
if (longEntry)
strategy.entry("Long", strategy.long)
strategy.exit("Long TP/SL", from_entry="Long", stop=longSL, limit=longTP)
label.new(bar_index, low, "🟢 BUY", style=label.style_label_up, textcolor=color.white, color=color.green, size=size.small)
if (shortEntry)
strategy.entry("Short", strategy.short)
strategy.exit("Short TP/SL", from_entry="Short", stop=shortSL, limit=shortTP)
label.new(bar_index, high, "🔴 SELL", style=label.style_label_down, textcolor=color.white, color=color.red, size=size.small)
// === EXIT LABELS USING POSITION TRACKING ===
var float previous_position = na
position_closed = (strategy.position_size == 0 and previous_position != 0)
if position_closed and previous_position > 0
label.new(bar_index, high, "🟩 SELL CLOSE", style=label.style_label_down, textcolor=color.white, color=color.green, size=size.small)
if position_closed and previous_position < 0
label.new(bar_index, low, "🟥 BUY CLOSE", style=label.style_label_up, textcolor=color.white, color=color.red, size=size.small)
previous_position := strategy.position_size