QuantLib: a free/open-source library for quantitative finance
Creators
Description
Downloads:
Changes for QuantLib 1.39:
QuantLib 1.39 includes 28 pull requests from several contributors.
Some of the most notable changes are included below. A detailed list of changes is available in ChangeLog.txt and at https://github.com/lballabio/QuantLib/milestone/37?closed=1.
Portability
- Bug in recent Visual C++ versions: a few recent version of the Visual C++ 2022 compiler (from 17.14.2 to 17.14.8) had a known bug that, unfortunately, affected QuantLib heavily and maed it basically unusable. A fix was released in version 17.14.9; if you're compiling QuantLib on Windows, make sure you're using at least that version (or, if you can't upgrade, use the Visual C++ 2019 toolset; you can do that from VC++ 2022, as well).
- Change of default: as already announced, in this release we're switching the default for
ext::anyandext::optionalfrom the Boost implementation to the standard one. Usingboost::anyandboost::optionalis still possible for the time being but deprecated.
Dates, calendars and day-count conventions
- Fixed a corner case of
Calendar::advancewhen using EOM and the unadjusted business-day convention; thanks to Eugene Toder (@eltoder). - Fixed an error when asking for the serial number of a null date with intraday support enabled (@lballabio); thanks to @UnitedMarsupial for the heads-up.
- Added the SHIR fixing calendar (@lballabio).
- Fixed the order of operations in the 30/360 USA day-count convention; thanks to Eugene Toder (@eltoder).
Indexes
- Added the SARON index; thanks to Paolo D'Elia (@paolodelia99).
- Added a
CustomIborIndexclass that allows to create an IBOR-like index with custom calendars for value and maturity dates calculations; thanks to Eugene Toder (@eltoder).
Instruments and pricing engines
- The
MakeOISclass now knows the default number of settlement days for a few currencies; thanks to Zak Kraehling (@7astro7).
Interest rates
- The
FxSwapRateHelperclass can now be built specifying fixed dates instead of a tenor; thanks to Eugene Toder (@eltoder). - A number of helpers can now take quoted rates either as numbers or
Handle<Quote>via the use ofstd::variant; this reduces the number of overloaded constructors and in some cases allows the use of keyword arguments when exported to Python. Thanks to Paolo D'Elia (@paolodelia99) and Eugene Toder (@eltoder). - The
OISRateHelperclass can now specify a calendar for the overnight leg; thanks to Eugene Toder (@eltoder). - The
ZeroCouponInflationSwapHelperclass now doesn't need to be passed a nominal curve, which wouldn't affect the results anyway (@lballabio).
Volatility
- Optionlet stripperes can now use overnight indexes; thanks to Paolo D'Elia (@paolodelia99).
- Added calculation of better guesses for SABR calibration as detailed in the Le Floc'h and Kennedy paper (@lballabio).
Deprecated features
- Removed features deprecated in version 1.34:
- the overloads of
Bond::yield,BondFunctions::atmRate,BondFunctions::yieldandBondFunctions::zSpreadtaking a price as aRealinstead of aBond::Priceinstance; - the
Swaption::underlyingSwapandSwaptionHelper::underlyingSwapmethods; - the constructors of
InflationTermStructure,ZeroInflationTermStructure,YoYInflationTermStructure,InterpolatedZeroInflationCurve,InterpolatedYoYInflationCurve,PiecewiseZeroInflationCurveandPiecewiseYoYInflationCurvetaking an observation lag; - the overload of
InflationTermStructure::setSeasonalitytaking no arguments; - the
InflationTermStructure::setBaseRatemethod; - the
fixedRateBondmethod andfixedRateBond_data member of theFixedRateBondHelperclass, and thecpiBondmethod andcpiBond_data member of theCPIBondHelperclass.
- the overloads of
- Deprecated the
observationLagandhasExplicitBaseDatemethods and theobservationLag_data member of theInflationTermStructureclass; inflation term structures always have an explicit base date now. - Deprecated the usage of
boost::anyandboost::optional; their standard counterparts are used by default now. - Deprecated the constructor of
ZeroCouponInflationSwapHelpertaking a nominal curve; use the other constructor instead.
Thanks go also to Imrane Amri (@raneamri), Ralf Konrad Eckel (@ralfkonrad), Joan Carlos Naftanaila (@MiDDiz), Eugene Toder (@eltoder), Paolo D'Elia (@paolodelia99) and Holger Rother (@hrother) for miscellaneous smaller fixes, improvements or reports.
New Contributors
- @MiDDiz made their first contribution in https://github.com/lballabio/QuantLib/pull/2219
- @7astro7 made their first contribution in https://github.com/lballabio/QuantLib/pull/2237
Full Changelog: https://github.com/lballabio/QuantLib/compare/v1.38...v1.39
Notes
Files
lballabio/QuantLib-v1.39.zip
Files
(10.9 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:acd217187fd947a4780b1f96cb81ce02
|
10.9 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/lballabio/QuantLib/tree/v1.39 (URL)
Software
- Repository URL
- https://github.com/lballabio/QuantLib