Strasmore Research
Educación Matt ConnorPor Matt Connor

¿Cuándo se publica el informe COT?

La CFTC publica el informe COT cada viernes a las 3:30 p. m. ET, con datos del cierre del martes. Consulta el calendario, el desfase de tres días y su lectura.

El informe Commitments of Traders, o informe COT, se publica cada viernes a las 3:30 p. m., hora del Este, por la U.S. Commodity Futures Trading Commission. Cuenta las posiciones al cierre de operaciones del martes anterior. Entre la medición y la publicación transcurren tres días. Ese desfase, junto con un umbral de reporte que solo incluye a los operadores más grandes, define qué puede decir con rigor este archivo semanal gratuito.

¿Cuándo se publica cada semana el informe COT?

El viernes a las 3:30 p. m., hora del Este. La propia autoridad reguladora lo publica. La página de Commitments of Traders de la CFTC ofrece los archivos sin costo, en tablas que se pueden consultar y como texto descargable.

Dos detalles del calendario importan más que la hora:

  • La fecha de los datos es el martes, no el viernes. Cada cifra del archivo del viernes describe cómo estaban las posiciones al cierre de operaciones del martes.
  • Los feriados federales modifican la fecha de publicación. Un feriado dentro de la semana de reporte retrasa la publicación uno o dos días. La CFTC publica un calendario con la fecha efectiva de cada semana. La regla del viernes se mantiene en una semana normal, pero cambia durante las semanas con feriados federales.

Ese mismo martes también aparece en más de un archivo: una versión que solo incluye futuros y otra que combina opciones y futuros. En esta última, las posiciones en opciones se convierten a una base equivalente en futuros mediante factores delta proporcionados por las bolsas. Cuando dos personas citan cifras distintas para el mismo mercado en el mismo día, a menudo están consultando versiones diferentes.

¿Por qué el informe COT tiene tres días de antigüedad cuando se consulta?

El desfase entre la medición y la publicación es lo más importante que debe conocerse sobre los datos de posicionamiento. Las operaciones que hayan realizado los operadores más grandes el miércoles, el jueves o el viernes por la mañana no aparecen en el archivo publicado a las 3:30. Para dimensionar ese punto ciego, los paneles aquí miden ETFs que siguen los mercados cubiertos por el COT: acciones, bonos del Tesoro, metales y energía. Los fondos no son contratos de futuros. Funcionan como una referencia razonable de cuánto pueden desplazarse estos mercados en tres días.

ConsultaDistancia recorrida por siete mercados entre el cierre del martes y las 3:30 p. m. ET del viernes, ago. 2024 a jul. 2026
El SQL exacto detrás de cada cifra
WITH raw AS (
    SELECT ticker,
           toTimeZone(window_start, 'America/New_York') AS et,
           close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ', 'TLT', 'GLD', 'SLV', 'USO', 'UNG')
      AND window_start >= toDateTime('2024-08-01 00:00:00')
      AND window_start < toDateTime('2026-08-01 00:00:00')
),
bars AS (
    SELECT ticker,
           toDate(et) AS session_date,
           toDayOfWeek(et) AS day_of_week,
           toHour(et) * 60 + toMinute(et) AS minute_of_day,
           close
    FROM raw
    WHERE toDayOfWeek(et) IN (2, 5)
      AND (toHour(et) * 60 + toMinute(et)) BETWEEN 570 AND 959
),
tuesday_snapshot AS (
    SELECT ticker,
           toMonday(session_date) AS week_start,
           argMax(close, minute_of_day) AS tuesday_close
    FROM bars
    WHERE day_of_week = 2
    GROUP BY ticker, week_start
),
friday_release AS (
    SELECT ticker,
           toMonday(session_date) AS week_start,
           argMax(close, minute_of_day) AS friday_1530
    FROM bars
    WHERE day_of_week = 5
      AND minute_of_day BETWEEN 900 AND 930
    GROUP BY ticker, week_start
)
SELECT t.ticker AS ticker,
       count() AS weeks_counted,
       round(quantileDeterministic(0.5)(abs(toFloat64(f.friday_1530) / toFloat64(t.tuesday_close) - 1) * 100,
                                        cityHash64(toString(t.week_start))), 2) AS median_abs_move_pct,
       round(quantileDeterministic(0.9)(abs(toFloat64(f.friday_1530) / toFloat64(t.tuesday_close) - 1) * 100,
                                        cityHash64(toString(t.week_start))), 2) AS p90_abs_move_pct,
       round(100 * countIf(abs(toFloat64(f.friday_1530) / toFloat64(t.tuesday_close) - 1) * 100 >= 2) / count(), 1) AS pct_weeks_over_2pct
FROM tuesday_snapshot AS t
INNER JOIN friday_release AS f
        ON t.ticker = f.ticker AND t.week_start = f.week_start
GROUP BY t.ticker
ORDER BY median_abs_move_pct DESC
Run this yourself

Durante dos años de semanas con reporte, la distancia mediana entre el cierre del martes y el print de las 3:30 p. m. del viernes fue de 2.97% en UNG y de 0.66% en TLT, medida durante 97 semanas. La mitad de las semanas quedó por debajo de esas medianas. La cola de la distribución es lo que vuelve obsoleta una medición del martes: una de cada diez semanas registró un movimiento de 8.68% o más en UNG, y 68% de las semanas superó el dos por ciento.

Un mercado, observado semana a semana, muestra cuán irregular puede ser ese desfase.

ConsultaSPY: movimiento entre el cierre del martes y las 3:30 p. m. ET del viernes, semana a semana, ago. 2025 a jul. 2026
El SQL exacto detrás de cada cifra
WITH raw AS (
    SELECT toTimeZone(window_start, 'America/New_York') AS et,
           close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2025-08-01 00:00:00')
      AND window_start < toDateTime('2026-08-01 00:00:00')
),
bars AS (
    SELECT toDate(et) AS session_date,
           toDayOfWeek(et) AS day_of_week,
           toHour(et) * 60 + toMinute(et) AS minute_of_day,
           close
    FROM raw
    WHERE toDayOfWeek(et) IN (2, 5)
      AND (toHour(et) * 60 + toMinute(et)) BETWEEN 570 AND 959
),
tuesday_snapshot AS (
    SELECT toMonday(session_date) AS week_start,
           argMax(close, minute_of_day) AS tuesday_close
    FROM bars
    WHERE day_of_week = 2
    GROUP BY week_start
),
friday_release AS (
    SELECT toMonday(session_date) AS week_start,
           max(session_date) AS friday_date,
           argMax(close, minute_of_day) AS friday_1530
    FROM bars
    WHERE day_of_week = 5
      AND minute_of_day BETWEEN 900 AND 930
    GROUP BY week_start
)
SELECT f.friday_date AS week,
       formatDateTime(f.friday_date, '%b %e, %Y') AS friday_label,
       round((toFloat64(f.friday_1530) / toFloat64(t.tuesday_close) - 1) * 100, 2) AS change_pct,
       round(abs(toFloat64(f.friday_1530) / toFloat64(t.tuesday_close) - 1) * 100, 2) AS abs_change_pct
FROM tuesday_snapshot AS t
INNER JOIN friday_release AS f ON t.week_start = f.week_start
ORDER BY week
Run this yourself

Durante las 48 semanas con reporte del año terminado el 31 de julio de 2026, la primera semana del gráfico, que terminó el Aug 8, 2025, registró un desfase de 1.45%. La última, que terminó el Jul 31, 2026, registró 0.86%. En algunas semanas, el archivo está casi actualizado. En otras, describe un mercado que ya se movió. Nada de lo que aparece en el archivo indica en cuál de esas semanas se encuentra el lector. El interés en corto presenta un problema similar, pero con un calendario más largo: cuándo se publica el interés en corto recorre ese calendario, y por qué el interés en corto tiene dos semanas de antigüedad explica el desfase.

¿Qué ocurre a las 3:30 p. m. de un viernes?

El archivo llega media hora antes del cierre del mercado accionario estadounidense, a las 4:00 p. m., hora del Este. Así se distribuye la negociación de una sesión completa del viernes a lo largo del día, en intervalos de quince minutos.

ConsultaDónde se concentra el volumen del viernes: SPY, intervalos de 15 minutos, sesiones completas de los viernes del último año
El SQL exacto detrás de cada cifra
WITH raw AS (
    SELECT toTimeZone(window_start, 'America/New_York') AS et,
           volume
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2025-08-01 00:00:00')
      AND window_start < toDateTime('2026-08-01 00:00:00')
),
bars AS (
    SELECT toDate(et) AS session_date,
           toHour(et) * 60 + toMinute(et) AS minute_of_day,
           intDiv((toHour(et) * 60 + toMinute(et)) - 570, 15) AS bucket,
           volume AS shares
    FROM raw
    WHERE toDayOfWeek(et) = 5
      AND (toHour(et) * 60 + toMinute(et)) BETWEEN 570 AND 959
),
full_sessions AS (
    SELECT session_date
    FROM bars
    GROUP BY session_date
    HAVING sumIf(shares, minute_of_day >= 930) >= 0.05 * sum(shares)
)
SELECT formatDateTime(toDateTime(toDate('2026-01-02')) + (570 + b.bucket * 15) * 60, '%H:%i') AS et_time,
       round(100 * sum(b.shares) / sum(sum(b.shares)) OVER (), 2) AS share_of_session_pct,
       round(sum(b.shares) / uniqExact(b.session_date) / 1000000, 2) AS avg_volume_millions
FROM bars AS b
INNER JOIN full_sessions AS s ON b.session_date = s.session_date
GROUP BY b.bucket
ORDER BY b.bucket
Run this yourself

El volumen de una sesión estadounidense tiene forma de sonrisa. El primer cuarto de hora concentra 6.98% de las acciones negociadas del día. El intervalo de las 12:00 se reduce a 2.72%, y el último cuarto de hora de negociación continua concentra 13.17%. El intervalo de las 15:30, en el que se publica el informe, representa 4.92%. La publicación llega durante el repunte de cierre del último día de la semana de negociación. Eso es un hecho del calendario, no una afirmación sobre las operaciones que aparecen en el archivo.

¿Cuál informe COT corresponde a Legacy, Disaggregated o TFF?

Cuatro informes llevan el nombre COT y distribuyen de distinta manera el mismo open interest del martes.

  • Legacy divide cada mercado en posiciones comerciales, no comerciales y no reportables. Es el formato más antiguo y al que la mayoría se refiere cuando habla del «informe COT».
  • Supplemental cubre 13 commodities agrícolas y separa a los operadores de índices como una categoría propia.
  • Disaggregated cubre mercados de commodities físicas, desde agricultura y petróleo hasta gas natural, electricidad y metales. Utiliza cuatro categorías: productor/comerciante/procesador/usuario, swap dealers, managed money y otros reportables.
  • Traders in Financial Futures, el informe TFF, cubre contratos financieros, incluidas divisas, valores del Tesoro, índices bursátiles y volatilidad. Sus categorías son dealer/intermediario del lado vendedor; y asset manager/institucional, fondos apalancados y otros reportables del lado comprador.

Cuando un titular dice que los hedge funds mantienen su mayor posición corta en petróleo crudo en años, la serie subyacente suele ser managed money en el informe disaggregated. La misma frase sobre el S&P 500 se refiere a los fondos apalancados en el TFF. Las etiquetas no son intercambiables.

¿Quién aparece realmente en el informe COT?

Los operadores grandes, y nadie más. Los miembros compensadores, los futures commission merchants y los brokers extranjeros presentan reportes diarios sobre cada operador cuya posición alcanza o supera el nivel de reporte establecido por la regulación de la CFTC. Un mercado aparece en el COT solo cuando 20 o más operadores mantienen posiciones en esos niveles. Las posiciones reportables suelen cubrir entre 70% y 90% del open interest de un mercado. El resto aparece en una sola línea no reportable, sin categoría ni número de operadores asociado.

Las categorías son ocupaciones declaradas, no estrategias. Un operador comercial, o productor/comerciante/procesador/usuario, es una empresa cuya actividad se cubre mediante la posición en futuros, según lo declarado en su formulario CFTC Form 40. Managed money es capital especulativo agrupado: asesores, operadores de pools y fondos que negocian por cuenta de sus clientes. Un elevador de granos que cubre inventario y un fondo que toma una posición ante un movimiento del precio pueden mantener contratos idénticos en columnas opuestas. El informe indica quién mantiene una posición. Nunca indica por qué.

Dos formas de interpretar mal el informe COT

Una posición neta larga récord no es una herramienta de timing. Una posición neta es una cifra construida a partir de dos datos: posiciones largas menos posiciones cortas, en contratos, dentro de una sola categoría. Una lectura récord indica que la exposición de esa categoría se encontraba en un extremo en la fecha del martes. No informa cuándo, ni siquiera si, esa exposición se reducirá. Los indicadores de posicionamiento de la multitud tienen esta misma limitación en distintas clases de activos: el put/call ratio y los datos de interés en corto de FINRA describen una posición que ya fue tomada.

El número bruto de contratos no permite comparar productos. Una tabla COT cuenta contratos, y un contrato representa una cantidad de algo. Un contrato de oro del COMEX cubre 100 onzas troy. Un contrato de petróleo crudo del NYMEX cubre 1,000 barriles. Ordenar los mercados por número de contratos equivale a ordenarlos según definiciones de unidades que las bolsas establecieron hace décadas. La misma lógica se aplica a las acciones, donde la unidad es la acción.

ConsultaUnidades frente a dólares: siete fondos que siguen los mercados cubiertos por el COT, julio de 2026
El SQL exacto detrás de cada cifra
WITH raw AS (
    SELECT ticker,
           toTimeZone(window_start, 'America/New_York') AS et,
           close,
           volume
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'QQQ', 'TLT', 'GLD', 'SLV', 'USO', 'UNG')
      AND window_start >= toDateTime('2026-07-01 00:00:00')
      AND window_start < toDateTime('2026-08-01 00:00:00')
),
rth AS (
    SELECT ticker,
           volume AS shares,
           toFloat64(close) * volume AS dollars
    FROM raw
    WHERE (toHour(et) * 60 + toMinute(et)) BETWEEN 570 AND 959
)
SELECT ticker,
       round(sum(dollars) / sum(shares), 2) AS unit_size_usd,
       round(100 * sum(shares) / sum(sum(shares)) OVER (), 2) AS share_of_units_pct,
       round(100 * sum(dollars) / sum(sum(dollars)) OVER (), 2) AS share_of_dollars_pct
FROM rth
GROUP BY ticker
ORDER BY unit_size_usd DESC
Run this yourself

Una unidad de SPY cambió de manos a un promedio de $744.99 en julio de 2026, frente a $10.52 por una unidad de UNG. Mil unidades de cada uno no representan la misma cantidad de dinero. En los siete fondos, SPY concentró 31.75% de las unidades negociadas y 50.07% de los dólares. Por su parte, UNG concentró 5.41% de las unidades y 0.12% de los dólares. La proporción de unidades equivale a la proporción de dólares solo cuando todas las unidades cuestan lo mismo. Compare el posicionamiento dentro de un mismo mercado a lo largo del tiempo o convierta los contratos a valor nocional antes de ordenar cualquier mercado.

Preguntas frecuentes sobre el informe COT

¿A qué hora se publica el informe COT?

El viernes a las 3:30 p. m., hora del Este, en el sitio web de la CFTC. Las posiciones se miden al cierre de operaciones del martes anterior, por lo que el archivo tiene tres días de antigüedad cuando se publica. Un feriado federal dentro de la semana de reporte retrasa la publicación uno o dos días.

¿El informe COT es gratuito?

Sí. La CFTC lo publica sin costo, en tablas que se pueden consultar y en archivos descargables. Los productos comerciales de posicionamiento vuelven a empaquetar los mismos datos públicos con gráficos e historial.

¿Cuál es la diferencia entre los informes COT legacy y disaggregated?

Legacy divide un mercado en posiciones comerciales, no comerciales y no reportables. Disaggregated divide los mercados de commodities físicas en productor/comerciante/procesador/usuario, swap dealers, managed money y otros reportables. Los mercados financieros reciben un tratamiento paralelo en el informe Traders in Financial Futures.

¿El informe COT muestra la posición de cada operador?

No. Cuenta a los operadores que alcanzan o superan los niveles de reporte de la CFTC. Eso suele cubrir entre 70% y 90% del open interest de un mercado. Además, un mercado solo se publica cuando 20 o más operadores se encuentran en esos niveles. Todos los que están por debajo del umbral se agrupan en una única línea no reportable y anónima.

¿Puede el informe COT predecir los movimientos de los precios?

Es un censo de posiciones con un desfase de tres días, no un pronóstico. Registra dónde estaban los operadores grandes el martes. Una lectura extrema no indica cuándo terminará esa posición.


Cada número de esta página proviene de una consulta almacenada sobre el historial de precios y volumen a nivel de minuto, con el SQL disponible debajo de cada panel. El archivo COT sigue donde siempre ha estado: gratuito, cada viernes a las 3:30. Ejecute los mismos paneles sobre los mercados que sigue en la terminal de Strasmore.

#cot report#cftc#positioning#futures#release schedule