QuantLib v1.12 Release Notes

Release Date: 2018-03-01 // about 6 years ago
  • ๐Ÿ”„ Changes for QuantLib 1.12:

    QuantLib 1.12 includes 54 pull requests from several contributors.

    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/7?closed=1.

    Portability

    • ๐Ÿš€ As announced in the previous release, support for the Dev-C++ IDE was removed.
    • ๐Ÿš€ In April 2018, Microsoft will end its support for Microsoft Visual C++ 2008. Therefore, this is the last version of QuantLib to support it with maintained project files. The next release will only contain project files for Visual C++ 2010 and later.
    • ๐Ÿ It is now possible to build a usable library with CMake on Windows (thanks to Javier G. Sogo).
    • ๐Ÿ›  Fix autotools build outside the source tree (thanks to Joshua Ulrich).

    Instruments and pricing engines

    • โž• Added OAS calculation to experimental callable bonds (thanks to Bojan Nikolic).
    • Avoided infinite loop for some sets of parameters in experimental variance-gamma engine (thanks to Roy Zywina).

    Cash flows

    • โฑ It is now possible to build a cash-flow leg from a schedule created from a precalculated vector of dates (thanks to Peter Caspers).

    Models

    • 0๏ธโƒฃ Affine models can now be used to bootstrap a default-probability curve (thanks to Jose Aparicio).
    • โž• Added Andreasen-Huge volatility interpolation and local volatility calibration (thanks to Klaus Spanderen).
    • โž• Added Rannacher smoothing steps for Heston stochastic local volatility calibration (thanks to Klaus Spanderen).

    Term structures

    • โž• Added L2 penalty to fitted parameters of fitted bond discount curve (thanks to Robin Northcott).
    • โž• Added an optional trading calendar to the FX-swap rate helper and and optional payment lag to the OIS rate helper (thanks to Wojciech Slusarski).
    • ๐Ÿ›  Fixed inconsistent treatment of strike in experimental CPI cap/floor term price surface (thanks to Francis Duffy).
    • Correctly handled the case of overlapping strike regions for caps and floors in experimental CPI cap/floor term price surface (thanks to Peter Caspers).
    • ๐Ÿ›  Fixed calculation of seasonality correction for interpolated inflation indexes (thanks to Francis Duffy).
    • Implemented composite zero-yield curve as combination of two existing curves via a given binary function (thanks to Francois Botha).
    • ๐Ÿ›  Fixed interpolation of shift in swaption volatility matrix (thanks to Peter Caspers).

    Date/time

    • โšก๏ธ Updated Chinese calendar for 2018 (thanks to Cheng Li).
    • โž• Added Botswana calendar (thanks to Francois Botha).
    • ๐Ÿ›  Fixed a few problems with US calendars (thanks to Mike DelMedico and to GitHub user ittegrat).
    • ๐Ÿ‘‰ User-added holidays now work correctly when intraday calculations are enabled (thanks to Klaus Spanderen for the fix and to GitHub user volchemist for the report).

    Math

    • ๐Ÿ›  Fixed monotonicity of Fritsch-Butland and prevented NaNs in some cases (thanks to GitHub user Grant6899 for the fix and to Tom Anderson for the report).

    ๐Ÿ—„ Deprecated features

    • ๐Ÿš€ The ChiSquareDistribution, NonCentralChiSquareDistribution, InverseNonCentralChiSquareDistribution and GammaDistribution were renamed to CumulativeChiSquareDistribution, NonCentralCumulativeChiSquareDistribution, InverseNonCentralCumulativeChiSquareDistribution and CumulativeGammaDistribution, respectively (thanks to GitHub user IGonza). The old names are still available as typedefs and will be removed in a future release.

    ๐Ÿ›  Thanks go also to Marco Craveiro, Dirk Eddelbuettel, Lakshay Garg, Guillaume Horel, Alix Lassauzet, Patrick Lewis, and GitHub users bmmay, bingoko and tournierjc for smaller fixes and enhancements.