Cada viernes por la tarde, surge un pulso curioso en el mercado de futuros: los operadores analizan un discreto archivo gubernamental conocido como el informe de Compromiso de los Operadores (COT, por sus siglas en inglés). Publicado semanalmente por la CFTC, es uno de los pocos lugares donde los traders minoristas pueden echar un vistazo detrás del telón para ver qué está haciendo el “dinero inteligente“.
En este artículo, desglosaremos qué es el informe COT, por qué importa, cómo lo utilizan los operadores institucionales y cómo puedes aprovecharlo de forma programática con Python para construir estrategias de trading más informadas.
¿Qué es el informe de Compromiso de los Operadores?
El informe COT es una instantánea semanal de las posiciones abiertas mantenidas por grandes operadores en los mercados de futuros de EE. UU. Publicado cada viernes por la Comisión de Negociación de Futuros de Materias Primas (CFTC), muestra quién está largo, quién está corto y cómo han cambiado esas posiciones respecto a la semana anterior.
Las posiciones de cada martes son registradas y publicadas tres días después. Los datos revelan cómo están posicionadas las distintas clases de operadores en mercados clave como el oro, el petróleo, el maíz, los futuros del S&P 500 y las divisas.
Por qué importa el informe COT
El informe COT no te dice qué ocurrirá mañana. Pero sí te indica dónde se están acumulando extremos de posicionamiento. Y cuando todos se inclinan hacia un mismo lado —por ejemplo, los fondos de cobertura todos largos en petróleo crudo— es cuando el mercado tiende a sorprender.
Así es como los traders lo utilizan:
- Identificar extremos: Cuando los especuladores se encuentran en posiciones netas largas récord, suele ser señal de saturación del mercado.
- Seguir al dinero inteligente: Los operadores comerciales suelen comprar barato y vender caro. Si están inusualmente netos largos, podría indicar un suelo de mercado.
- Observar divergencias: Si el precio alcanza nuevos máximos pero las posiciones netas especulativas se quedan rezagadas, eso es una señal de alerta.
Si bien el informe COT es valioso, los operadores deben tener en cuenta sus limitaciones. En primer lugar, se publica con un retraso de 3 días respecto a la fecha de referencia; en mercados de movimiento rápido, las cosas pueden cambiar considerablemente en esos pocos días.
Pueden obtener más información sobre el COT en el siguiente artículo: El informe Commitment of Traders (COT)
A continuación vamos a mostrar como descargar los datos del COT, organizarlos y analizarlos de forma detallada mediante un código sencillo de Python. Este código pueden usarlo como una herramienta adicional para seguir las tendencias del “dinero inteligente” en el mercado real.
Descarga de datos COT con Python
Descarga directa desde el sitio web de la CFTC
Puedes obtener los datos desde el sitio oficial de la CFTC o a través de APIs como Nasdaq Data Link (Quandl). A continuación, un ejemplo rápido en Python para descargar los datos desagregados de futuros correspondientes a 2024:
import requests, zipfile, io
import pandas as pd
url = "https://www.cftc.gov/files/dea/history/fut_disagg_txt_2024.zip"
response = requests.get(url)
with zipfile.ZipFile(io.BytesIO(response.content)) as z:
fname = z.namelist()[0]
data = z.read(fname)
cot_df = pd.read_csv(io.BytesIO(data))
Uso de la API de la CFTC (PRE)
En lugar de descargar archivos completos, puedes consultar la API de datos de la CFTC para obtener segmentos específicos. La API PRE es esencialmente una interfaz RESTful hacia una base de datos. Cada formato del informe COT se identifica mediante un código.
La API permite filtrar por columnas. Por ejemplo, podrías recuperar todos los registros del Petróleo Crudo en 2023 en formato JSON o CSV mediante una URL de consulta apropiada. Según la CFTC, puedes buscar por campos como la fecha del informe, el nombre del producto básico, entre otros, y descargar los resultados en formatos como CSV o XML. Para utilizarla, normalmente se realiza una solicitud HTTP GET a una URL como:
https://publicreporting.cftc.gov/resource/.json?$where=Market_and_Exchange_Name='CRUDE OIL' AND As_of_Date >= '2023-01-01'
Uso de APIs o servicios de datos de terceros (Quandl/Nasdaq, Barchart, etc.)
Varios proveedores de datos financieros agregan los datos del COT y los ofrecen a través de sus APIs, frecuentemente con comodidades adicionales. Dos de los más destacados son Nasdaq Data Link (anteriormente Quandl) y Barchart.
Datos COT de Nasdaq Data Link (Quandl)
Nasdaq Data Link aloja los informes COT de la CFTC de forma estructurada (los catalogan como la base de datos de la CFTC). Proporcionan los datos de cada mercado como series temporales independientes y permiten realizar consultas a través de su API (que generalmente requiere una clave de API gratuita para un uso más intensivo).
Por ejemplo, en la plataforma de Nasdaq, cada mercado de futuros tiene un código único (generalmente un código de producto básico de cinco dígitos) y puedes solicitar series específicas como “Posiciones largas no comerciales” o “Posición neta comercial” para ese mercado. La API de Nasdaq Data Link admite descargas en formato CSV/JSON o el uso de su biblioteca de Python. Un uso típico podría verse así:
import nasdaqdatalink
nasdaqdatalink.ApiConfig.api_key = "Su clave API"
# Ejemplo: Obtener datos COT antiguos para el trigo de CBOT (código 001602, según CFTC)
data = nasdaqdatalink.get("CFTC/001602_FO_L_ALL")
En este código hipotético, “CFTC/001602_FO_L_ALL” podría representar los datos de la CFTC para el Trigo (código 001602), combinado de Futuros y Opciones (FO), posiciones largas, todos los operadores. (La codificación exacta de las series puede ser compleja: normalmente el conjunto de datos COT de Quandl utiliza un esquema que combina el código del producto básico, el tipo de informe y la categoría.
La documentación en el sitio de Nasdaq o la referencia de códigos de la CFTC pueden ayudar a formar el código correcto.). Nasdaq Data Link también ofrece una API de “tablas” donde puedes consultar por ticker y obtener múltiples campos a la vez. La ventaja de utilizar este servicio es que puede ahorrarte el paso de analizar archivos de gran tamaño.
API de Barchart
Barchart.com ofrece gráficos COT interactivos gratuitos en su sitio web y también cuenta con una API de datos financieros. Si tienes una suscripción a la API de Barchart, puedes obtener datos COT (disponen de endpoints para el compromiso de los operadores). Por ejemplo, la API de Barchart puede proporcionarte las últimas cifras COT para un símbolo específico (como su símbolo de producto básico para el maíz o el oro) en formato JSON. El uso exacto requiere una clave de API y consultar su documentación para los endpoints del COT.
Otras herramientas y bibliotecas
Existen bibliotecas desarrolladas por la comunidad (en Python y R) para el COT. Por ejemplo, el paquete de Python cot_reports (disponible en GitHub) automatiza la descarga de los archivos COT y su procesamiento en DataFrames de Pandas, lo que puede simplificar considerablemente el proceso.
De manera similar, algunas plataformas de trading (como TradingView, mencionada anteriormente) tienen acceso integrado a los datos COT mediante símbolos de ticker especiales, lo cual resulta útil para la elaboración de gráficos y el desarrollo de estrategias dentro de dichas plataformas.
De los datos al análisis: cómo utilizar los datos
Pongámonos prácticos. A continuación, se explica cómo puedes usar los datos COT para respaldar una estrategia de trading:
Calcular posiciones netas
Una de las herramientas más simples y efectivas es el posicionamiento neto:
net_spec = spec_long - spec_short net_commercial = commercial_long - commercial_short
Si los no comerciales tienen una posición neta muy larga, el sentimiento es alcista. Si los comerciales tienen una posición neta inusualmente larga, frecuentemente es señal de un suelo de mercado.
Normalización con un índice COT
Las posiciones netas brutas son útiles, pero carecen de contexto. Ahí es donde entra en juego el índice COT. Este coloca el posicionamiento en una escala de 0 a 100 en relación con su rango histórico.
cot_index = (net_position - min(net_position)) / (max(net_position) - min(net_position)) * 100
- ¿Por encima del 80%? El posicionamiento es extremadamente alcista.
- ¿Por debajo del 20%? Pesimismo extremo.
¿Comerciales al 90%? Están más largos de lo que han estado en años. Esa es una señal que vale la pena tener en cuenta.
Detectar divergencias
Si el precio alcanza un nuevo máximo, pero las posiciones de los especuladores no lo acompañan, algo no está bien. Estas divergencias suelen preceder a reversiones de tendencia.
Del mismo modo, si los precios están cayendo pero los comerciales están reduciendo sus posiciones cortas (o pasando a largos), puede sugerir que el valor fundamental está regresando.
Observar la tasa de cambio
No te limites a observar posiciones estáticas. Rastrea qué tan rápido están cambiando:
- Cambio en la posición neta a 4 semanas: revela cambios de momentum en el sentimiento.
- Comparaciones interanuales: descubren variaciones estacionales o macroeconómicas.
Las caídas repentinas en las posiciones largas especulativas suelen indicar pánico o capitulación, lo que potencialmente representa una buena entrada para los operadores contrarios.
Construir filtros de estrategia
- Seguimiento de tendencia + COT: solo tomar posiciones largas si los especuladores están incrementando sus largos.
- Configuraciones de reversión: buscar posiciones saturadas (por ejemplo, posición especulativa neta larga superior al 90%) para operar en contra.
- Confirmación fundamental: solo comprar caídas si los comerciales están reduciendo sus posiciones cortas.
Incluso puedes combinar esto con el análisis técnico:
si (cot_index < 20) y (RSI < 30):
print("Extrema tendencia bajista + sobreventa = atento a la reversión")
Reflexiones finales
El informe COT no es una bola de cristal. Pero sí es una de las pocas herramientas que tienen los traders minoristas para ver qué está haciendo el dinero grande. Usado con sabiduría, puede ayudarte a:
- Evitar operaciones saturadas
- Identificar puntos de inflexión
- Confirmar tus propias configuraciones
Piensa en él como el sentimiento de posicionamiento: como ver las cartas en la mesa de póker.
Usa el informe COT para leer el ambiente. Identifica cuándo los operadores se están inclinando demasiado hacia un lado. Y deja que eso informe —no dicte— tu ventaja.
Porque cuando el barco se llena demasiado, generalmente vuelca.














