11

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

我知道 Quantopian 使用 Interactive Brokers 作为他们的执行代理,但有一个用于算法策略的 Python 前端。我有兴趣知道他们是如何实现这一目标的?然而,更广泛地说,是否有人对如何将 python 连接到交互式代理有任何推荐的资源/见解?

4

3 回答 3

11

Update

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

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


该项目在https://github.com/blampe/IbPyibpy下找到了一个新家(显然是它的新主人)

正如您在自述文件中看到的,支持的 API 版本是 9.70。当前的 IB API 版本是 9.72,但现有ibpy的 TWS 版本(952 稳定版,954 最新版本截至 2015 年 1 月)和相应的 9.72 API 就像一个魅力。

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

随分发提供的示例ibpy开箱即用。

编辑:

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

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

于 2016-01-12T09:50:37.920 回答
5

盈透证券现在有官方 Python API(beta 9.73)下载。它需要 Python 3.1+。

请参阅文档

于 2017-01-30T14:37:03.227 回答
0

除了官方 IB 的网络研讨会。有以下在线研讨会和 Github。

Udemy: https ://www.udemy.com/python-algo-trading-with-interactive-brokers/

Github: https ://github.com/anthonyng2/ib

内容比较全面,涵盖了如何使用python 3.x:

  1. 提取账户和投资组合信息
  2. 下订单
  3. 请求市场数据
  4. 获取历史数据
  5. 访问市场深度信息
  6. 下载实时条
  7. 提取执行信息,包括佣金报告
于 2018-11-10T11:45:25.460 回答