Эта библиотека предоставляет высокопроизводительные компоненты, использующие поддержку аппаратного ускорения и автоматическое дифференцирование TensorFlow. Библиотека обеспечит поддержку TensorFlow для фундаментальных математических методов, методов среднего уровня и конкретных моделей ценообразования. В ближайшие несколько месяцев охват будет расширен.
Библиотека имеет трехуровневую структуру:
Фундаментальные методы . Основные математические методы — оптимизация, интерполяция, поиск корней, линейная алгебра, генерация случайных и квазислучайных чисел и т. д.
Методы среднего уровня . Решатели ОДУ и УЧП, структура процессов Ito, генераторы диффузионных путей, пробоотборники копулы и т. д.
Методы ценообразования и другие виды количественного финансирования конкретных коммунальных услуг . Конкретные модели ценообразования (например, Local Vol (LV), Stochastic Vol (SV), Stochastic Local Vol (SLV), Hull-White (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/
для сквозных примеров. Он включает в себя учебные тетради, такие как:
Приведенные выше ссылки откроют блокноты Jupyter в Colab.
Мы готовы к сотрудничеству с вами! См. CONTRIBUTING.md, чтобы узнать, как внести свой вклад. Этот проект соответствует кодексу поведения TensorFlow. Ожидается, что, участвуя, вы будете соблюдать этот кодекс.
Этот раздел предназначен для разработчиков, которые хотят внести свой код в библиотеку. Если вас интересует только использование библиотеки, следуйте инструкциям в разделе «Установка».
Эта библиотека имеет следующие зависимости:
Для этой библиотеки требуется система сборки Bazel. Следуйте инструкциям по установке Bazel для вашей платформы.
Вы можете установить TensorFlow и связанные зависимости с помощью команды pip3 install
:
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 версии 3. Убедитесь, что вы можете запустить import tensorflow
в оболочке Python 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 (см. ЛИЦЕНЗИЮ). Эта библиотека использует примитивные полиномы Соболя и числа начального направления, которые лицензируются по лицензии BSD.