Skip to content

asancdec/UnifiedVol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UnifiedVol

UnifiedVol is a C++20 quantitative finance library for volatility surface modeling and calibration.


Current Capabilities

Arbitrage-Free SVI Calibration

  • Full enforcement of static no-arbitrage conditions:

    • Calendar arbitrage
    • Butterfly spread arbitrage
    • Positive minimum variance
    • Roger Lee’s asymptotic wing slope bounds
  • Calibration methodology:

    • Sequential Quadratic Programming (SQP) with constraint handling via NLopt
    • Closed-form analytical gradients for improved speed and numerical stability
    • Post-calibration validation to confirm absence of arbitrage violations

Examples

SVI calibration

Roadmap

Planned extensions include:

  • SSVI (Stochastic Volatility Inspired) parameterization
  • SABR stochastic volatility model
  • Heston stochastic variance model
  • Stochastic Local Volatility (SLV) frameworks
  • Integration with PDE solvers for local volatility pricing

References

  • Roger W. Lee (2003), The Moment Formula for Implied Volatility at Extreme Strikes
  • Jim Gatheral & Antoine Jacquier (2014), Arbitrage-Free SVI Volatility Surfaces
  • Zeliade Systems (2012), Quasi-Explicit Calibration of Gatheral’s SVI Model (White Paper)
  • Tahar Ferhati (2020), Robust Calibration for SVI Model Arbitrage-Free

Data

Sample surfaces calibrated in this project are derived from publicly available option data:


Dependencies

  • C++20 STL
  • NLopt — nonlinear optimization library for SQP calibration, constraint enforcement, and stopping criteria

Status

This repository is under active development. Interfaces, APIs, and model implementations are subject to further changes.