Contenido del artículo

Evidencia y alcance

La documentación de la plataforma de negociación establece el significado de los campos; la investigación sobre flujo de órdenes aporta contexto. Ninguna de estas fuentes verifica la rentabilidad de los detectores de absorción o divergencia propuestos.

Datos y mercadosUn flujo de operaciones de un centro de negociación específico con una clasificación fiable de la parte agresiva. La profundidad de mercado sincronizada puede aportar contexto; OHLCV por sí solo no permite reconstruir el delta real de las operaciones.
Marcos temporales de investigaciónUna ventana de medición de 30 segundos y barras de confirmación de un minuto son ejemplos. Evalúe la granularidad y la latencia del flujo de datos que realmente tendrá disponibles la implementación.
El volumen alcanza 120 mientras el delta es−80; un candidato de absorción aún requiere una recuperación posterior del precio antes de una entrada larga.Abrir ilustración en tamaño completo
Delta y volumen total sintéticos por ventana. El eje principal representa el volumen de compras agresivas menos el de ventas agresivas, no el precio; las etiquetas de excursión y recuperación se refieren al ejemplo numérico.

Flujo de trabajo práctico

Flujo de trabajo de Absorción y divergencia del CVD: flujo agresivo con escaso avance del precio
Los pasos completos aparecen abajo. En cada etapa, se debe registrar el motivo de rechazo si faltan datos o no se cumplen las condiciones.
  1. Comprobar el flujo de datosVerifique el lado agresor, las unidades y los relojes.
  2. Medir hipótesis separadasCalcule la absorción o la divergencia del CVD sin fusionarlas.
  3. Esperar la confirmación del precioLa recuperación del nivel debe ocurrir después de que estén disponibles las características requeridas.
  4. Modelar la ejecución y la protecciónUse cotizaciones ejecutables, el spread y el extremo del evento.
  5. Validar fuera de muestraCompare con el comportamiento basado solo en precio y con pruebas de latencia adicional.

Dos observaciones diferentes

Toda transacción tiene un comprador y un vendedor. El delta asigna un signo según la parte agresiva que toma liquidez: volumen de compras agresivas menos volumen de ventas agresivas. El CVD acumula el delta desde un punto de reinicio definido. El campo S del flujo público de operaciones de Bybit indica el lado agresor [1]; un campo con el mismo nombre en un flujo de liquidaciones puede significar otra cosa.

Una hipótesis de absorción alcista describe ventas agresivas sustanciales acompañadas de un avance limitado a la baja. En esa situación, el CVD puede marcar un mínimo mucho más bajo. La divergencia alcista del CVD exige, en cambio, un mínimo de precio más bajo acompañado de un valor de CVD más alto en ese mínimo de precio. Las condiciones no son intercambiables y pueden contradecirse.

Las órdenes de compra que se reponen repetidamente aportan una observación sobre la liquidez visible, no sobre la identidad de sus participantes. Una cotización que desaparece puede reflejar una cancelación o una ejecución [2]. Use la expresión indicador indirecto de absorción y enumere las mediciones, en lugar de afirmar que una institución está defendiendo el precio.

Detectores separados para absorción y divergencia

Un indicador indirecto de absorción alcista propuesto opera cerca de un soporte S conocido de antemano. Durante W=30 segundos, el volumen de ventas debe superar el percentil 95 de observaciones anteriores del mismo intervalo horario, sell/(buy+sell) debe ser al menos 0.70 y la excursión a la baja del precio medio entre compra y venta, medida desde el inicio de la ventana, no debe superar 0.15 del ATR previo calculado en barras de un minuto. Exija un volumen total suficiente y un flujo de datos sin interrupciones. Estos umbrales son propuestas de investigación.

Después de detectar el indicador indirecto, espere hasta K=3 barras completas de un minuto a que se produzca un cierre por encima de S+buffer. Entre únicamente a una cotización disponible después de ese cierre; coloque la protección por debajo del mínimo de todo el evento menos el búfer. La versión bajista invierte las direcciones del flujo y del precio.

Para la divergencia, use dos mínimos de pivote del precio con left=right=2. Una vez confirmado el segundo, exija P2<P1−buffer y CVD(time_P2)>CVD(time_P1)+delta_min. Compare el CVD en las marcas de tiempo de los dos pivotes de precio, no en dos mínimos de CVD atractivos elegidos de forma independiente. Ambos puntos deben pertenecer a la misma ventana de reinicio. El segundo pivote solo puede utilizarse después de sus dos barras a la derecha.

La ventana de absorción y la ventana de recuperación también necesitan una regla que las vincule. Al activar el candidato, guarde el soporte original, el inicio del evento y su mínimo. No desplace repetidamente el punto de partida a la ventana más reciente de ventas intensas hasta que finalmente aparezca un rebote favorable.

Una operación sin clasificar o una interrupción del flujo de datos deja incompleto el CVD posterior, aunque ambos extremos contengan números. Marque el segmento acumulado como no disponible hasta un nuevo reinicio o una reconstrucción satisfactoria a partir de los datos recuperados. Compare pivotes únicamente cuando el flujo clasificado esté completo en todo el intervalo entre ellos. Un desplazamiento desconocido anterior a ambos pivotes puede cancelarse matemáticamente, pero eso exige un desplazamiento compartido e incrementos completos; esta especificación básica conservadora sigue exigiendo un segmento válido.

on_trade(tr):
  if tr.id in seen_ids: return
  if tr.taker_side not in {BUY,SELL} or not valid_size_and_feed(tr):
    mark_window_and_cumulative_segment_unavailable_until_reset_or_rebuild(); return
  seen_ids.add(tr.id)
  signed_size = (+1 if tr.taker_side == BUY else -1)*normalized_size(tr)
  delta_bucket += signed_size
  CVD += signed_size
on_window_close(t):
  if not full_window_and_prior_baseline_available(t): return
  absorption = near_frozen_support and total_size>=configured_minimum
  absorption &= sell_share>=0.7 and sell_size>past_p95
  absorption &= downward_excursion<=0.15*ATR_before_window
  if absorption and no_active_event:
    arm_reclaim_candidate(known_at=window_data_ready_at,expiry=fixed_deadline)
on_price_pivot_confirmation(p2,t):
  p1 = previous_confirmed_price_low(p2)
  if p1 is None or not same_cvd_reset(p1,p2): return
  if missing_cvd_at_either_pivot(p1,p2): return
  if not complete_classified_flow_between(p1.occurred_at,p2.occurred_at): return
  if not cumulative_segment_valid(p1,p2): return
  divergence = p2.price<p1.price-buffer and cvd_at(p2)>cvd_at(p1)+dmin
  if divergence and no_active_event:
    arm_candidate(known_at=received_confirmation_time(t))
# Unclassified trades never default to SELL; overlapping windows do not reset TTL.

Relojes, clasificación y unidades de volumen

Conserve la hora del evento, la hora de recepción, los identificadores de las operaciones y el estado de la conexión. Una aproximación basada en el color de las velas o en incrementos del precio es un estimador diferente; así debe denominarse. En particular, no puede distinguir de forma fiable las ventas intensas a partir de una serie de precios que permanece casi sin cambios. No cuente dos veces las operaciones individuales y su representación agregada.

Normalice el tamaño a una unidad fija. El CVD basado en monedas y el basado en valor nocional pueden comportarse de forma diferente cuando el precio cambia sustancialmente. Los contratos inversos requieren su propia especificación de cantidad, en lugar de una conversión universal de tamaño por precio. Las líneas base de percentiles deben excluir la ventana de medición actual.

El CVD describe el flujo agresivo ya ejecutado. La investigación sobre OFI motiva considerar también los eventos de cotización [3], pero agregar L2 no identifica al propietario de una orden iceberg. Una estadística de reposición de órdenes de compra puede ser útil cerca de S, aunque la agrupación de actualizaciones y la liquidez oculta la hacen incompleta. Conserve esa distinción en el nombre de la característica y en la declaración sobre la evidencia.

Ejemplos sintéticos: ganancia por absorción y pérdida por divergencia

Sea S=100, con un ATR=2 previo y buffer=0.10. En 30 segundos, el volumen de compras es 20 y el de ventas 100, lo que produce delta−80 y una proporción de ventas de 83.3%. El percentil histórico del volumen de ventas es 70. El precio medio entre compra y venta cae de 100.10 a un mínimo de 99.85: una excursión de 0.25, inferior al límite de 0.30. Esto cumple los criterios del indicador indirecto de absorción, aunque el CVD esté cayendo con fuerza.

La barra siguiente cierra en 100.20. Una compra a 100.25, con stop en 99.75 y objetivo en 101.25, tiene un riesgo de 0.50 y un beneficio potencial de 1.00, o 2R antes de costos. Si la cotización disponible ya está en 100.60, el beneficio potencial hasta ese objetivo fijo cae a 0.65, mientras que el riesgo sube a 0.85. Una regla de relación mínima entre beneficio potencial y riesgo, definida de antemano, puede rechazar la entrada; el backtest no puede conservar la ejecución a 100.25 que ya no está disponible.

En un caso fallido de divergencia distinto, los mínimos del precio son 100 y 99.50, con CVD−500 y−420 dentro de una misma sesión. Tras la confirmación y la recuperación del nivel, una compra se ejecuta a 100.15 con stop en 99.40. El precio sigue bajando y la protección se ejecuta a 99.35, con una pérdida de 0.80. La divergencia no impidió que desaparecieran las órdenes de compra pasivas ni que llegara una nueva oleada de ventas.

La confirmación del precio y la ejecución siguen siendo importantes

El mismo indicador indirecto puede persistir durante muchas ventanas mientras el precio sigue bajando. Agrupe las ventanas superpuestas en un evento y especifique una sola entrada o una política con un número finito de reentradas. Cancele al vencer el plazo, ante datos desactualizados, un spread excesivo o una ruptura adicional predeterminada antes de la confirmación.

Una orden limitada pasiva destinada a mejorar la entrada es distinta de comprar tras la recuperación del nivel. La baja probabilidad de ejecución y la selección adversa pueden consumir la ventaja aparente de un mejor precio. La reproducción histórica debe comprobar la liquidez disponible cuando la orden llega al mercado, no solo un toque histórico del precio de la última operación.

Un objetivo fijo en R, un objetivo VWAP conocido y un objetivo estructural son salidas diferentes. Una operación de la mañana no puede utilizar el VWAP final de la sesión. Incluya comisiones, deslizamiento y financiamiento si el contrato se mantiene abierto durante el momento en que se cobra este último.

Mida cuánto rebote ocurre mientras se espera la confirmación del pivote. Una divergencia visualmente convincente puede llegar tarde desde el punto de vista económico. Informe como oportunidades perdidas los candidatos cuyo objetivo ya se había alcanzado antes de la señal, en lugar de tratar el rebote anterior como una ganancia disponible para la estrategia confirmada.

Medir el valor adicional del delta

Use como control una recuperación del nivel basada solo en precio, con las mismas referencias, horarios y volatilidad. Compare absorción sola, divergencia sola y su combinación. Agregar condiciones no mejora necesariamente los rendimientos. Informe cuántos candidatos se confirman y consiguen una ejecución, no solo la tasa de aciertos de las operaciones finalmente seleccionadas.

Someta el sistema a pruebas con latencia adicional, por ejemplo 100–500ms cuando sea pertinente para el sistema previsto, y analice por separado los intervalos de desconexión. Esos retrasos son pruebas propuestas, no supuestos universales. Si un solo spread elimina el resultado, describa esa fragilidad.

Evalúe cada centro de negociación por separado para distinguir el flujo local de una señal transferible. El reinicio del CVD, el retraso de los pivotes, los eventos superpuestos y la estimación de percentiles pueden cambiar los resultados más que la apariencia del gráfico. Lleve un control de versiones del preprocesamiento y mantenga visibles las marcas de datos insuficientes.

Las pruebas unitarias deben incluir ventanas sin volumen, ausencia del lado agresor, identificadores de operaciones duplicados, un reinicio entre pivotes y operaciones retrasadas que llegan después del cierre de una ventana. Estos casos comprueban la interpretación económica de la característica, no solo que una suma aritmética se ejecute sin errores.

Errores frecuentes

Fusionar los mecanismos

La absorción puede coincidir con un nuevo mínimo del CVD; exigir divergencia puede excluir el fenómeno que se busca detectar.

Tratar un centro de negociación como si fuera todo el mercado

Otro centro de negociación puede tener un flujo agresivo diferente o contrario.

Llamar ventas a toda reducción del volumen cotizado

El volumen visible puede desaparecer por cancelaciones; para obtener el delta de operaciones agresivas se necesitan datos de operaciones ejecutadas.

Lista de verificación antes de usar este método

Marca cada punto después de verificarlo con tus datos. El progreso se guarda en este navegador; no certifica que la estrategia sea rentable.

0/7 puntos

Preguntas frecuentes

¿Un volumen alto y una mecha larga bastan para demostrar absorción?

Solo constituyen un indicador indirecto más débil basado en OHLCV. Esta definición exige un flujo agresivo clasificado y una medición del avance del precio.

¿La divergencia del CVD puede disparar una operación inmediata?

Es una característica, no un sistema de trading completo. Este artículo espera un disparador causal de precio y especifica la entrada por separado.

Fuentes de investigación

Cada fuente respalda la definición o evidencia descrita a su lado. El pseudocódigo, los ejemplos sintéticos y los parámetros propuestos requieren una validación independiente.

  1. Public TradeBybit. Se leyeron los campos de lado agresor, hora de la operación e identificador; es documentación de datos, no una estrategia. Verificado el: .
  2. OrderbookBybit. Se consultaron el volumen visible, las instantáneas y actualizaciones delta, y las limitaciones del libro público. Verificado el: .
  3. The price impact of order book eventsCont, Kukanov and Stoikov. Se leyó la investigación sobre flujo y cotizaciones; no evalúa estos detectores de absorción/CVD. Verificado el: .

Métodos relacionados

Nota de riesgo

Este contenido sirve para la educación y el diseño de investigaciones; no constituye asesoría financiera. Backtest simula datos históricos, no garantiza resultados futuros y no ejecuta operaciones reales. Los métodos de esta biblioteca no son necesariamente funciones disponibles en la aplicación. Consulta la metodología y el centro de aprendizaje.

Valida las reglas antes de arriesgar capital real

Revisa la compatibilidad de la aplicación, los datos y cada operación simulada; los detectores avanzados pueden requerir una implementación independiente.

Descarga Backtest en App Store