IBKR 量化交易入门踩坑(一)
本文最后更新于:2025年10月25日 凌晨
踩坑
在使用 IBKR API 进行量化交易的过程中,我遇到了一些问题,特此记录下来以备后续参考。
环境配置
安装IBKR Gateway
安装官网上ibkr gateway应用(此应用作为沟通程序与IBKR服务器的桥梁),并配置好API访问权限。不使用TWS的原因是TWS功能过于复杂,且资源占用较高,ui有一种上世纪的美感。
地址:https://www.interactivebrokers.com/cn/trading/ibgateway-latest.php

一些默认的配置
推荐开一个ibkr的模拟账户进行测试,同时开一个子用户购买数据订阅服务,以免影响主账户的正常使用。
安装python库环境
安装 ib_async
ib_async 是一个第三方对接IBKR API的python库,功能完善且易用。
安装ib_async库,注意不是ib_insync,ib_insync已经被停止维护弃用,文档地址已经指引到ib_async中。
官方文档:
考虑到这一点,用户应该知道,原始ib_insync包是使用旧版TWS API构建的,不再更新。希望使用受支持的 Trader Workstation 版本实现ib_insync结构的用户应迁移到 ib_async 包 ,该包是由其原始开发人员之一对该包进行现代化实现。
相关文档:
- https://ib-api-reloaded.github.io/ib_async/notebooks.html
- https://www.interactivebrokers.com/campus/ibkr-api-page/twsapi-doc/#non-tws-api-support
1 | |
安装官方api
部分应用可能需要安装官方api,这里提供官方api安装方法
盈透证券官方 API 仅通过其 Github 站点提供,而不是 Python 包索引 (PyPI),因为它是在不同的许可证下分发的。但是,您可以从提供的源代码构建一个轮子,然后安装轮子。这些是步骤:
1) 从 http://interactivebrokers.github.io/ 下载“API 最新” http://interactivebrokers.github.io/
2) 解压缩或安装(如果是.msi文件)下载。
3) 转到 tws-api/source/pythonclient/
4) 用以下方法建造一个轮子: python3 setup.py bdist_wheel
5) 安装:
python3 -m pip install –user –upgrade dist/ibapi-9.73.7-py3-none-any.whl
连接IBKR Gateway
使用ib_async连接IBKR Gateway,代码如下:
1 | |
注意:4002端口是IBKR Gateway的默认API端口,TWS的默认端口是7497。
端口可以在gateway的配置界面中查看和修改,clientId是用户自定义的一个标识符,可以随意设置,但同一时间只能有一个客户端使用同一个clientId连接到IBKR服务器,否则会导致连接失败。
常用api
等我研究研究
量化交易入门
量化交易的核心在于设计和实现一个有效的交易策略。
等我读一些文章再来写吧,我觉得对接api属于苦力活,难点还是在如何设计一个完善的交易策略上。这里简单的用tradeviewer的策略回测功能来验证一下交易策略的有效性。跑个demo策略。