The Hull-White model is a practical exogenous model for fitting market interest rate term structures, described by:
Where:
- ( a ) is the mean reversion constant,
- ( \sigma ) is the volatility parameter,
- ( \theta(t) ) is chosen to fit the input term structure of interest rates.
To calibrate the Hull-White model in QuantLib-Python, use the JamshidianSwaptionEngine
. This requires setting up the model with appropriate market data and then solving for the best-fit parameters ( a ) and ( \sigma ) that minimize the error in pricing known swaptions.
The Black Karasinski model is an interest rate model characterized by:
As this model is non-affine, it necessitates the use of the TreeSwaptionEngine
for calibration, which is versatile enough to handle various non-affine short rate models. The process involves fitting the model to market swaption volatilities by iteratively adjusting ( a ) and ( \sigma ).
The G2++ model involves two factors, ( x_t ) and ( y_t ), which add complexity and accuracy to the fitting process:
For calibrating the G2++ model, QuantLib-Python offers several engines including TreeSwaptionEngine
, G2SwaptionEngine
, and FdG2SwaptionEngine
. The choice of engine affects both the calibration time and the accuracy of the fitted model. Calibration typically involves using historical data to estimate the parameters ( a ), ( b ), ( \sigma ), ( \eta ), and ( \rho ), ensuring the model's effectiveness in simulating and predicting future interest rate movements.