跳转到内容

在 Windows 上安装 TWS API

Windows 上安装 TWS API 时,重点不是“装完能打开一个界面”,而是确认源码、示例和语言接口文件已经落到正确目录。

  1. 打开官方下载页:Interactive Brokers API Software
  2. 阅读并同意 TWS API Non-Commercial License
  3. 在 Windows 区域选择需要的版本。
  4. 如果要使用 Python 示例,优先选择包含 Python API 的 Latest。
  5. 下载 MSI 安装包并运行。
  6. 安装完成后确认目录存在。官方示例常写 C:\TWS API,但真实路径以你安装时选择的位置为准。
Terminal window
set "API_ROOT=C:\TWS API"
dir "%API_ROOT%"

如果能看到 API_VersionNum.txtsourcesamples,说明 API 包目录存在。

官方旧示例会出现:

Terminal window
python setup.py install

更推荐在 source\pythonclient 目录中使用本地源码安装:

Terminal window
set "API_ROOT=C:\TWS API"
cd /d "%API_ROOT%\source\pythonclient"
py -m pip install .

这里的 pip install . 是安装已经下载的官方源码目录,不是从互联网下载第三方 ibapi 包。

安装后可以验证:

Terminal window
py -c "import ibapi; print(ibapi.__file__)"

能打印出 ibapi 路径,就说明 Python 能找到这个包。

如果项目使用虚拟环境,建议在项目虚拟环境里安装:

Terminal window
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_DIRAPI_ROOT 改成自己的真实目录。这样可以避免系统 Python、IDE Python 和项目 Python 混在一起。

官方文档提示,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\pythonclientPython API 源码目录。
API_ROOT\samples官方示例目录。
API_ROOT\samples\CSharp\IBSampleApp\bin\Release\IBSampleApp.exeC# 示例测试程序。
API_ROOT\samples\Java\ApiDemo.jarJava 示例测试程序。

如果 API 包路径、Python 环境和 TWS API 设置都正确,检查时通常能确认:

  • TWS 客户端目录和 TWS API 源码目录是分开的。
  • TWS API 包版本文件可读取。
  • Python 能导入 ibapi
  • TWS 或 IB Gateway 登录后能返回 nextValidId

示例输出可能类似:

API_Version=10.47.01
ibapi 可导入
CONNECTED=True
REQUESTED_NEXT_VALID_ID_RECEIVED=True
NON_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.dllCSharpAPI.dllTwsSocketClient.dll 等文件。