Подключение к API интерактивных брокеров через Python

Я ищу, чтобы подключить Python к API интерактивных брокеров. Поиск в google показывает наличие ibPy (см. https://pypi.python.org/pypi/ib) однако, похоже, эта библиотека не поддерживается и не поддерживает Python 3. Я также нашел https://github.com/colin1alexander/IbPython3 однако проект с тех пор был снят.

Я знаю, что Quantopian использует интерактивных брокеров в качестве агента выполнения, но имеет python front-end для алгоритмических стратегий. Мне интересно знать, как они этого добиваются? В более широком смысле, однако, у кого-нибудь есть рекомендуемые ресурсы/идеи о том, как подключить python к интерактивным брокерам? Заранее спасибо

3 ответов


Update

IB теперь (февраль 2017) официальный Python SDK (aka API). Он поддерживает только Python 3 (Используйте IbPy, если Python 2 является обязательным)

поддерживает API версии 9.72 и выше.


на нашла новый дом под https://github.com/blampe/IbPy (и, видимо, новый владелец с это)

как вы можете видеть в README, версия API поддерживается 9.70. Текущая версия IB API-9.72, но существующая ibpy работает как шарм с текущими версиями TWS (952 stable, 954 latest по состоянию на январь-2015) и соответствующим API 9.72.

если использовать Python 3, я бы поставил большую часть акцента в байты против unicode тема, потому что строки, переданные в API (согласно моему опыту), должны быть байтами (обычно я делаю Python 2 с from будущее... unicode_literals)

примеры, приведенные с ibpy работа распределения из коробки.

Edit:

я добавил несколько рабочих образцов в другие ответы:

они использовать Queue чтобы сделать его полным рабочим примером (та же концепция может быть применена для доставки исторических или данных в реальном времени), которые доставляют то, что требуется (или соответствующую ошибку)


Interactive Brokers теперь имеет официальный API Python (beta 9.73) скачать. Для этого требуется Python 3.1+.

посмотреть docs.


Interactive Brokers провели вебинар в ноябре. 10 2016 О реализации Algo Trading, закодированной в Python с использованием API интерактивных брокеров. Ведущий дал хорошее объяснение о применимости IBridgePy, который является открытым исходным кодом программного обеспечения, используемого для подключения к Interactive Brokers C++ API для выполнения кодов python на живых рынках.

вебинар был записан, так что вы можете слушать его в любое время вы хотите. Ссылка на вебинар здесь: https://www.interactivebrokers.com/en/index.php?f=2227 На странице IB классифицирует свои вебинары по нескольким темам: TWS, торговля, API и т. д. После того, как вы нажмете вкладку "API", вы увидите все вебинары об API. IBridgePy работает как автономный квантопиан, и это намного проще, чем IBpy. IBridgePy можно найти здесь www.IBridgePy.com