安装方式对照表
依据官方 README 与 quantlib.org 下载/安装页整理。
| 方式 | 命令/来源 | 适用场景 | 注意点 |
|---|---|---|---|
| pip | pip install QuantLib | Python 用户,最常用 | 预编译 wheel,无需本地编译器;由 QuantLib-Python 提供 |
| conda | conda install -c conda-forge quantlib-python | conda 环境用户 | 社区 channel,版本可能滞后官方 |
| C++ CMake 编译 | cmake .. && make | C++ 开发,需完整控制 | 需 Boost + C++ 编译器,编译耗时较长 |
| C++ autotools 编译 | ./configure && make | Linux/macOS 传统构建 | README 提到 CMake,autotools 为旧方式 |
| 源码包下载 | quantlib.org/download.shtml | 需要离线源码或指定版本 | 官方下载入口,安装说明见 install.shtml |
| 无网络离线 | 下载 wheel/源码到本地再装 | 内网/离线环境 | 需提前准备好 wheel 与依赖 |
pip 安装分步流程
1. 确认 Python 版本:python --version(QuantLib-Python 支持主流 Python 3.x,具体以官方为准)。
2. 创建虚拟环境(推荐):python -m venv venv 并激活,避免污染系统环境。
3. 安装:pip install QuantLib,pip 会拉取预编译 wheel。
4. 验证:python -c "import QuantLib as ql; print(ql.__version__)",能打印版本号即成功。
C++ 源码编译分步(CMake)
1. 下载源码:从 quantlib.org/download.shtml 获取源码包或 git clone。
2. 配置构建:cmake -S . -B build 生成构建目录。
3. 编译:cmake --build build(或 make),需 Boost C++ 库与编译器。
4. 安装:cmake --install build,具体参数见 quantlib.org/install.shtml。
依赖与前置条件
依据官方 README 与构建说明整理(版本以官方为准)。
| 依赖 | 用途 | 说明 |
|---|---|---|
| Python 3.x | Python 绑定运行时 | pip 安装需匹配的 wheel 版本 |
| Boost C++ 库 | C++ 编译核心依赖 | 仅 C++ 源码编译需要;pip wheel 已内置 |
| C++ 编译器 | 源码编译 | GCC/Clang/MSVC,需支持 C++ 标准 |
| CMake | 构建系统 | README 提到 CMake 构建支持 |
| SWIG | Python 绑定生成 | 仅从源码生成 Python 绑定时需要 |
| 平台支持 | 跨平台 | Linux/Windows/macOS(README 有各平台构建状态徽章) |
安装常见问题排查
| 现象 | 原因 | 处理 |
|---|---|---|
| ModuleNotFoundError: QuantLib | 未安装或环境未激活 | 确认 venv 激活后重新 pip install QuantLib |
| Boost 版本不兼容 | C++ 编译时 Boost 版本过旧/过新 | 按官方 install.shtml 对齐 Boost 版本 |
| 编译超时/卡住 | C++ 模板库编译耗时 | 增加内存/用多核 make -j,或改用 pip wheel |
| pip 无匹配 wheel | Python 版本/平台无预编译包 | 换支持的 Python 版本或走 C++ 源码编译 |
| import QuantLib 很慢 | 首次加载模块初始化 | 属正常现象,后续调用快;以官方为准 |
| 版本冲突 | 多个环境/依赖冲突 | 新建干净 venv 重装 |
常见问题
QuantLib 需要付费吗?
不需要。它是 BSD-3-Clause 开源库,pip/conda 免费安装;许可证细节以官方 LICENSE.TXT 与 README badge 为准。
装 Python 版一定要本地装 C++ 编译器吗?
不必。pip install QuantLib 拉取的是预编译 wheel,通常无需本地编译器;只有从源码编译或生成 Python 绑定时才需要 C++ 编译器与 SWIG,以官方为准。
pip 和 C++ 源码编译选哪个?
做 Python 定价/研究选 pip(快、省事);做 C++ 集成或需要定制编译选项选源码编译;具体以官方 install.shtml 为准。
安装后怎么确认成功?
运行 python -c "import QuantLib as ql; print(ql.__version__)",能打印版本号且无报错即成功。
想免部署不装环境怎么办?
可考虑 EasyClaw 量化 Skill 的免部署研究路线(如 quant-analyst 含期权定价+Greeks);但 QuantLib 与 EasyClaw 无已证实集成,两者是独立路线,具体见对比页。