Brókers y herramientas

Flex Query de Interactive Brokers paso a paso: conecta IBKR con tu diario y tu Renta sin errores

Crea la Flex Query de Interactive Brokers y el token del Flex Web Service: secciones, límite de 365 días y qué hacer con los errores 1012, 1015 o 1019.

Por el equipo de The Trader Journal11 min de lectura

Ilustración de la conexión con Interactive Brokers: una Flex Query con las secciones Trades y Cash Transactions, un token que caduca en un año y un Query ID que llevan las operaciones al diario de trading y al informe de la Renta.
En este artículo
  1. 01Qué es una Flex Query de Interactive Brokers
  2. 02Paso 1: crea la Activity Flex Query
  3. 03Paso 2: activa el Flex Web Service y genera el token
  4. 04Paso 3: el límite de 365 días y los años anteriores
  5. 05Errores del Flex Web Service y cómo resolverlos
  6. 06Cómo funciona la sincronización con IBKR en The Trader Journal

Si operas con Interactive Brokers (IBKR) y quieres llevar tus operaciones a un diario de trading, a una hoja de cálculo o a una herramienta para la Renta si declaras en España, tarde o temprano te toca crear una Flex Query de Interactive Brokers. Es la forma más completa de sacar tu historial: cada ejecución con su hora, su comisión, su ISIN y un identificador único.

El problema es que la configuración tiene una docena de opciones, y basta una mal puesta para que la importación salga vacía o deje de funcionar a las pocas horas. Aquí tienes cada paso, los valores que funcionan y qué significa cada error del Flex Web Service, según la documentación oficial de IBKR (los nombres de los menús están en inglés, como en el portal).

Qué es una Flex Query de Interactive Brokers

IBKR ofrece dos formas de sacar tus datos: los extractos (Statements), con un formato fijo, y las Flex Queries, en las que eliges qué secciones y qué campos quieres. Para un diario o para la Renta conviene la segunda, porque puede incluir el ISIN de cada valor y el Transaction ID de cada ejecución: un identificador único con el que una herramienta sabe qué operaciones ya importó y no las duplica.

Hay dos tipos de Flex Query: la Activity Flex Query, con la actividad de la cuenta (operaciones, dividendos, movimientos), y la Trade Confirmation Flex Query, con las confirmaciones de operaciones. Esta guía usa la primera, que es la que sirve para el diario y para la Renta.

Y se puede usar de dos maneras: ejecutarla a mano y descargar el fichero, o dejar que una herramienta la pida sola cada día a través del Flex Web Service, con un token y el número de la query (el Query ID).

Paso 1: crea la Activity Flex Query

  1. Entra en el portal de IBKR (Client Portal) y ve a Performance & Reports → Flex Queries (en español, Rendimiento e informes → Consultas Flex). También está en Menu → Reporting → Flex Queries.
  2. En el panel Activity Flex Query, pulsa +.
  3. Ponle un nombre que reconozcas, por ejemplo «Diario y Renta».
  4. Elige las secciones de la tabla de abajo. Al pulsar cada una se abre la lista de campos: marca los que indicamos (o «Select All») y guarda.
  5. Rellena la configuración de entrega y la general con los valores de la segunda tabla.
  6. Pulsa Continue, revisa el resumen y pulsa Create. Tienes cada pantalla en la guía oficial para crear una Activity Flex Query (se abre en una pestaña nueva).

Las secciones que necesitas

SecciónQué contieneDiarioRenta
Trades (nivel «Executions»)Cada compra y cada venta, ejecución a ejecuciónSíSí
Cash TransactionsDividendos y retenciones en origen, intereses y otras comisionesNoSí
Corporate ActionsSplits, fusiones, escisiones y otros eventos de las empresasNoSí
TransfersPosiciones que entran o salen desde otro bróker o cuentaNoSí
Account InformationNúmero de cuenta y divisa baseOpcionalOpcional
Financial Instrument InformationDatos de cada instrumento, como el ISIN y el multiplicadorOpcionalOpcional
Secciones de la Activity Flex Query y para qué sirve cada una.

En Trades, elige el nivel de detalle Executions (no Symbol Summary ni Orders): cada ejecución por separado, con su hora y su comisión. Deja fuera secciones como Cash Report, NAV o los resúmenes de rendimiento: la importación no las necesita.

Los campos que no pueden faltar

  • Symbol e ISIN: identifican el valor. Para la Renta, el ISIN es la clave: el FIFO se aplica por valor homogéneo, es decir, por ISIN.
  • Asset Class y Multiplier: distinguen acciones, opciones y cambios de divisa, y aplican el ×100 de la mayoría de opciones sobre acciones. Sin Asset Class, un cambio de EUR a USD puede confundirse con una operación.
  • Date/Time y Trade Date: la fecha y la hora de cada ejecución. Con la hora real puedes analizar a qué horas ganas y a qué horas pierdes.
  • Buy/Sell, Quantity, Trade Price y Currency: qué hiciste, cuánto, a qué precio y en qué divisa.
  • IB Commission y IB Commission Currency: lo que pagaste en cada ejecución. Sin ellas no puedes saber si tu trading cubre sus costes.
  • Open/Close Indicator: dice si una ejecución abre o cierra una posición.
  • Transaction ID: el identificador único de cada ejecución, el que evita duplicados.

En Cash Transactions, Corporate Actions y Transfers, lo más sencillo es «Select All»: incluyen el tipo de movimiento, el importe, la divisa, la fecha y el ISIN, que es lo que usa el cálculo de la Renta.

Configuración de entrega y general

OpciónValorPor qué
FormatCSVEs el que lee The Trader Journal. Si otra herramienta pide XML, sigue sus instrucciones.
Include header and trailer records?YesAñade filas de inicio y fin con el número de cuenta.
Include column headers?YesSin cabeceras no se sabe qué es cada columna.
Display single column header row?NoCada sección conserva su propia cabecera.
Include section code and line descriptor?NoCon códigos de sección, el importador del diario no reconoce las operaciones.
PeriodLast 365 Calendar DaysUn año completo, el máximo que admite cada petición.
Date Format / Time FormatyyyyMMdd / HHmmssSin ambigüedad entre día y mes.
Date/Time Separator; (punto y coma)Nunca «No separator»: la fecha y la hora quedarían pegadas.
Include Canceled Trades?NoUna operación cancelada no llegó a existir.
Display Account Alias in Place of Account ID?NoEl número de cuenta no cambia; un alias, sí.
Valores que funcionan para importar la Flex Query en un diario o una herramienta fiscal.
Esquema de la configuración recomendada. Secciones: Trades con nivel Executions, Cash Transactions, Corporate Actions y Transfers, y como opcionales Account Information y Financial Instrument Information. Ajustes: formato CSV, cabeceras activadas y sin códigos de sección, periodo Last 365 Calendar Days, fecha yyyyMMdd, hora HHmmss y separador punto y coma. Token con caducidad de un año en lugar de las 6 horas por defecto.
Una sola Activity Flex Query sirve para el diario y para la Renta. Toca la imagen para ampliarla.

Paso 2: activa el Flex Web Service y genera el token

Si solo vas a descargar el fichero a mano, puedes saltarte este paso. Para que una herramienta pida tu informe sola, necesitas dos datos: un token y el Query ID.

  1. En la página de Flex Queries, abre Flex Web Service Configuration.
  2. Marca la casilla Flex Web Service Status y pulsa Save.
  3. Pulsa Generate New Token. En la lista Should Expire After, elige 1 año.
  4. Deja vacío el campo Valid For IP Address.
  5. Copia el token que aparece en Current Token Details y guárdalo como guardarías una contraseña.
  6. Para el Query ID, vuelve a la lista de Flex Queries y pulsa el icono de información (ⓘ) junto a tu query: es un número.

Sobre la IP: si limitas el token a una dirección, solo funcionará desde ella. Una herramienta en la nube hace las peticiones desde sus propios servidores, no desde tu casa, así que recibirá el error 1013 («IP restriction»). Si dejas el campo vacío, IBKR no aplica ninguna restricción de IP.

El token solo sirve para pedir tus informes Flex: no permite operar ni mover dinero. Aun así, no lo compartas y genera uno nuevo si crees que alguien lo ha visto.

Paso 3: el límite de 365 días y los años anteriores

Cada petición de una Flex Query cubre como máximo 365 días. Cuando una herramienta pide unas fechas concretas al Flex Web Service (los parámetros fd y td, en formato AAAAMMDD), entre la fecha inicial y la final no puede haber más de 365 días, según IBKR (se abre en una pestaña nueva); y en la configuración, el periodo de un año es «Last 365 Calendar Days».

Para traer todo tu historial, pide un fichero por año natural: ejecuta la query con un rango de fechas personalizado (Custom Date Range) del 1 de enero al 31 de diciembre de cada año, desde el año en que abriste la cuenta.

Para la Renta, el historial importa aunque solo declares un año. El coste de lo que vendes puede estar en una compra de hace años (FIFO), y la regla de los dos meses mira también las compras de enero y febrero del año siguiente a la venta.

Cuenta abierta en 2021; quieres preparar la Renta 2025

  1. 01Pide cinco ficheros: 2021, 2022, 2023, 2024 y 2025, cada uno del 1 de enero al 31 de diciembre.
  2. 02Si vendiste con pérdidas en noviembre o diciembre de 2025, añade enero y febrero de 2026 para comprobar las recompras.

Así tienes todas las compras que FIFO puede necesitar y las recompras que activan la regla de los dos meses.

Un aviso: el informe de un bróker solo ve su propia cuenta y no puede aplicar el FIFO entre todos tus brókers que exige Hacienda. La Flex Query te da los datos en bruto; el cálculo lo explicamos en cómo declarar en la Renta las acciones y ETFs de un bróker extranjero. Esta guía no es asesoramiento fiscal.

Errores del Flex Web Service y cómo resolverlos

Cuando una herramienta pide tu informe y algo falla, IBKR responde con un código y un mensaje. Estos son los que más vas a ver, con el mensaje tal como aparece en la lista oficial de códigos de error de IBKR (se abre en una pestaña nueva):

CódigoMensaje de IBKRQué hacer
1012Token has expired.Genera un token nuevo con caducidad de 1 año y actualízalo en tu herramienta.
1015Token is invalid.Copia otra vez el token actual (Current Token Details), sin espacios al principio ni al final.
1013IP restriction.Genera el token con el campo «Valid For IP Address» vacío.
1014Query is invalid.Revisa el Query ID (icono ⓘ) y que la query siga existiendo en la misma cuenta que el token.
1010Legacy Flex Queries are no longer supported. Please convert over to Activity Flex.Crea una Activity Flex Query nueva y usa su Query ID.
1018Too many requests have been made from this token. Please try again shortly. Limited to one request per second, 10 requests per minute (per token).Espera un minuto. Si usas el mismo token en varias herramientas, comparten ese límite.
1019Statement generation in progress. Please try again shortly.Es normal: el informe se está generando. Espera unos segundos.
1001, 1004–1009, 1021Mensajes que terminan en «Please try again shortly» (servidor ocupado o datos aún no listos).Son temporales: vuelve a intentarlo en unos minutos.
1020Invalid request or unable to validate request.Si usas tu propio script, revisa los parámetros de la petición (t, q, v y, si los usas, fd y td).
Códigos de error del Flex Web Service (versión 3) y qué hacer con cada uno.
Esquema de los errores del Flex Web Service en dos grupos. Errores de configuración, que no se arreglan reintentando: 1010 query antigua, 1012 token caducado, 1013 restricción de IP, 1014 query no válida y 1015 token no válido. Errores temporales, que se arreglan esperando: 1019 informe en preparación, 1018 demasiadas peticiones, y 1001, 1004 a 1009 y 1021, servidor ocupado o datos no listos.
Si el error es de configuración, reintentar no sirve: hay que cambiar el token o la query. Si es temporal, basta con esperar. Toca la imagen para ampliarla.

Fallos sin código de error

  • La importación sale vacía. Comprueba que el formato es el que pide tu herramienta (CSV en The Trader Journal), que la sección Trades está incluida y que en el periodo hay operaciones.
  • Faltan operaciones antiguas. El periodo llega como mucho a 365 días: pide los años anteriores uno a uno.
  • Fechas raras o desordenadas. Suele ser un formato con día y mes ambiguos (dd/MM o MM/dd) o el separador «No separator»: vuelve a yyyyMMdd y a «;».
  • Ventas sin su compra. Si una posición se abrió antes del periodo pedido, el fichero trae el cierre pero no la apertura. Amplía el periodo o importa también el año anterior.

Cómo funciona la sincronización con IBKR en The Trader Journal

En The Trader Journal, la conexión se hace en la pestaña Brokers: pegas el token y el Query ID de tu Activity Flex Query (en CSV y con las secciones de arriba) y guardas. El token se guarda cifrado y no vuelve a mostrarse. Hay un segundo campo, «Query ID para sync diario», que es opcional. A partir de ahí:

  • Cada mañana, a partir de las 06:00 (hora de Madrid), la app pide a IBKR solo los días que faltan en tu Trade Log: desde el día siguiente a tu última operación importada de IBKR hasta ayer. Si no falta ninguno, ni siquiera llama a IBKR.
  • Si IBKR responde que está ocupado, lo vuelve a intentar cada 15 minutos durante la mañana, y a partir de las 10:00 hace una pasada más para recoger lo que no estuviera listo a primera hora. Las operaciones de hoy aparecen, por tanto, mañana por la mañana.
  • Las ejecuciones ya importadas se reconocen por su identificador de IBKR, así que no se duplican. Si una posición estaba abierta, se completa cuando llega su cierre, y se conservan el setup, el grado y las notas que hubieras escrito.
  • Además tienes tres botones: Sincronizar recientes (los días que faltan), Sincronizar todo (todo el periodo de tu query, para la primera carga) e Importar por CSV, el plan B si IBKR rechaza la petición (lo explicamos en cómo importar tus operaciones desde un CSV).

La misma conexión alimenta la pestaña Fiscalidad. Cada sincronización guarda también los dividendos y las retenciones (si la query incluye Cash Transactions), y en «Historial de IBKR por años» puedes pedir cada año natural, del 1 de enero al 31 de diciembre, del año en curso y de los seis anteriores, uno detrás de otro. Así, el informe fiscal parte de todas tus compras y ventas, no solo de las del último año.

Y con el historial importado, el diario hace el resto: cada operación con su hora real, su comisión y su resultado en R, lista para tu revisión semanal de trading. Si todavía no tienes ese hábito, empieza por cómo llevar un diario de trading que de verdad mejore tus resultados.

Documentación oficial de Interactive Brokers (consultada el 24 y el 25/09/2026)

  1. IBKR Guides: crear una Activity Flex Query (secciones, formatos y periodos) (se abre en una pestaña nueva)
  2. IBKR Guides: configurar el Flex Web Service (token, caducidad, restricción de IP y fechas fd/td de hasta 365 días) (se abre en una pestaña nueva)
  3. IBKR Guides: códigos de error del Flex Web Service, versión 3 (se abre en una pestaña nueva)
  4. IBKR Guides: configuración de entrega y general de las Flex Queries (códigos de sección) (se abre en una pestaña nueva)
  5. IBKR Guides: Trade Confirmation Flex Queries (se abre en una pestaña nueva)

Sigue leyendo

Volver al blog