APIs de Datos Financieros

Estamos asistiendo en los últimos meses a un boom en el terreno de las APIs de datos financieros. En este artículo analizamos algunas APIs de datos financieros para que podáis compararlas e incorporarlas en vuestros desarrollos y estrategias de trading. Claro que, antes de meterse en tecnicismos varios, supongo que habrá que explicar en condiciones…

¿Qué Demonios es una API?

El término API es la abreviatura de Application Programming Interface, que traducido al idioma de Cervantes significa “interfaz de programación de aplicaciones”. Vale, dicho así, no nos resuelve tampoco el enigma, así que expliquémoslo de forma un poco más campechana: se trata de un conjunto de definiciones y protocolos que se utiliza para desarrollar e integrar el software de las aplicaciones, permitiendo (y aquí viene lo interesante) la comunicación entre dos aplicaciones de software a través de un conjunto de reglas.

Vamos, que mediante una API vamos a poder interconectar dos aplicaciones distintas, pudiendo comunicarse e interactuar entre sí. El ejemplo más evidente de una API en acción son los sistemas de pago: a nadie que monta una tienda online se le ocurre construir un sistema de cobros bancarios desde cero, lo normal es que se conecte a la API de, por ejemplo, PayPal. Por supuesto, el acceso a la API dependerá de si es público, privado o abierto solo a partners.

Y aquí es donde se pone se pone interesante el tema para nosotros, los traders: hasta relativamente hace poco, resultaba complicado hacerse con bases de datos financieros de alta calidad. Sin embargo, la aparición en escena de APIs como las que veremos a continuación ha permitido que pasemos a un paradigma de democratización de los datos financieros, en el que es posible en algunos casos conseguir datos no solo históricos sino incluso en tiempo real, y alimentar nuestros desarrollos, aplicaciones, etc.

Para remate, algunas de ellas permiten obtener no solo datos de mercado, sino también datos fundamentales y económicos de diversa índole, con los que es posible realizar virtualmente cualquier análisis que se nos pase por la cabeza a partir de esa información.

Dicho esto, y sin más preámbulos, pasamos a ver algunas de esas APIs. Ya os adelanto que, probablemente, al ritmo que evolucionan las cosas en este terreno, ni serán todas las que están, ni estarán todas las que son.

 

10 APIs de Datos Financieros Interesantes (+Bonus Track)

 

1. Finnhub.io

finnhub

Creada en 2019 y con sede en Panamá, el objetivo de Finnhub es democratizar el acceso a datos financieros. Como curiosidad, nuestro buen amigo Paduel está desarrollando un cliente en Python para esta API denominado fhub.

  • Mercados: mercados estadounidenses (incluyendo ETFs e índices), Forex y criptodivisas, cada uno con una API dedicada.
  • Históricos: acceso hasta a 35 años de datos en ticks, datos intradía y fin de día del mercado estadounidense.
  • Otros datos: tenemos acceso a datos fundamentales de las compañías (perfil, cuentas, precios objetivos de los analistas, recomendaciones, noticias, etc.), así como a transcripciones de las conferencias de resultados, sentimiento de mercado o datos de fusiones y adquisiciones.
  • Tipo de API: REST y Websocket
  • Librerías para Python: finnhub-python, fhub
  • Librerías para R: -
  • Precio: gratuito si realizamos como máximo 60 llamadas a la API por minuto, aunque tendremos ciertas limitaciones en la longitud de los históricos (máx. 1 año) y en algunos de los apartados a los que podemos acceder. Si queremos más potencia y mayor longitud de los históricos, tocará pasar por caja y pagar 500 dólares al mes, con el compromiso de estar un año suscritos.
  • Más info: https://finnhub.io/

 

 

2. Tiingo

tiingo

Fundada en 2014, esta compañía estadounidense nace con la filosofía de que todo aquel que proporciona educación sobre el dinero, tiene una responsabilidad similar a la de un monje con este mundo. Por ello, Tiingo proporciona herramientas para que la gente pueda obtener dinero, considerando además que el dinero no es intrínsecamente malo, sino neutral, por lo que cuando elegimos hacer el bien con él, nos lleva a una rentabilidad salvaje. ¡Casi nada!

  • Mercados: mercados de acciones estadounidenses (incluyendo ETFs y fondos de inversión) y chinos.
  • Históricos: acceso hasta a 30 años de datos intradía y fin de día en tiempo real. También es posible acceder a datos en ticks de la Investors Exchange (IEX).
  • Otros datos: acceso a datos fundamentales de la compañías estadounidenses y chinas.
  • Tipo de API: REST y Firehose para los ticks de IEX.
  • Librerías para Python: tiingo
  • Librerías para R: riingo
  • Precio: gratuito si realizamos como máximo 500 llamadas a la API por hora. Asimismo, podemos consultar 500 símbolos únicos por mes. Si queremos ampliar la capacidad y acceder a más datos, el precio es bastante asequible: 10$ al mes.
  • Más info: https://www.tiingo.com/

 

3. Marketstack

marketstack

Inicialmente conocida como Worldtradingdata, Marketstack nació en 2018 con el objetivo de ofrecer una alternativa a Yahoo! Finance. Posiblemente esta compañía ofrece la base de datos más completa si estamos interesados en mercados de acciones. Actualmente compañías como Amazon, Revolut o Credit Suisse usan los servicios de Marketstack.

  • Mercados: acceso a 72 mercados de acciones internacionales, incluyendo los principales mercados estadounidenses, europeos y asiáticos, lo que supone obtener información de más de 130.000 símbolos.
  • Históricos: acceso hasta a 30 años de datos intradía y fin de día en tiempo real.
  • Otros datos: -
  • Tipo de API: REST
  • Librerías para Python: -
  • Librerías para R: -
  • Precio: gratuito para 1.000 llamadas a la API por mes, aunque solo tendremos acceso a 1 año de históricos de datos a fin de día. Para conseguir ampliar las llamadas a la API, así como datos intradía, históricos de índices, y la posibilidad de realizar un uso comercial de los datos suministrados, toca pagar, aunque partimos desde los 9.99$ mensuales del plan básico.
  • Más info: https://marketstack.com/

 

4. IEX Cloud

iex cloud

¿Quién no conoce la Investors Exchange (IEX)? Se trata ni más ni menos del conocido mercado de acciones surgido en 2014 como respuesta a las dudosas prácticas de la industria del trading de alta frecuencia y cuyos orígenes se relatan en el excelente Flash Boys de Michael Lewis. En mayo de 2019 IEX lanzó su propia API de datos financieros.

  • Mercados: acceso a los principales mercados estadounidenses, incluyendo ETFs, fondos de inversión y valores OTC. Asimismo proporciona acceso a algunos mercados de acciones europeos y asiáticos, así como a datos de Forex, algunas commodities y criptodivisas.
  • Históricos: acceso hasta a 20 años fin de día y hasta 30 días de datos intradía (solo en timeframe de 1 minuto). Retraso de 15 minutos en las cotizaciones.
  • Otros datos: perfiles de las compañías, fundamentales (balances, informes de beneficios, etc.), recomendaciones de analistas, datos precalculados de indicadores, dividendos, splits, datos económicos, etc.
  • Tipo de API: REST y Streaming SSE.
  • Librerías para Python: iexfinance
  • Librerías para R: Riex
  • Precio: el plan gratuito está limitado a 50.000 mensajes al mes (ojo, no es lo mismo que llamadas a la API) con acceso limitado a algunos datos de los mercados estadounidenses. Existen diferentes planes, partiendo desde los 9$ al mes.
  • Más info: https://iexcloud.io/

 

5. EOD Historical Data

eodhistdata

EOD Historical Data es sin duda uno de los veteranos en esto de los históricos de datos financieros. Disponen de más de 15 proveedores con los que componen sus bases de datos.

  • Mercados: acceso a más de 60 Bolsas de todo el mundo, así como a bonos, Forex y criptodivisas.
  • Históricos: acceso a más de 30 años fin de día. Datos intradía en timeframe de 15 minutos actualizados a fin de día.
  • Otros datos: perfiles de las compañías, fundamentales (balances, informes de beneficios, etc.), recomendaciones de analistas, datos precalculados de indicadores, dividendos, splits, datos económicos, etc.
  • Tipo de API: REST
  • Librerías para Python: -
  • Librerías para R: -
  • Precio: no existe plan gratuito. Los precios para datos fin de día parten desde los 19.99 €, dando acceso a 100.000 peticiones diarias a la API.
  • Más info: https://eodhistoricaldata.com/

 

6. Barchart On Demand

barchart ondemand

Otro de los clásicos en esto de proporcionar datos de mercado es, sin lugar a duda, Barchart que lleva online desde 1995.

  • Mercados: acceso a datos de mercados estadounidenses, incluyendo futuros, así como Forex y criptodivisas.
  • Históricos: acceso a más de 30 años fin de día, en algunos casos también tick a tick.
  • Otros datos: perfiles de las compañías y fundamentales (balances, informes de beneficios, etc.)
  • Tipo de API: REST.
  • Librerías para Python: -
  • Librerías para R: -
  • Precio: existe un plan gratuito de prueba que permite 150 llamadas diarias a la API.
  • Más info: https://www.barchart.com/ondemand

 

7. Quandl

quandl

Creada en 2013 y comprada por Nasdaq en 2018, en Quandl encontramos un concepto innovador en esto de las APIs de datos financieros y es que se trata de un marketplace para proveedores de datos, por lo podemos ofrecer nuestras propias bases de datos y monetizarlas.

  • Mercados: prácticamente cualquier base de datos que podamos imaginar.
  • Históricos: depende del proveedor.
  • Otros datos: multitud de datos fundamentales, estimaciones, acciones corporativas, sentimiento, indicadores técnicos precalculados, datos económicos, etc. Adicionalmente cuenta con Alternative Data, un servicio para institucionales que ofrece bases de datos exclusivas, generadas por la economía digital.
  • Tipo de API: REST y Websocket.
  • Librerías para Python: Quandl
  • Librerías para R: Quandl
  • Precio: depende del proveedor, aunque muchas bases de datos son gratuitas.
  • Más info: https://www.quandl.com/

 

8. Intrinio

intrinio

Fundada en 2018, Intrinio nos permite encontrar el proveedor de datos que se ajuste a nuestras necesidades (tienen unos 300), estando especializados sobre todo en el mercado estadounidense, aunque ofrece datos para otros muchos mercados. Recientemente ha introducido el acceso a datos filtrados de opciones en tiempo real.

  • Mercados: acciones, ETFs y opciones estadounidenses. También algunos mercados internacionales, bonos, Forex y criptodivisas.
  • Históricos: depende del proveedor.
  • Otros datos: datos fundamentales, registros de la SEC, noticias, estimaciones, acciones corporativas, sentimiento, etc.
  • Tipo de API: REST.
  • Librerías para Python: Intrinio Python-SDK
  • Librerías para R: Intrinio R-SDK
  • Precio: consultar (ofrecen prueba gratuita bajo demanda).
  • Más info: https://intrinio.com/

 

9. Alpha Vantage

alpha vantage

Respaldada por el acelerador de startups, Y Combinator, y con acuerdos con la London Stock Exchange, Binance o Google, Alpha Vantage es posiblemente una de las mejores opciones en este terreno por cuanto ofrece datos para multitud de Bolsas de forma gratuita.

  • Mercados: todos los mercados de acciones internacionales (excepto los nórdicos, la Bolsa de Tokio y la Bolsa india). También Forex y criptodivisas.
  • Históricos: más de 20 años a fin de día. Tres semanas de datos intradía de mercados estadounidenses.
  • Otros datos: 50 indicadores técnicos precalculados.
  • Tipo de API: REST.
  • Librerías para Python: Alpha_Vantage
  • Librerías para R: Alphavantager
  • Precio: gratuito para 500 llamadas diarias a la API. En caso de necesitar más llamadas, los precios empiezan desde los 29.99$ para las 30 llamadas por minuto.
  • Más info: https://www.alphavantage.co/

 

10. Polygon.io

Polygon.io

Polygon.io es una de las últimas compañías en meterse en el campo de batalla de las APIs pero entra con fuerza. De aperitivo, solo os dire que Google, Revolut y Alpaca usan sus servicios, por algo será.

  • Mercados: mercados de acciones estadounidenses, Forex y criptodivisas.
  • Históricos: hasta 15 años. Ofrece datos tick a tick.
  • Otros datos: -
  • Tipo de API: REST, WebSocket.
  • Librerías para Python: Polygon.io
  • Librerías para R: -
  • Precio: gratuito para 5 llamadas por minuto a la API, pudiendo consultar hasta 2 años de datos históricos con resolución de 1 minuto. En caso de necesitar llamadas ilimitadas a la API, más histórico o datos en tiempo real, los precios empiezan en los 99$/mes.
  • Más info: https://polygon.io/

 

Bonus Track: Tick Data

tickdata


Para los que no lo sepan, el legendario proveedor de datos Tick Data también cuenta con su propia API, denominada TickAPI. La calidad de los datos es excelente pero a cambio ya sabemos que lo bueno cuesta, así que aquí nos cobran directamente por el uso de los datos. Por ejemplo, consultar 3 años de datos tick a tick de 20 acciones viene a costar unos 1.600 dólares. A cambio, sabemos que no va a haber ni un fallo en los datos (¡ay de ellos como los haya!) y que tenemos acceso a datos de virtualmente casi cualquier producto y mercado financiero del mundo. Por si os interesara, podéis encontrar más información en https://tickapi.tickdata.com/

 

Conclusión

Tras realizar esta recopilación de información, tengo la sensación de que, ya con la versión gratuita de estas APIs, será suficiente para muchos usuarios para poder realizar sus primeros pinitos en el mundo quant y programarse análisis estadísticos, estrategias, etc, sobre todo con aquellas APIs que tengan librerías para Python y R (ojo, y aunque no exista la librería, es posible hacer un Request GET de datos directamente desde Python en muchos casos).

Por supuesto, si queremos más potencia, más funcionalidades y/o más datos, tocará pasar por caja pero los precios no son para nada descabellados, sobre todo si los comparamos con lo que puede costar obtener datos de servicios profesionales como Bloomberg o Reuters.

Así pues, bienvenidas sean estas APIs de datos financieros :)

 

Saludos,
X-Trader



Si te ha gustado este articulo, ¡compártelo en redes!