該庫提供利用 TensorFlow 的硬體加速支援和自動微分的高效能元件。該庫將為基礎數學方法、中級方法和特定定價模型提供 TensorFlow 支援。覆蓋範圍將在未來幾個月內擴大。
該庫的結構分為三層:
基礎方法。核心數學方法-最佳化、內插、求根、線性代數、隨機和準隨機數產生等。
中級手段。 ODE 和 PDE 求解器、Ito 製程架構、擴散路徑產生器、Copula 取樣器等。
定價方法和其他量化金融特定公用事業。具體定價模型(例如,本地波動率(LV)、隨機波動率(SV)、隨機本地波動率(SLV)、赫爾-懷特(HW))及其校準。利率曲線建構、收益描述和時間表產生。
我們的目標是讓每個關卡都能輕鬆存取庫組件。每一層都附有許多可以獨立於更高層級元件運作的範例。
開始使用該庫的最簡單方法是透過 pip 套件。
請注意,該程式庫需要 Python 3.7 和 Tensorflow >= 2.7。
首先,請依照 TensorFlow 安裝說明安裝最新版本的 TensorFlow。例如,您可以安裝 TensorFlow
pip3 install --upgrade tensorflow
然後運行
pip3 install --upgrade tf-quant-finance
您可能還必須使用選項--user
。
如果您不熟悉 TensorFlow,那麼以下 TensorFlow 筆記本自學簡介是一個很好的起點:
我們正在努力擴大圖書館的覆蓋範圍。積極開發的領域有:
有關端對端範例,請參閱tf_quant_finance/examples/
。它包括教程筆記本,例如:
上述連結將在 Colab 中開啟 Jupyter Notebooks。
我們渴望與您合作!有關如何貢獻的指南,請參閱 CONTRIBUTING.md。該項目遵守 TensorFlow 的行為準則。透過參與,您應該遵守此準則。
本部分適用於想要向程式庫貢獻程式碼的開發人員。如果您只想使用該庫,請按照安裝部分中的說明進行操作。
該庫具有以下相依性:
該庫需要 Bazel 建置系統。請遵循適合您平台的 Bazel 安裝說明。
您可以使用pip3 install
指令安裝 TensorFlow 和相關相依性:
pip3 install --upgrade tf-nightly tensorflow-probability==0.12.1 numpy==1.21 attrs dataclasses
克隆 GitHub 儲存庫:
git clone https://github.com/google/tf-quant-finance.git
跑完之後
cd tf_quant_finance
您可以使用bazel test
指令執行測試。例如,
bazel test tf_quant_finance/math/random_ops/sobol:sobol_test
將在 sobol_test.py 中執行測試。
使用 Python import tensorflow
3 執行測試。否則,測試可能會失敗。
以下命令將從原始碼建立自訂 pip 套件並安裝它:
# sudo apt-get install bazel git python python-pip rsync # For Ubuntu.
git clone https://github.com/google/tf-quant-finance.git
cd tf-quant-finance
bazel build :build_pip_pkg
./bazel-bin/build_pip_pkg artifacts
pip install --user --upgrade artifacts/ * .whl
GitHub 儲存庫:報告錯誤或提出功能請求。
TensorFlow 部落格:隨時了解 TensorFlow 團隊的最新內容和社群的最佳文章。
[email protected]:開啟郵件清單以討論此程式庫和提出問題。
TensorFlow Probability:此函式庫將利用 TensorFlow Probability (TFP) 中的方法。
Google 不正式支援該產品。該庫正在積極開發中,介面可能隨時變更。
該庫根據 Apache 2 許可證獲得許可(請參閱許可證)。該庫使用 Sobol 本原多項式和初始方向數,這些都在 BSD 許可證下獲得許可。