Skip to content

marwinsteiner/hull-white

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hull-White 1F Pricer

High-performance, zero-dependency C++20 Hull-White one-factor interest rate model library for CVA and exotic derivatives pricing.

Features

  • Hull-White 1F model with exact discretization (not Euler)
  • Analytical pricing: European swaptions (Jamshidian), caps/floors, ZCB options
  • Monte Carlo engine: template-based, multi-threaded with Sobol QRN support
  • Exotic products: Bermudan swaptions (LSM), callable bonds, range accruals
  • CVA calculation: exposure profiles (EE/EPE/PFE), netting sets, credit curves
  • Calibration: Levenberg-Marquardt optimizer for swaption vol surface fitting
  • Zero external dependencies: all math hand-rolled (normal CDF, Sobol, linear algebra)

Requirements

  • C++20 compiler (MSVC 2022, GCC 12+, Clang 15+)
  • CMake 3.25+

Build

cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release
ctest --test-dir build -C Release

Examples

./build/Release/example_bond_pricing
./build/Release/example_swaption_calib
./build/Release/example_bermudan
./build/Release/example_cva

About

Zero-dependency C++20 Hull-White 1F interest rate model for CVA and exotic derivatives pricing

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors