Interactive Brokers (IB) permite conectarse con su software comercial Trader Workstation (TWS) a través de su API TWS.
Primero debe iniciar TWS en su computadora y dentro del menú de configuración debe habilitar el acceso a la API de TWS para su interfaz de red "localhost" (127.0.0.1) en el puerto 7496. Para operaciones en papel (cuenta de demostración/prueba), este es el puerto 7497. por defecto. Esto permite ejecutar scripts en la misma máquina en la que ejecuta TWS.
En lugar de IB TWS, también puede utilizar IB Gateway. Esto utiliza el puerto 4002 por defecto para operaciones en papel (cuenta de demostración/prueba) y 4001 para una cuenta activa/real/real.
Mira esto: https://interactivebrokers.github.io/tws-api/initial_setup.html.
Una vez que inicie los scripts que se conectan a su TWS, también podrá ver una nueva pestaña "API" en su TWS.
El software API TWS oficial de Interactive Brokers se puede encontrar en https://www.interactivebrokers.com/en/trading/ib-api.php.
Las discusiones sobre la API de TWS son mejores en https://groups.io/g/twsapi.
Consulte también las preguntas frecuentes en: https://dimon.ca/dmitrys-tws-api-faq/.
ib_async es otra API de Python para conectarse a su TWS con documentación en https://ib-api-reloaded.github.io/ib_async/api.html y discusiones en https://groups.io/g/insync. (Proyecto original en https://github.com/erdewit/ib_insync.)
Para instalar ib_async, primero instale python3 y luego ejecute:
pip3 instalar ib_async
Para actualizar ib_async más adelante, ejecute:
instalación de pip3 --actualizar ib_async
pandas es una útil biblioteca adicional de Python para análisis y manipulación de datos.
Instalar en Debian o Ubuntu Linux con:
sudo apt-get instalar python3-pandas
O puedes instalar a través de pip3:
pip3 instalar pandas
Para actualizaciones ejecute:
instalación de pip3 --actualizar pandas
Script de ejemplo que descarga datos históricos de acciones de todas las empresas de los índices DOW, SP500 y Nasdaq100.
Los datos se almacenan en el subdirectorio "datos" de forma predeterminada, así que cree este directorio antes de llamar a este script.
Consulte stock-hist-data-download.py.
Cómo actualizar la lista de índices del SP500 y Nasdaq100:
python3 stock-hist-data-download.py --list-index > TMPFILE diff -u stock-hist-data-download.py TMPFILE
Consulte también https://github.com/deltaray-io/ib_dl.
automatizar la ejecución de IB TWS: https://github.com/IbcAlpha/IBC
https://groups.io/g/ibcalpha
Temas de Github para mirar:
https://github.com/topics/interactive-brokers
https://github.com/topics/tws
https://github.com/topics/tws-api
https://github.com/topics/ib-api
https://github.com/topics/ibapi
Rubí IB: https://github.com/ib-ruby
https://github.com/andrey-zotov/ib_console
https://github.com/pavanmullapudy/InteractiveBrokers_TWS_API
https://github.com/pavanmullapudy/InteractiveBrokers_TWS_API/blob/master/futures%20and%20options/NIFTY%20ORB%20Trading%20System/tech_indicators.py
Un poco diferentes a la API de TWS son las consultas flexibles y su descarga/análisis.
Aquí algunos proyectos en torno a esto:
https://github.com/MikePia/structjour