你能帮我解决一个问题吗?我使用" pip install ib"为python https://pypi.python.org/pypi/ib安装了包ib(Interactive Broker)。它成功安装没有错误。但是,当我尝试导入ib时,它说"没有名为ib"的模块。我尝试下载源代码并执行python setup.py install,但也无法导入。
我尝试安装其他软件包,它们工作得很好。
你们有什么建议吗?
非常感谢。
P / S1。 非常感谢您的回答。我发现了原因。因此,不要将所有内容安装到文件夹ib中,以便我拥有:
/usr/local/lib/python2.7/site-packages/ib/ext
/usr/local/lib/python2.7/site-packages/ib/opt
安装程序以某种方式安装子文件夹ext并直接选择是两个单独的模块。所以现在我有:
/usr/local/lib/python2.7/site-packages/ext
/usr/local/lib/python2.7/site-packages/opt
我可以导入ext并导入opt。但现在问题是ext和opt中的方法是通过名称ib.ext.xxx相互调用的。有谁知道如何将这两个文件夹ext和opt组合在一起,名称为ib,并让python将ib识别为已安装的软件包?
谢谢。
答案 0 :(得分:4)
我无法让pip install ib
工作,因为你提到的原因除了它显然没有使用最新版本的IB的API。相反,我必须从https://github.com/blampe/IbPy
该版本的ibpy适用于最新版本的IB API(截至2014年7月)。我已成功使用它好几个月了。我所要做的就是在某处克隆ibpy,并从那里安装它:
git clone https://github.com/blampe/IbPy
cd IbPy
python setup.py install
安装完成后,python中的界面与Java API界面完全相同:IB API pdf
我发现查看IB API附带的TWS测试客户端Java代码很有用。
编辑:IB现在已经公开了他们自己的原生python API,所以如果你刚刚开始使用它可能会更有意义。该接口与ibpy Java包装器完全不同。
答案 1 :(得分:0)
要检查的一些事项 -
确保包名称实际上是ib。转到你的python / lib / site-packages目录,确保实际调用该文件夹。
确保您使用的是安装它的相同版本的Python。如果你将它安装在3.3中,然后尝试从2.7使用它,那就不行了。如果你不确定你使用的是哪种Python,请从前面跟随你的PATH变量 - 默认情况下首先运行。