在 Windows 上安装 TWS API
Windows 上安装 TWS API 时,重点不是“装完能打开一个界面”,而是确认源码、示例和语言接口文件已经落到正确目录。
- 打开官方下载页:Interactive Brokers API Software。
- 阅读并同意
TWS API Non-Commercial License。 - 在 Windows 区域选择需要的版本。
- 如果要使用 Python 示例,优先选择包含 Python API 的 Latest。
- 下载 MSI 安装包并运行。
- 安装完成后确认目录存在。官方示例常写
C:\TWS API,但真实路径以你安装时选择的位置为准。
set "API_ROOT=C:\TWS API"dir "%API_ROOT%"如果能看到 API_VersionNum.txt、source、samples,说明 API 包目录存在。
Python API 安装
Section titled “Python API 安装”官方旧示例会出现:
python setup.py install更推荐在 source\pythonclient 目录中使用本地源码安装:
set "API_ROOT=C:\TWS API"cd /d "%API_ROOT%\source\pythonclient"py -m pip install .这里的 pip install . 是安装已经下载的官方源码目录,不是从互联网下载第三方 ibapi 包。
安装后可以验证:
py -c "import ibapi; print(ibapi.__file__)"能打印出 ibapi 路径,就说明 Python 能找到这个包。
如果项目使用虚拟环境,建议在项目虚拟环境里安装:
set "PROJECT_DIR=C:\path\to\your-project"set "API_ROOT=C:\TWS API"cd /d "%PROJECT_DIR%".venv\Scripts\python.exe -m pip install "%API_ROOT%\source\pythonclient".venv\Scripts\python.exe -c "import ibapi; print(ibapi.__file__)"把 PROJECT_DIR 和 API_ROOT 改成自己的真实目录。这样可以避免系统 Python、IDE Python 和项目 Python 混在一起。
安装目录为什么重要
Section titled “安装目录为什么重要”官方文档提示,Windows 安装器默认会创建:
C:\TWS API\同时会复制一些 DLL 文件,供 DDE、ActiveX、C# 和 C++ API 使用。官方特别提醒,API 安装到 C: 盘更稳,否则某些 API 应用可能找不到关联文件。
如果你安装到了其他盘符或自定义目录,只要把命令里的 $ApiRoot 改成自己的实际目录即可。
对 Python 用户来说,只要 pip install . 指向正确的 source\pythonclient,API 包可以从自定义目录安装到运行脚本的 Python 环境。对 ActiveX、DDE、C#、C++ 示例工具来说,目录和 DLL 位置更容易影响运行结果,因此更要记录实际安装目录。
| 文件或目录 | 用途 |
|---|---|
API_ROOT\API_VersionNum.txt | 查看 API 包版本。 |
API_ROOT\source\pythonclient | Python API 源码目录。 |
API_ROOT\samples | 官方示例目录。 |
API_ROOT\samples\CSharp\IBSampleApp\bin\Release\IBSampleApp.exe | C# 示例测试程序。 |
API_ROOT\samples\Java\ApiDemo.jar | Java 示例测试程序。 |
安装后检查结果
Section titled “安装后检查结果”如果 API 包路径、Python 环境和 TWS API 设置都正确,检查时通常能确认:
- TWS 客户端目录和 TWS API 源码目录是分开的。
- TWS API 包版本文件可读取。
- Python 能导入
ibapi。 - TWS 或 IB Gateway 登录后能返回
nextValidId。
示例输出可能类似:
API_Version=10.47.01ibapi 可导入CONNECTED=TrueREQUESTED_NEXT_VALID_ID_RECEIVED=TrueNON_INFO_ERROR_COUNT=0这说明:只要 API 包路径、Python 环境和 TWS API 设置对应正确,就不必强行使用官方示例目录。
| 现象 | 常见原因 | 处理方式 |
|---|---|---|
ModuleNotFoundError: No module named 'ibapi' | 运行脚本的 Python 环境没有安装 ibapi | 用同一个 Python 执行 -m pip install "API_ROOT\source\pythonclient"。 |
| 命令行能导入,IDE 不能导入 | IDE 使用了另一个解释器 | 在 IDE 中切换到项目虚拟环境或同一个 Python。 |
找到 C:\Jts 但没有 source\pythonclient | 找到的是 TWS 客户端目录,不是 API 包目录 | 重新安装 TWS API MSI,确认 API 安装目录。 |
| 官方 C# / Java 示例打不开 | 示例依赖文件、JRE 或 DLL 路径不对 | 先确认 API 包完整安装,再看语言运行环境。 |
官方 Install the TWS API on Windows 章节说明,Windows 安装器会下载并安装 TWS API folder,安装后可进入 Python client 目录执行安装命令;官方也说明 Windows 安装器会复制 TWSLib.dll、CSharpAPI.dll、TwsSocketClient.dll 等文件。