首页
/ QuantLib 1.38版本发布:金融量化库的重要更新

QuantLib 1.38版本发布:金融量化库的重要更新

2025-06-10 13:36:59作者:何将鹤

项目简介

QuantLib是一个开源的金融量化计算库,广泛应用于金融衍生品定价、风险管理、投资组合优化等领域。它提供了丰富的金融工具模型和数学计算方法,是量化金融领域的重要基础设施。QuantLib采用C++编写,同时提供了多种语言的接口,包括Python、R等,使其在学术界和工业界都得到了广泛应用。

1.38版本核心更新

日期与日历系统改进

在金融计算中,准确的日期处理至关重要。QuantLib 1.38对Schedule类进行了重要改进,现在当启用月末调整(end-of-month)时,该类会正确遵守用户指定的营业日调整规则,而不再强制使用Modified Following惯例。这一改变使得日期计算更加灵活和符合用户预期。

此外,版本更新还增加了多个地区的节假日数据:

  • 中国2025年节假日
  • 泰国2025年节假日
  • 香港2025年节假日

这些更新确保了相关地区金融产品定价的准确性。

指数类改进

1.38版本对通胀指数进行了重要重构。现在,年同比通胀指数(year-on-year inflation indexes)可以(且应该)在不使用interpolated标志的情况下构建。与零息通胀指数类似,插值计算被移到了使用这些指数的息票中。这一变化使得指数使用更加一致和灵活。

同时,修复了已停用的EUR LIBOR指数的过时惯例,确保历史数据分析的准确性。

金融工具与定价引擎增强

本次更新引入了多项新功能和改进:

  1. 新增部分时间障碍看跌期权:扩展了障碍期权的种类,为复杂衍生品定价提供了更多选择。

  2. OvernightIndexFuture类通知机制修复:现在该类能够正确接收凸性报价和估值日期变化的通知,提高了计算准确性。

  3. BlackCallableFixedRateBondEngine修正:修复了该实验性引擎在评估嵌入式期权时未能正确考虑折现的问题。

  4. 多项实验性功能迁移至核心库:包括多种期权类型及其定价引擎,如Holder可扩展期权、Writer可扩展期权、部分时间障碍期权、双资产障碍期权、双资产相关性期权等,标志着这些功能的成熟和稳定。

期限结构增强

  1. DepositRateHelper和FraRateHelper改进:现在可以通过指定固定日期而非期限来构建这些辅助类,提供了更大的灵活性。

  2. 跨货币基差互换辅助类增强:现在可以传递隔夜指数和相应的支付频率,还可以指定支付延迟,满足更复杂的交易结构需求。

  3. 全局引导优化功能扩展:惩罚函数现在可以接收曲线节点作为参数,使得曲线平滑度优化成为可能。还支持指定额外的优化变量,如期货凸性调整。

  4. 新增分段远期利差期限结构:为利差曲线建模提供了新的工具。

未来变化预告

  1. ext::any和ext::optional默认实现变更:下一版本将默认从Boost实现切换到标准实现,虽然Boost版本仍可使用但已被标记为废弃。

  2. SimpleQuote类可能变为final:如果用户代码中有继承自SimpleQuote的类,需要提前做好准备。

废弃特性

  1. 移除1.33版本已废弃的功能:包括Currency类及其Data嵌套类中接受格式字符串的构造函数,以及相关的format方法和数据成员。

  2. 废弃年同比通胀指数的interpolated参数构造函数:建议使用其他构造函数替代。

  3. 废弃部分实验性头文件:随着相关功能迁移至核心库,对应的实验性头文件被标记为废弃。

技术影响与建议

QuantLib 1.38版本的更新主要集中在三个方面:功能增强、错误修复和架构改进。对于现有用户,建议:

  1. 检查是否使用了将被废弃的功能,特别是通胀指数构造方式和货币格式化相关代码,及时进行迁移。

  2. 评估是否可以从新迁移至核心库的功能中受益,这些功能经过充分测试已经达到生产环境可用状态。

  3. 关注未来变更预告,特别是SimpleQuote可能变为final的影响,提前规划代码调整。

对于新用户,1.38版本提供了更丰富、更稳定的金融工具集合,是开始使用QuantLib的良好起点。特别是新增的部分时间障碍期权和分段远期利差期限结构等特性,为复杂金融产品建模提供了更多可能性。

QuantLib持续演进的方向表明,项目正在向更标准化、更稳定的方向发展,同时保持对前沿金融建模需求的响应能力。这使得它仍然是量化金融领域不可或缺的工具库之一。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
22
6
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
164
2.05 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
60
16
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
952
559
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
0
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.01 K
396
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
407
387
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
199
279
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
17
0