python - 通过 Python 连接到 Interactive Brokers API

标签 python api interactive-brokers

我希望将 Python 连接到 Interactive Brokers API。谷歌搜索揭示了 ibPy 的可用性(参见 https://pypi.python.org/pypi/ib ),但是这个库似乎没有维护也不支持 Python 3。我还发现了 https://github.com/colin1alexander/IbPython3然而,该项目已被取消。

我知道 Quantopian 使用 Interactive Brokers 作为他们的执行代理,但有一个用于算法策略的 python 前端。我很想知道他们是如何做到这一点的?更广泛地说,有没有人对如何将 python 连接到交互式代理有任何推荐的资源/见解?

最佳答案

更新

IB 现在(2017 年 2 月)有一个官方的 Python SDK(又名 API)。它仅支持 Python 3(如果必须使用 Python 2,请使用 IbPy)

支持 API 版本 9.72 及更高版本。


ibpy 项目在 https://github.com/blampe/IbPy 下找到了一个新家(显然还有一个新主人)

正如您在 README 中看到的那样,支持的 API 版本是 9.70。当前 IB API 版本为 9.72,但现有的 ibpy 与当前版本的 TWS(952 稳定版,截至 2015 年 1 月最新版 954)和相应的 9.72 API 配合得很好。

如果使用 Python 3,我会将大部分重点放在 bytes vs unicode 主题中,因为传递到 API 的字符串(根据我的经验)必须是字节(我通常使用 Python 2来自 future ...... unicode_literals)

ibpy 发行版一起提供的示例开箱即用。

编辑:

我在其他答案中添加了几个工作示例:

他们使用 Queue 使其成为一个完整的工作示例(可以应用相同的概念来传递历史或实时数据),传递所请求的内容(或相应的错误)

关于python - 通过 Python 连接到 Interactive Brokers API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34371311/

相关文章:

python - .findall() 可以匹配 python etree 中的多个值吗?

error-handling - 如何处理来自reqMktData调用的错误

python - 如何将 CRAFT 语料库中的 XML NER 数据转换为 spaCy 的 JSON 格式?

python - 使用用户数据库中的 Python 凭据进行安全登录

ios - 有没有办法通过 Apple 后端的一些 API 导出应用商店应用内支付?

javascript - Google Map API 可查找我住处附近的附近餐厅

java - 对于这种情况,是单例,工厂还是其他更好的东西?

python - 如何启用TWS延迟行情数据?

java - 自定义 Interactive Brokers 的 reqIds() 和 reqMktData() Java 方法

python - Nginx 服务 React 构建和 proxy_pass Django Rest api 服务器