1.37
Downloads:
Changes for QuantLib 1.37:
QuantLib 1.37 includes 27 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/35?closed=1.
Portability
- Future change of default: as already announced, in the next release we're going to switch the default for
ext::anyandext::optionalfrom the Boost implementation to the standard one.
Dates and calendars
- Added closure for President Carter's funeral to the NYSE calendar; thanks to Dirk Eddelbuettel (@eddelbuettel).
- Added distinct Wellington and Auckland variants for New Zealand calendar (@lballabio).
Indexes
- Improved the performance of the
addFixingandaddFixingsmethod in theIndexclass; thanks to Peter Caspers (@pcaspers). - Added the KOFR index; thanks to Jongbong An (@jongbongan).
Instruments and pricing engines
- Added Choi pricing engine for Asian options; thanks to Klaus Spanderen (@klausspanderen).
- Passing a risk-free overnight index to an asset swap now implies using OIS-like coupons (@lballabio).
- Added Bjerksund-Stensland, Operator-Splitting, Deng-Li-Zhou, Choi and n-dim PDE engines for spread options; thanks to Klaus Spanderen (@klausspanderen).
- Deng-Li-Zhou, Choi and n-dim PDE engines for basket options; thanks to Klaus Spanderen (@klausspanderen).
Term structures
- Possibly breaking: better upper and lower bounds for global bootstrap; thanks to Eugene Toder (@eltoder). If you created your own bootstrap traits, you'll need to add
transformDirectandtransformInversemethods for them to work with theGlobalBootstrapclass. - Fitted bond curves can now be passed precomputed parameters without the need for bond helpers (@lballabio).
- Use correct guess in SABR swaption vol cube (@lballabio).
- OIS rate helpers can now be passed a date-generation rule; thanks to Sotirios Papathanasopoulos (@sophistis42).
- Swap rate helpers can now be passed explicit start and end dates; thanks to Eugene Toder (@eltoder).
- OIS rate helpers can now be passed explicit start and end dates, making a distinct
DatedOISRateHelperclass unnecessary; thanks to Eugene Toder (@eltoder).
Cash flows
- Added new
MultipleResetsCouponandMultipleResetsLegclasses to manage coupons with multiple resets (@lballabio). They fix and replaceSubPeriodsCouponandSubPeriodsLeg.
Deprecated features
- Removed features deprecated in version 1.32:
- the
FixedRateBondForwardclass; - the
SampledCurveandSampledCurveSetclasses; - the
StepConditionSetandBoundaryConditionSetclasses; - the
ParallelEvolverandParallelEvolverTraitsclasses; - the
FDVanillaEngineandFDMultiPeriodEngineclasses; - the
BSMTermOperator,StandardFiniteDifferenceModel,StandardSystemFiniteDifferenceModelandStandardStepConditiontypedefs; - the
QL_NULL_FUNCTIONmacro; - the overloads of
DigitalCmsLeg::withReplication,DigitalCmsSpreadLeg::withReplicationandDigitalIborLeg::withReplicationtaking no arguments; - the empty headers
analyticamericanmargrabeengine.hpp,analyticcomplexchooserengine.hpp,analyticcomplexchooserengine.hpp,analyticcompoundoptionengine.hpp,analyticeuropeanmargrabeengine.hpp,analyticsimplechooserengine.hpp,complexchooseroption.hpp,compoundoption.hpp,margrabeoption.hppandsimplechooseroption.hppin theql/experimental/exoticoptionsfolder; - the empty header
ql/experimental/termstructures/multicurvesensitivities.hpp; - the empty headers
pdeshortrate.hppandshoutcondition.hppin theql/methods/finitedifferencesfolder; - the empty header
ql/models/marketmodels/duffsdeviceinnerproduct.hpp; - the empty headers
fdconditions.hpp,fddividendengine.hppandfdstepconditionengine.hppin theql/pricingengines/vanillafolder.
- the
- Deprecated the
SubPeriodsCoupon,SubPeriodsPricer,AveragingRatePricerandCompoundingRatePricerclasses; renamed toMultipleResetsCoupon,MultipleResetsPricer,AveragingMultipleResetsPricerandCompoundingMultipleResetsPricer, respectively. - Deprecated the
SubPeriodsLegclass; useMultipleResetsLeginstead.
Thanks go also to Eugene Toder (@eltoder), Ben Watson (@sonben) and the XAD team (@auto-differentiation-dev) for miscellaneous smaller fixes, improvements or reports.
New Contributors
- @sophistis42 made their first contribution in https://github.com/lballabio/QuantLib/pull/2107
Full Changelog: https://github.com/lballabio/QuantLib/compare/v1.36...v1.37