tf-quant-finance-基于 TensorFlow 的量化金融库


tf-quant-finance 是一个基于 TensorFlow 的量化金融库,以下是关于这个仓库的详细介绍:

1. 概述

该库利用 TensorFlow 的硬件加速支持和自动微分功能,提供高性能的量化金融组件。它的目标是为基础数学方法、中级方法以及特定定价模型提供 TensorFlow 支持,并且在未来几个月会不断扩展覆盖范围。

2. 结构

库的结构分为三个层次: - 基础方法:包含核心数学方法,如优化、插值、求根算法、线性代数、随机和准随机数生成等。 - 中级方法:包括常微分方程(ODE)和偏微分方程(PDE)求解器、伊藤过程框架、扩散路径生成器、Copula 采样器等。 - 定价方法和其他量化金融特定工具:特定的定价模型(例如局部波动率(LV)、随机波动率(SV)、随机局部波动率(SLV)、Hull - White(HW)模型等)及其校准,利率曲线构建、收益描述和时间表生成等。

3. 安装

使用 pip 包是开始使用该库的最简单方法。该库需要 Python 3.7 及以上版本和 TensorFlow >= 2.7。安装步骤如下: - 首先,按照 TensorFlow 安装说明 安装最新版本的 TensorFlow,例如: sh pip3 install --upgrade tensorflow - 然后安装 tf-quant-financesh pip3 install --upgrade tf-quant-finance 可能还需要使用 --user 选项。

4. TensorFlow 培训

如果不熟悉 TensorFlow,可以通过以下自学习的 TensorFlow 笔记本开始学习: - Introduction to TensorFlow Part 1 - Basics - Introduction to TensorFlow Part 2 - Debugging and Control Flow - Introduction to TensorFlow Part 3 - Advanced Tensor Manipulation

5. 开发路线图

目前正在扩展库的覆盖范围,正在积极开发的领域包括: - 伊藤过程:定义伊藤过程的框架,包括从过程中采样路径和求解相关的反向柯尔莫哥洛夫方程的方法。 - 特定过程/模型的实现:布朗运动、几何布朗运动、奥恩斯坦 - 乌伦贝克过程、单因素 Hull - White 模型、Heston 模型、局部波动率模型、二次局部波动率模型、SABR 模型等。 - Copulas:支持定义和从 Copulas 中采样。 - 模型校准:Dupire 局部波动率校准、SABR 模型校准。 - 利率曲线拟合:Hagan - West 算法用于收益率曲线引导和单调凸插值方案。 - 日期、日计数惯例、节假日等支持

6. 示例

示例代码可以在 tf_quant_finance/examples/ 中找到。

7. 目录结构

仓库的主要目录结构如下:

BUILD
CONTRIBUTING.md
LICENSE
MANIFEST.in
README.md
WORKSPACE
build_pip_pkg.sh
setup.py
ci_build/
 Dockerfile
 cloudbuild.yaml
third_party/
 sobol_data/
tf_quant_finance/
 BUILD
 LICENSE
 __init__.py
 black_scholes/
 datetime/
 examples/
 experimental/
 math/
 models/
 rates/
 types/
 utils/
api_docs/
 README.md
 index.md
 tf_quant_finance/

8. 许可证

该项目使用 Apache License 2.0 许可证。

github