1

我正在尝试这个新的 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 设置的快照;

在此处输入图像描述

4

4 回答 4

4

我找到了自己问题的答案。问题是 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 脚本现在可以正常运行,没有错误。

于 2018-01-28T12:50:01.093 回答
2

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

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

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

于 2018-11-29T20:44:00.243 回答
1

这是当 Python 解释器找不到模块时发生的一般错误,因为它没有在 PYTHONPATH 环境变量中列出。一种选择是将 ibapi 模块安装为 Wheel。或者,如果您使用的是 PyCharm 等 IDE,您只需右键单击 IDE 项目目录中的 pythonclient 文件夹,然后选择“将目录标记为源”。这在录制的 IBKR Python API 网络研讨会中有所提及。

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

于 2019-03-20T23:34:14.697 回答
1

对于 Windows 10:可能截至 2022 年 2 月,上述选项均无效。请尝试以下方法:

import sys
sys.path.append("C:\\TWS_API\\source\\pythonclient")
import ibapi

TWS API 安装在此文件夹中:c:\TWS_API

于 2022-02-20T22:53:35.670 回答