安装IB API时遇到错误“需要IB API”

时间:2018-01-28 10:42:36

标签: python tws ib-api

我正在尝试这个新的python包ib_insync。

https://github.com/erdewit/ib_insync

我在下面运行了python脚本;

from ib_insync import *

ib = IB()
ib.connect('127.0.0.1', 7496, clientId=1)

contract = Forex('EURUSD')
bars = ib.reqHistoricalData(contract, endDateTime='', durationStr='30 D', barSizeSetting='1 hour', whatToShow='MIDPOINT', useRTH=True)

# convert to pandas dataframe:
df = util.df(bars)
print(df[['date', 'open', 'high', 'low', 'close']])

我遇到了错误IB API from http://interactivebrokers.github.io is required

我已经在C:\ TW_API文件夹下安装了IB API ver 9.73.06。我正在使用Windows 10和anaconda python v3.6。

以下是我的TWS API设置的快照;

enter image description here

3 个答案:

答案 0 :(得分:3)

我找到了自己问题的答案。问题是ib-api python模块没有安装到我正在使用的python版本中

C:\TW_API\source\pythonclient中找到了README.md 按照说明操作,我运行了以下命令;

$ python setup.py bdist_wheel
$ python -m pip install --user --upgrade dist/ibapi-9.73.6-py3-none-any.whl

我的python脚本现在正常运行而没有错误。

答案 1 :(得分:1)

安装TWS API后,找到文件夹“ TWS API”。在该文件夹中,找到名为“ source”的文件夹,然后找到名为“ pythonclient”的文件夹。

进入文件夹“ pythonclient”后,将其中的所有内容复制并粘贴到工作目录中。

您不应再遇到IB API from http://interactivebrokers.github.io is required错误。

答案 2 :(得分:0)

这是一个一般错误,当Python解释器无法找到模块时,因为该模块未在PYTHONPATH环境变量中列出,因此会发生此错误。一种选择是将ibapi模块安装为Wheel。或者,如果您使用的是诸如PyCharm之类的IDE,则可以右键单击IDE中项目目录中的pythonclient文件夹,然后选择“将目录标记为源”。 recorded IBKR Python API webinar中提到了这一点。

由于Python API程序依赖于特定版本的API,因此许多用户还喜欢使用虚拟环境(virtualenv)来组织特定于版本的代码依赖关系,而不是在全球范围内安装所有内容。