version 6.x, and clang up to version 4. Also, given the testing
environments available on GitHub actions, clang 5 and 6 are no
longer available to us for testing, and the same holds for g++ 7.
Therefore, it is suggested to upgrade to a newer version if
possible.
- **End of support:** this release also removes the configure switch
that allowed to use `boost::tuple`, `boost::function` and
`boost::bind` instead of their `std` counterparts; the `std` classes
were already the default since release 1.32. The corresponding
classes in the `ext` namespace are now deprecated.
- **Future change of default:** in a couple of releases, we're going
to switch the default for `ext::any` and `ext::optional` from the
Boost implementation to the standard one.
Dates and calendars
-------------------
- Added `startOfMonth` and `isStartOfMonth` methods to both `Date` and
`Calendar`; thanks to Francois Botha (igitur).
- Added specialized Warsaw Stock Exchange (WSE) calendar to Poland;
thanks to Marcin Bogusz (marcinfair).
- Added a new one-off holiday to South Korean calendar; thanks to
Jongbong An (jongbongan).
Cash flows
----------
- Made` OvernightIndexedCouponPricer` public and renamed to
`CompoundingOvernightIndexedCouponPricer`, and moved
`ArithmeticAveragedOvernightIndexedCouponPricer` from experimental
to core library; thanks to Ralf Konrad Eckel (ralfkonrad).
Indexes
-------
- **Possibly breaking:** inherited the `Index` class from `Observer`
and added a virtual `pastFixing` method. If you inherited a class
from both `Index` and `Observer`, change your code to avoid
inheriting twice from `Observer`. Thanks to Ralf Konrad Eckel
(ralfkonrad).
- Added currency information to `EquityIndex`; thanks to Ralf Konrad
Eckel (ralfkonrad).
Inflation
---------
- Inflation indexes are now better at deciding when to forecast
(lballabio); also added a `needsForecast` method that makes the
information available.
- Added `CPI::laggedYoYRate`; also, `YoYInflationCoupon`,
`yoyInflationLeg`, `CappedFlooredYoYInflationCoupon`,
`YearOnYearInflationSwap`, `MakeYoYInflationCapFloor`,
`YearOnYearInflationSwapHelper`, `YoYOptionletHelper` and the
experimental `YoYCapFloorTermPriceSurface` and
`InterpolatedYoYCapFloorTermPriceSurface` can now take an explicit
`CPI::InterpolationType` parameter instead of relying on the index
being defined as interpolated or not (lballabio). This is a first
step in removing interpolation from `YoYInflationIndex` and moving
it into the coupons where it belongs.
- Added method to YoY inflation index returning the date of the last
available fixing (lballabio).
Term structures
---------------
- Allow passing a pricer to the constructor of the `OISRateHelper` and
`DatedOISRateHelper` classes (lballabio); this makes it possible to
use arithmetic averaging of overnight rates.
- Allow custom constraint in non-linear fitting methods; thanks to Kai
Lin (klin333).
- Allow creating a swap helper with frequency "Once" (lballabio).
- The `GlobalBootstrap` constructor can now take an optional optimizer
and end criteria, allowing for better configuration; thanks to
Eugene Toder (eltoder).
Volatility
----------
- Added exact Bachelier implied-vol formula from Jäckel's paper; thanks
to Peter Caspers (pcaspers).
Deprecated features
-------------------
- **Removed** features deprecated in version 1.31:
- the `BlackVanillaOptionPricer` typedef;
- the constructors of `CPICoupon` taking a `spread` parameter, its
`spread` method, and its protected `spread_` data member;
- the `withSpreads` method of `CPILeg`;
- the protected `adjustedFixing` method and `spread_` data member of
`CPICouponPricer`;
- the `YYAUCPIr`, `YYEUHICPr`, `YYFRHICPr`, `YYUKRPIr`, `YYUSCPIr`
and `YYZACPIr` indexes and the experimental `YYGenericCPIr` class;
- the constructor of `YoYInflationIndex` taking a `ratio` parameter;
- a couple of constructors of `ForwardRateAgreement`;
- the empty files `ql/math/curve.hpp`, `ql/math/lexicographicalview.hpp`,
`ql/termstructures/yield/drifttermstructure.hpp`
and `ql/patterns/composite.hpp`;
- the `const_iterator` and `const_value_iterator` typedefs in the
`Garch11` class;
- the `const_time_iterator`, `const_value_iterator`,
`const_reverse_time_iterator` and `const_reverse_value_iterator`
typedefs and the `cbegin_values`, `cend_values`, `crbegin_values`,
`crend_values`, `cbegin_time`, `cend_time`, `crbegin_time` and
`crend_time` methods of the `TimeSeries` class;
- the `base`, `increment`, `decrement`, `advance` and `distance_to`
method of the `step_iterator` class.
- Deprecated `ext::function`, `ext::bind`, `ext::ref`, `ext::cref`,
`ext::placeholders`, `ext::tuple`, `ext::make_tuple`, `ext::get` and
`ext::tie`; use the corresponding `std::` classes and functions
instead.
- Deprecated the `ArithmeticAverageOIS`, `MakeArithmeticAverageOIS`
and `ArithmeticOISRateHelper` classes; use `OvernightIndexedSwap`,
`MakeOIS` and `OISRateHelper` instead.
- Deprecated the `YoYInflationCoupon`, `yoyInflationLeg`,
`CappedFlooredYoYInflationCoupon`, `YearOnYearInflationSwap`,
`MakeYoYInflationCapFloor`, `YearOnYearInflationSwapHelper`,
`YoYOptionletHelper`, `YoYCapFloorTermPriceSurface` and
`InterpolatedYoYCapFloorTermPriceSurface` constructors that don't
take an explicit CPI interpolation type.
- Deprecated the `getInfo` method of `LevenbergMarquardt`; inspect the
result of `minimize` instead.
- Deprecated the
`ql/experimental/averageois/averageoiscouponpricer.hpp` file;
include `ql/cashflows/overnightindexedcouponpricer.hpp` instead.
- Deprecated the somewhat out-of-scope and experimental
`CreditRiskPlus`, `SensitivityAnalysis`, `aggregateNPV`,
`parallelAnalysis` and `bucketAnalysis`.
**Thanks go also** to Jonathan Sweemer (sweemer), Eugene Toder
(eltoder), Ralf Konrad Eckel (ralfkonrad), Tony Wang (twan3617)
and the XAD team (auto-differentiation-dev) for miscellaneous
smaller fixes, improvements or reports.
commit 85e9489fd486c00fb624fb4c8f10ab227ac2e9e8
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Sat, 12 Oct 2024 22:55:21 +0200
Ignore lcov error
.github/workflows/coveralls.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 4bae7919925f54076c6f7bcb44a15bd8c1d1fb2a
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Sat, 12 Oct 2024 22:38:07 +0200
Avoid occasional warning from std::enable_shared_from_this
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 3074bd85d60aaf477b4c4f609e4da4f0c0d1f553
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Sat, 12 Oct 2024 20:45:08 +0200
Update changelog
ChangeLog.txt | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
commit 814c9cf074ce4dcb9b8777c03d205856769e6b86
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 12 Jul 2021 09:46:54 +0200
Set version to 1.36 final.
CMakeLists.txt | 4 ++--
configure.ac | 2 +-
ql/version.hpp | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
commit 10be1e1ab186950dcd05147b1676ee048893f99d
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Sat, 12 Oct 2024 20:29:39 +0200
Updated release history
Docs/pages/history.docs | 129 +++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 128 insertions(+), 1 deletion(-)
commit 4cf029617169cfc1985527a5187113ba105655a2
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 4 Oct 2023 11:52:15 +0200
Set version to 1.36-rc
CMakeLists.txt | 4 ++--
configure.ac | 2 +-
ql/version.hpp | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
commit fc6f3919ba1c85427332f38db5d69be85439d8fd
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 7 Oct 2024 12:30:47 +0200
Update news and changelog
ChangeLog.txt | 2733 ++++++++++++++++++++++++++++--------------------------
Contributors.txt | 4 +
News.md | 244 ++---
3 files changed, 1551 insertions(+), 1430 deletions(-)
commit 3d27c6b27d232c42965b7afb1684f181219cbc81
Merge: a5d2197cc 64acfbbe2
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 7 Oct 2024 09:57:29 +0200
added a recent temporary holiday (2086)
commit 64acfbbe2f405b3599a488852f0c313cd1e5de55
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 7 Oct 2024 08:19:05 +0200
Update expected test results
test-suite/calendars.cpp | 2 ++
1 file changed, 2 insertions(+)
commit a5d2197ccc544ac5990d1d14102a4d19f85e0392
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Sun, 6 Oct 2024 15:16:49 +0200
Increase test tolerance a bit
test-suite/shortratemodels.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit cbc5d93fcfebcc83726213c451899eb0e6f25b96
Author: jongbong.an <ajb8406snu.ac.kr>
Date: Sun, 6 Oct 2024 15:39:36 +0900
added a recent temporary holiday
ql/time/calendars/southkorea.cpp | 1 +
1 file changed, 1 insertion(+)
commit c27f32356af605b45da3a79a6e24a9ff07eed8ef
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Fri, 4 Oct 2024 09:57:29 +0200
Clean up configuration docs
Docs/pages/config.docs | 56 +++++-----
configure.ac | 297 +++++++++++++++++++++----------------------------
ql/userconfig.hpp | 96 +++++++++++-----
3 files changed, 223 insertions(+), 226 deletions(-)
commit 05b4b7ec86364a18e32bd9180d529457d74117e7
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Fri, 4 Oct 2024 11:46:47 +0200
Avoid another warning
ql/math/optimization/levenbergmarquardt.cpp | 2 ++
1 file changed, 2 insertions(+)
commit 89c26e16c0018bbf584a32f9df7d42d3899696c9
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Fri, 4 Oct 2024 08:45:11 +0000
Automated fixes by clang-tidy
ql/cashflows/cpicoupon.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 8bd570317c55c7f502998b5c1f2879e9d396943a
Merge: e366a83fe ef12f991d
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 3 Oct 2024 14:39:43 +0200
Simplify `Null<T>` implementation (2082)
commit e366a83fe169c21b3aad267b3bf823e204ad32d9
Merge: 460a94883 0e4c3dfa9
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 3 Oct 2024 13:28:14 +0200
Improve global bootstrap optimizer configuration (2080)
commit 0e4c3dfa9b790704b2054368de7dc1f756c8e941
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 3 Oct 2024 12:26:27 +0200
Restore and deprecate getInfo for backwards compatibility
ql/math/optimization/levenbergmarquardt.cpp | 2 ++
ql/math/optimization/levenbergmarquardt.hpp | 7 +++++++
2 files changed, 9 insertions(+)
commit ef12f991dc0e33f68f295a0e7571db98236fa4f0
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 3 Oct 2024 11:29:15 +0200
No need for Null<Array>, we can use {}
ql/legacy/libormarketmodels/lfmcovarparam.hpp | 6 +++---
ql/legacy/libormarketmodels/lfmcovarproxy.hpp | 7 +++----
ql/legacy/libormarketmodels/lfmhullwhiteparam.hpp | 6 +++---
ql/legacy/libormarketmodels/lmconstwrappercorrmodel.hpp | 6 +++---
ql/legacy/libormarketmodels/lmconstwrappervolmodel.hpp | 7 +++----
ql/legacy/libormarketmodels/lmcorrmodel.hpp | 6 +++---
ql/legacy/libormarketmodels/lmexpcorrmodel.hpp | 4 ++--
ql/legacy/libormarketmodels/lmextlinexpvolmodel.hpp | 7 +++----
ql/legacy/libormarketmodels/lmfixedvolmodel.hpp | 2 +-
ql/legacy/libormarketmodels/lmlinexpcorrmodel.hpp | 4 ++--
ql/legacy/libormarketmodels/lmlinexpvolmodel.hpp | 12 +++++-------
ql/legacy/libormarketmodels/lmvolmodel.hpp | 7 +++----
test-suite/libormarketmodelprocess.cpp | 2 +-
13 files changed, 35 insertions(+), 41 deletions(-)
commit 6cffc330749cf6c51351b8b8a5cd69dc9552ab7b
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 3 Oct 2024 10:10:27 +0200
No need for Null<Date>(), we're already using Date() anywhere else
ql/cashflows/cpicoupon.cpp | 10 +++++-----
ql/cashflows/cpicoupon.hpp | 2 +-
ql/cashflows/timebasket.cpp | 4 ++--
ql/experimental/credit/defaultevent.cpp | 4 ++--
ql/experimental/credit/defaultevent.hpp | 4 ++--
ql/experimental/exoticoptions/partialtimebarrieroption.cpp | 5 ++---
ql/instruments/bond.cpp | 2 +-
ql/instruments/creditdefaultswap.cpp | 12 +++++-------
ql/instruments/creditdefaultswap.hpp | 2 +-
ql/instruments/forwardvanillaoption.hpp | 5 ++---
ql/instruments/makecds.cpp | 2 +-
ql/instruments/makeswaption.cpp | 6 +++---
ql/instruments/simplechooseroption.hpp | 2 +-
ql/models/shortrate/calibrationhelpers/swaptionhelper.cpp | 10 +++++-----
ql/models/shortrate/onefactormodels/gaussian1dmodel.cpp | 2 +-
ql/models/shortrate/onefactormodels/gaussian1dmodel.hpp | 12 ++++++------
ql/models/shortrate/onefactormodels/markovfunctional.cpp | 12 ++++++------
ql/models/shortrate/onefactormodels/markovfunctional.hpp | 10 +++++-----
ql/pricingengines/credit/isdacdsengine.cpp | 2 +-
.../swaption/gaussian1dfloatfloatswaptionengine.cpp | 2 +-
.../swaption/gaussian1dnonstandardswaptionengine.cpp | 4 ++--
ql/pricingengines/swaption/gaussian1dswaptionengine.cpp | 4 ++--
ql/processes/gsrprocess.cpp | 2 +-
ql/processes/gsrprocess.hpp | 2 +-
ql/termstructures/volatility/gaussian1dsmilesection.cpp | 6 +++---
test-suite/overnightindexedswap.cpp | 8 ++++----
test-suite/schedule.cpp | 2 +-
27 files changed, 67 insertions(+), 71 deletions(-)
commit f9ce37ad14a304fa9187fc8222ea73d5397bbdb6
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 3 Oct 2024 09:38:50 +0200
Simplify Null implementation
ql/math/array.hpp | 19 -------------------
ql/prices.hpp | 19 -------------------
ql/time/date.hpp | 18 ------------------
ql/utilities/null.hpp | 45 ++++++++++++++++++---------------------------
4 files changed, 18 insertions(+), 83 deletions(-)
commit 460a94883c0bd09cbdfd3f3fa4f218ae7cd25f2c
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 2 Oct 2024 14:20:49 +0200
Re-enable deprecation warnings for recent Clang versions
.github/workflows/linux-full-tests.yml | 2 --
.github/workflows/linux-nondefault.yml | 2 --
.github/workflows/linux.yml | 2 --
ql/currency.cpp | 14 ++++----------
ql/currency.hpp | 2 +-
5 files changed, 5 insertions(+), 17 deletions(-)
commit 57df9d4285500ced582e28082f0dc28e6780c8ae
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 2 Oct 2024 11:41:58 +0200
Add Clang 19 to build matrix
.github/workflows/linux-full-tests.yml | 6 ++++++
.github/workflows/linux-nondefault.yml | 6 ++++++
.github/workflows/linux.yml | 7 +++++++
3 files changed, 19 insertions(+)
commit 639e05c687c4cd2eb90a149856dc82c6342a7c2b
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Sun, 29 Sep 2024 01:29:11 +0000
Automated fixes by clang-tidy
ql/cashflows/yoyinflationcoupon.cpp | 2 +-
ql/experimental/inflation/yoycapfloortermpricesurface.cpp | 2 +-
ql/experimental/inflation/yoyoptionlethelpers.cpp | 4 ++--
ql/instruments/makeyoyinflationcapfloor.cpp | 2 +-
ql/instruments/yearonyearinflationswap.cpp | 6 +++---
ql/termstructures/inflation/inflationhelpers.cpp | 4 ++--
6 files changed, 10 insertions(+), 10 deletions(-)
commit 1af4f821508e1975f607fca24da5e00e59185a11
Merge: fb835109c 5b0053be3
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 24 Sep 2024 22:58:54 +0200
Change the order of `QL_DEPRECATED_...` macro definition (2078)
commit 5b0053be3cbbdde510223236d4136779ffe6013f
Author: Ralf Konrad <42419984+ralfkonradusers.noreply.github.com>
Date: Tue, 24 Sep 2024 19:58:45 +0200
clang also defines __GNUC__
ql/qldefines.hpp | 14 +++++++-------
ql/qldefines.hpp.cfg | 14 +++++++-------
2 files changed, 14 insertions(+), 14 deletions(-)
commit fb835109c8103776db52c4d4552fa69181de458e
Merge: bbecf531e 283a28fda
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 23 Sep 2024 22:05:56 +0200
Replace now obsolete `LENGTH` macro with `std::size` function (2077)
commit 283a28fda99afcc5f6ad0c702217f74f5d726351
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 23 Sep 2024 19:10:51 +0200
Replace LENGTH macro with std::size
Examples/ConvertibleBonds/ConvertibleBonds.cpp | 6 ++---
Examples/FRA/FRA.cpp | 6 ++---
Examples/FittedBondCurve/FittedBondCurve.cpp | 6 ++---
test-suite/americanoption.cpp | 6 ++---
test-suite/amortizingbond.cpp | 2 +-
test-suite/andreasenhugevolatilityinterpl.cpp | 10 ++++----
test-suite/asianoptions.cpp | 14 +++++------
test-suite/barrieroption.cpp | 10 ++++----
test-suite/blackdeltacalculator.cpp | 4 ++--
test-suite/cdo.cpp | 6 ++---
test-suite/digitalcoupon.cpp | 2 +-
test-suite/digitaloption.cpp | 2 +-
test-suite/distributions.cpp | 12 +++++-----
test-suite/fdheston.cpp | 2 +-
test-suite/fdsabr.cpp | 8 +++----
test-suite/forwardoption.cpp | 12 +++++-----
test-suite/hestonmodel.cpp | 30 ++++++++++++------------
test-suite/hestonslvmodel.cpp | 12 +++++-----
test-suite/hybridhestonhullwhiteprocess.cpp | 12 +++++-----
test-suite/inflation.cpp | 14 +++++------
test-suite/inflationcpibond.cpp | 2 +-
test-suite/inflationvolatility.cpp | 6 ++---
test-suite/integrals.cpp | 2 +-
test-suite/interpolations.cpp | 14 +++++------
test-suite/margrabeoption.cpp | 6 ++---
test-suite/marketmodel.cpp | 32 +++++++++++++-------------
test-suite/marketmodel_cms.cpp | 2 +-
test-suite/marketmodel_smm.cpp | 2 +-
test-suite/matrices.cpp | 2 +-
test-suite/mclongstaffschwartzengine.cpp | 2 +-
test-suite/nthtodefault.cpp | 20 ++++++++--------
test-suite/overnightindexedswap.cpp | 2 +-
test-suite/piecewiseyieldcurve.cpp | 18 +++++++--------
test-suite/riskneutraldensitycalculator.cpp | 2 +-
test-suite/riskstats.cpp | 4 ++--
test-suite/shortratemodels.cpp | 4 ++--
test-suite/squarerootclvmodel.cpp | 12 +++++-----
test-suite/stats.cpp | 24 +++++++++----------
test-suite/swaption.cpp | 8 +++----
test-suite/swingoption.cpp | 4 ++--
test-suite/termstructures.cpp | 14 +++++------
test-suite/ultimateforwardtermstructure.cpp | 8 +++----
test-suite/utilities.hpp | 4 ----
test-suite/variancegamma.cpp | 8 +++----
test-suite/varianceswaps.cpp | 2 +-
test-suite/vpp.cpp | 2 +-
46 files changed, 186 insertions(+), 196 deletions(-)
commit bbecf531eb4d5faae291b412fd39c97a871eee60
Merge: cf9406d71 145d23509
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 23 Sep 2024 18:49:40 +0200
Add method to YoY inflation index returning the last fixing date (2076)
commit 145d2350910eb5decf9285a6eed088848bdae788
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 23 Sep 2024 15:19:20 +0200
Add method for last fixing date to YoY inflation index
ql/indexes/inflationindex.cpp | 11 +++++++++++
ql/indexes/inflationindex.hpp | 1 +
test-suite/inflation.cpp | 14 ++++++++++++++
3 files changed, 26 insertions(+)
commit cf9406d710eb4ccd25edc50329b182ffcef8328a
Merge: b2ef988fc 946d29cb8
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 23 Sep 2024 11:19:11 +0200
Allow creating a swap helper with frequency "Once" (2075)
commit 946d29cb8749e99945f0fe57df7c276311718ec9
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 23 Sep 2024 09:43:47 +0200
Allow creating a swap helper with frequency "Once"
ql/termstructures/yield/ratehelpers.cpp | 2 +-
test-suite/piecewiseyieldcurve.cpp | 19 +++++++++++++++++++
test-suite/schedule.cpp | 15 +++++++++++++++
3 files changed, 35 insertions(+), 1 deletion(-)
commit b2ef988fc799501ef97f675014aed34ee8ffad89
Merge: 4491778cb 8cf851830
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Sun, 22 Sep 2024 17:17:22 +0200
Manage interpolation of year-on-year inflation index inside coupons (2073)
commit 8cf851830f2a724c6d14583e86f0bff338f51f80
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Fri, 20 Sep 2024 10:06:32 +0200
More interpolation passed around
.../inflation/yoycapfloortermpricesurface.cpp | 21 +++++-
.../inflation/yoycapfloortermpricesurface.hpp | 76 ++++++++++++++++++++--
ql/indexes/inflationindex.cpp | 19 ++++++
ql/indexes/inflationindex.hpp | 28 ++++----
ql/termstructures/inflation/inflationhelpers.cpp | 68 ++++++++++---------
ql/termstructures/inflation/inflationhelpers.hpp | 15 +++++
test-suite/inflation.cpp | 4 +-
test-suite/inflationcapfloor.cpp | 23 +++----
test-suite/inflationcapflooredcoupon.cpp | 35 +++++-----
test-suite/inflationvolatility.cpp | 3 +-
10 files changed, 210 insertions(+), 82 deletions(-)
commit 322aa3ad28b637b97ebcd8a07a2d861bd9de403c
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 19 Sep 2024 18:19:38 +0200
Pass interpolation to year-on-year coupons
ql/cashflows/capflooredinflationcoupon.cpp | 1 +
ql/cashflows/capflooredinflationcoupon.hpp | 29 +++++++++-
ql/cashflows/yoyinflationcoupon.cpp | 61 ++++++++++++++------
ql/cashflows/yoyinflationcoupon.hpp | 65 ++++++++++++++++------
.../inflation/interpolatedyoyoptionletstripper.hpp | 8 +--
ql/experimental/inflation/yoyoptionlethelpers.cpp | 17 +++++-
ql/experimental/inflation/yoyoptionlethelpers.hpp | 22 ++++++--
ql/instruments/makeyoyinflationcapfloor.cpp | 15 ++++-
ql/instruments/makeyoyinflationcapfloor.hpp | 11 ++++
ql/instruments/yearonyearinflationswap.cpp | 19 ++++++-
ql/instruments/yearonyearinflationswap.hpp | 22 +++++++-
test-suite/inflation.cpp | 4 ++
test-suite/inflationcapfloor.cpp | 4 +-
test-suite/inflationcapflooredcoupon.cpp | 5 +-
14 files changed, 228 insertions(+), 55 deletions(-)
commit 6061700cdfe6880ce36e72363142a6e88a48c277
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 19 Sep 2024 15:52:56 +0200
More uses of CPI::laggedFixing and laggedYoYRate
ql/cashflows/cpicoupon.cpp | 29 +++++------------------------
ql/cashflows/cpicoupon.hpp | 2 --
ql/cashflows/indexedcashflow.cpp | 5 +++--
ql/cashflows/yoyinflationcoupon.cpp | 5 ++++-
ql/cashflows/yoyinflationcoupon.hpp | 4 +++-
ql/cashflows/zeroinflationcashflow.cpp | 22 ++++++----------------
ql/cashflows/zeroinflationcashflow.hpp | 10 ++++++----
test-suite/inflationcpicapfloor.cpp | 2 +-
test-suite/inflationcpiswap.cpp | 3 +--
9 files changed, 29 insertions(+), 53 deletions(-)
commit 9686bae6ee66c4599bf7e2a94280830ef30a6eee
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 19 Sep 2024 12:27:25 +0200
No need for an explicit case
ql/indexes/inflationindex.cpp | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
commit 186fc7e844f1e4f7f301fdaf0640efb94fbf21a0
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 19 Sep 2024 12:13:30 +0200
Add utility to return lagged year-on-year inflation
ql/indexes/inflationindex.cpp | 59 +++++++++-
ql/indexes/inflationindex.hpp | 19 ++++
test-suite/inflation.cpp | 242 +++++++++++++++++++++++++++++++++++-------
3 files changed, 279 insertions(+), 41 deletions(-)
commit 4491778cb0ef27df724a551fdf99695da9609fd7
Merge: 2ccdba7d2 ecd3f9a44
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 17 Sep 2024 12:49:17 +0200
Inflation indexes are now better at deciding when to forecast (2070)
commit ecd3f9a44942f4e328a15bbe8f1a5a869e38c93d
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 17 Sep 2024 11:18:09 +0200
Remove more obsolete comments
ql/indexes/inflationindex.cpp | 17 ++++++-----------
1 file changed, 6 insertions(+), 11 deletions(-)
commit 6e91afae99d5f6c75c309106f4994fb95fb9693f
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 16 Sep 2024 15:56:10 +0200
Fix implementation of needsForecast for inflation indexes
ql/indexes/inflationindex.cpp | 57 ++++++++++------
ql/indexes/inflationindex.hpp | 13 +---
test-suite/inflation.cpp | 148 +++++++++++++++++++++++++++++++++++-------
3 files changed, 164 insertions(+), 54 deletions(-)
commit 6de585ea01d51c82807588b9cab17710bc326513
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 16 Sep 2024 10:23:06 +0200
Avoid interpolation if not needed
ql/indexes/inflationindex.cpp | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
commit 3e2f9e06a2852dce32e4f93c21c0ec4ef0fad31a
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Fri, 13 Sep 2024 17:05:56 +0200
Refactor YoYInflationIndex::fixing
ql/indexes/inflationindex.cpp | 83 ++++++++++++++++++-------------------------
ql/indexes/inflationindex.hpp | 1 +
2 files changed, 36 insertions(+), 48 deletions(-)
commit 79f8c39ca1370faf29b087a11e18a471a1cad97e
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 11 Sep 2024 18:32:07 +0200
Update some comments, removed some obsolete ones
ql/indexes/inflationindex.hpp | 53 ++++++++++++++++---------------------------
1 file changed, 19 insertions(+), 34 deletions(-)
commit 2ccdba7d273ae10c22f80f98ed629280fcae5175
Author: dependabot[bot] <49699333+dependabot[bot]users.noreply.github.com>
Date: Mon, 9 Sep 2024 11:17:04 +0000
Bump peter-evans/create-pull-request from 6 to 7
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6 to 7.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v6...v7)
---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <supportgithub.com>
.github/workflows/copyrights.yml | 2 +-
.github/workflows/generated-headers.yml | 2 +-
.github/workflows/misspell.yml | 2 +-
.github/workflows/namespaces.yml | 2 +-
.github/workflows/tidy.yml | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
commit 8c64bf06cfca0c2e6d48a37a2ee6722e24f19b1b
Author: Eugene Toder <eltodertwosigma.com>
Date: Sat, 17 Aug 2024 09:20:59 -0400
Improve global bootstrap optimizer configuration
Currently global bootstrap uses "accuracy" in several different ways:
* For all parameters passed to LevenbergMarquardt.
* For all epsilon parameters passed to EndCriteria.
* As the upper bound on the final value of the cost function.
This overloading makes it quite inflexible. Instead:
* Allow passing optimizer and EndCriteria to the constructor, which
allows full control over all parameters.
* Instead of checking the final value of the cost function, check the
result type from the optimizer.
Also, cleanup LevenbergMarquardt optimizer: remove commented out code,
fix parameters passed to MINPACK.
ql/math/optimization/endcriteria.cpp | 24 +++++++++-----
ql/math/optimization/endcriteria.hpp | 2 ++
ql/math/optimization/levenbergmarquardt.cpp | 44 +++++++++++++++----------
ql/math/optimization/levenbergmarquardt.hpp | 10 ++----
ql/termstructures/globalbootstrap.hpp | 51 ++++++++++++++++++-----------
ql/termstructures/localbootstrap.hpp | 5 ++-
6 files changed, 81 insertions(+), 55 deletions(-)
commit 436bd900dca83828f690525dd9821765c7346504
Merge: d8e0f1c9e 9f0c9b90c
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 26 Aug 2024 12:24:32 +0200
Deprecate some experimental code (2064)
commit 9f0c9b90c2202893239d8f56b1c6996884393632
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 26 Aug 2024 09:49:24 +0200
Deprecate some experimental code
ql/experimental/risk/creditriskplus.cpp | 4 +++
ql/experimental/risk/creditriskplus.hpp | 5 +--
ql/experimental/risk/sensitivityanalysis.cpp | 3 ++
ql/experimental/risk/sensitivityanalysis.hpp | 50 +++++++++++++++++++++++++---
test-suite/creditriskplus.cpp | 4 +++
5 files changed, 60 insertions(+), 6 deletions(-)
commit d8e0f1c9eebca252148ba1e480ea11a8c41d045f
Merge: fc4210fb0 ed3c9c9cd
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 20 Aug 2024 23:01:30 +0200
Added Warsaw Stock Exchange Calendar (Poland) (2063)
commit ed3c9c9cd7c0466b55bf2395069ee573f3a55151
Author: marcinfair <marcin.boguszfairvalue.pl>
Date: Tue, 20 Aug 2024 19:44:11 +0200
removal of accidental comment left
ql/time/calendars/poland.cpp | 1 -
1 file changed, 1 deletion(-)
commit 4620e307006fb7d1fba3d65a47b72677f4880a38
Author: marcinfair <marcin.boguszfairvalue.pl>
Date: Tue, 20 Aug 2024 15:07:52 +0200
Added Warsaw Stock Exchange Calendar
ql/indexes/ibor/wibor.hpp | 2 +-
ql/time/calendars/poland.cpp | 35 +++++++++++++++++++++++++++++++----
ql/time/calendars/poland.hpp | 16 +++++++++++++---
3 files changed, 45 insertions(+), 8 deletions(-)
commit fc4210fb0717121d12bd371569358d236c0e5b47
Merge: 302973df6 ce726f431
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 20 Aug 2024 14:07:07 +0200
Allow constraints in FittedBondDiscountCurve::FittingMethod (1954) (2059)
commit ce726f431c766cf4514f498c147cbaf2e39c4bca
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 20 Aug 2024 12:31:47 +0200
Modernize clone methods
ql/termstructures/yield/nonlinearfittingmethods.cpp | 18 ++++++------------
test-suite/fittedbonddiscountcurve.cpp | 2 +-
2 files changed, 7 insertions(+), 13 deletions(-)
commit 68251e7e0fcf462ca66f1302394ca942277d7c3f
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 20 Aug 2024 11:54:57 +0200
Add additional constraint to existing fitting methods
.../yield/nonlinearfittingmethods.cpp | 141 ++++++++++-----------
.../yield/nonlinearfittingmethods.hpp | 48 ++++---
2 files changed, 95 insertions(+), 94 deletions(-)
commit 3773b64950529de0e2c7a3d05b804797d93351a7
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 20 Aug 2024 11:37:36 +0200
Clean up example
test-suite/fittedbonddiscountcurve.cpp | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
commit 66b74d88f721a92920dc98003519468c014643ce
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 20 Aug 2024 11:31:13 +0200
No need of shared_ptr for Constraint class
ql/termstructures/yield/fittedbonddiscountcurve.cpp | 13 ++++++-------
ql/termstructures/yield/fittedbonddiscountcurve.hpp | 9 ++++-----
test-suite/fittedbonddiscountcurve.cpp | 4 +---
3 files changed, 11 insertions(+), 15 deletions(-)
commit 302973df6278b83f66227183c3ef04bbe1f32d38
Merge: 174d36e46 8113ea8d7
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 21:21:30 +0200
Upgrade clang-tidy in CI build (2062)
commit ff8fa3609f722729923a11fe49588652c900e926
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 16:31:08 +0200
Silence a few more warnings
.clang-tidy | 1 +
ql/cashflow.cpp | 4 ++--
ql/experimental/callablebonds/treecallablebondengine.cpp | 2 +-
ql/math/matrixutilities/tqreigendecomposition.cpp | 2 +-
ql/version.hpp | 1 -
5 files changed, 5 insertions(+), 5 deletions(-)
commit 174d36e46611a7370b4441ebebca43a4a7ec1672
Merge: 445672228 4e3d3399c
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 15:55:22 +0200
Fix defaulting of localOptimizer in HybridSimulatedAnnealing (2058)
commit 5072f0e95c60000a0d2e8c9c7f33df3f4ec02669
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 15:15:29 +0200
Agree to disagree with clang-tidy
.clang-tidy | 1 +
1 file changed, 1 insertion(+)
commit 4e3d3399c1d026474e1c7510aa6b63cb26ab283f
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 15:07:25 +0200
Modernize initialization
ql/experimental/math/hybridsimulatedannealing.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit af365f0a188e924d18ee62021bc1978d7ad22015
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Mon, 19 Aug 2024 11:07:28 +0000
Automated fixes by clang-tidy
ql/experimental/basismodels/swaptioncfs.hpp | 18 +++++------
ql/experimental/math/fireflyalgorithm.hpp | 2 +-
ql/experimental/math/hybridsimulatedannealing.hpp | 3 +-
.../math/hybridsimulatedannealingfunctors.hpp | 36 +++++++++++-----------
ql/experimental/math/isotropicrandomwalk.hpp | 8 ++---
ql/experimental/math/particleswarmoptimization.hpp | 24 +++++++--------
.../variancegamma/variancegammamodel.cpp | 5 +--
ql/instruments/bond.cpp | 7 +++--
ql/math/integrals/trapezoidintegral.hpp | 8 ++---
ql/math/interpolations/cubicinterpolation.hpp | 2 +-
ql/math/interpolations/lagrangeinterpolation.hpp | 2 +-
ql/math/linearleastsquaresregression.hpp | 2 +-
ql/math/sampledcurve.hpp | 4 +--
ql/methods/montecarlo/lsmbasissystem.cpp | 4 +--
ql/models/equity/batesmodel.cpp | 5 +--
ql/models/equity/gjrgarchmodel.cpp | 5 +--
ql/models/equity/hestonmodel.cpp | 5 +--
ql/pricingengines/forward/mcvarianceswapengine.hpp | 2 +-
ql/pricingengines/vanilla/mceuropeanengine.hpp | 2 +-
ql/termstructures/inflation/inflationhelpers.cpp | 9 +++---
ql/timeseries.hpp | 4 +--
ql/utilities/steppingiterator.hpp | 4 +--
test-suite/digitaloption.cpp | 9 +++---
test-suite/doublebinaryoption.cpp | 5 +--
24 files changed, 92 insertions(+), 83 deletions(-)
commit c627b3c8a6d0917aeed87cab2bc78327424cac27
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 12:21:55 +0200
Keep macro to allow if checks
ql/version.hpp | 1 +
1 file changed, 1 insertion(+)
commit e3fb82afe5f64590dae1d3ed5af848493eaf7dfd
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 10:59:07 +0200
Prevent botched fix from clang-tidy
ql/patterns/observable.hpp | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
commit 3a2c86d08e5348c6377e2f7f0f42b108b0976222
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 10:56:30 +0200
Don't remove casts needed for AAD support
.clang-tidy | 1 +
1 file changed, 1 insertion(+)
commit 445672228e2c7631e107853ddcf0317b5d6ff091
Merge: c0fac2421 903dda433
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 10:54:08 +0200
Correct documentation error in Svensson zero rate formula (2057)
commit 07cc23fd471fe120ca80da7c7a9f04ea211ab550
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 10:07:29 +0200
Upgrade clang-tidy in CI build
.github/workflows/tidy.yml | 4 ++--
CMakePresets.json | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
commit 903dda43386fe860b1b5788fb4aab84a35ad706a
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 19 Aug 2024 09:43:41 +0200
Fix LaTeX syntax in formulas
.../yield/nonlinearfittingmethods.hpp | 25 +++++++++++-----------
1 file changed, 13 insertions(+), 12 deletions(-)
commit 7d4de7722b4d007be8e26bd292eba9fd8a69f3e2
Author: Kai Lin <kai.lincoolabahcapital.com>
Date: Mon, 19 Aug 2024 12:51:43 +1000
Allow constraints in FittedBondDiscountCurve::FittingMethod (1954)
.../yield/fittedbonddiscountcurve.cpp | 11 +++--
.../yield/fittedbonddiscountcurve.hpp | 13 ++++-
test-suite/fittedbonddiscountcurve.cpp | 57 ++++++++++++++++++++++
3 files changed, 77 insertions(+), 4 deletions(-)
commit 59c6359bf36efdcfd5ea197eea74f2eace729700
Author: Eugene Toder <eltodertwosigma.com>
Date: Sat, 17 Aug 2024 09:11:42 -0400
Fix defaulting of localOptimizer in HybridSimulatedAnnealing
The current code changes the local variable `localOptimizer` which was
already used to initialize the member variable `localOptimizer_` and is
no longer used. Also, `localOptimizer` was already used to initialize
`optimizeScheme_`.
ql/experimental/math/hybridsimulatedannealing.hpp | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
commit 93306509813783dcb17716f68813d6f1c2811ac0
Author: twan3617 <tonywang205yahoo.com.au>
Date: Fri, 16 Aug 2024 10:45:25 +1000
Correct documentation error in Svensson zero rate formula
ql/termstructures/yield/nonlinearfittingmethods.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit c0fac242125283ac78984a21dd577e23823d23d6
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Sun, 11 Aug 2024 02:23:37 +0000
Automated fixes by clang-tidy
ql/termstructures/yield/oisratehelper.cpp | 2 +-
ql/termstructures/yield/oisratehelper.hpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit 6ba32c7fa7f0c4f39ae8e221ea71adce4491a368
Merge: 897ddbe4a f05e6dc3d
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 12 Aug 2024 20:04:44 +0200
Small fixes for AAD (2056)
commit f05e6dc3d606492af35b80e4f14bffc0b2da63e2
Author: imraneamri <mohammad.amriucdconnect.ie>
Date: Sun, 11 Aug 2024 22:55:58 +0100
::normal_distribution instantiated with Real rather than double & std::inner_product is called with Real constructed as Real(0.) rather than '0.'
ql/experimental/credit/spotlosslatentmodel.hpp | 10 +++++-----
ql/pricingengines/blackformula.cpp | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
commit 897ddbe4acdcb11b48b79feeed3806fc1499da7b
Merge: 4e5dd7269 94e5c2235
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 7 Aug 2024 16:50:09 +0200
Allow passing a pricer to OISRateHelper, deprecate superseded experimental classes (2052)
commit 94e5c22353ecc38bfc7cc78d53e6d038988efa03
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 7 Aug 2024 15:08:33 +0200
Exclude empty header
cmake/GenerateHeaders.cmake | 1 +
ql/experimental/averageois/Makefile.am | 2 +-
ql/experimental/averageois/all.hpp | 1 -
3 files changed, 2 insertions(+), 2 deletions(-)
commit 0c82ed0ff8b25248a85c460c064470d3b001a3b3
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 7 Aug 2024 15:04:28 +0200
Report all test-case errors, not just the first
test-suite/overnightindexedswap.cpp | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
commit 1a81cb1e9d7209e3be768134a030a672a297b245
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 7 Aug 2024 12:12:04 +0200
Deprecated superseded experimental classes
ql/experimental/averageois/arithmeticaverageois.cpp | 4 ++++
ql/experimental/averageois/arithmeticaverageois.hpp | 19 ++++++++-----------
.../averageois/arithmeticoisratehelper.cpp | 4 ++++
.../averageois/arithmeticoisratehelper.hpp | 8 ++++++--
.../averageois/makearithmeticaverageois.cpp | 4 ++++
.../averageois/makearithmeticaverageois.hpp | 11 +++++++----
6 files changed, 33 insertions(+), 17 deletions(-)
commit 506ff1fc31cff1c3fc78bc2ee64639b6fc801812
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 7 Aug 2024 12:00:37 +0200
Modernize allocations and index
test-suite/overnightindexedswap.cpp | 228 ++++++++++++++++++------------------
1 file changed, 112 insertions(+), 116 deletions(-)
commit 04cf542684b92ce166ed1479ed69ffaa84394af5
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 7 Aug 2024 11:51:19 +0200
Allow custom coupon pricer in OIS rate helpers
ql/termstructures/yield/oisratehelper.cpp | 18 +++++--
ql/termstructures/yield/oisratehelper.hpp | 11 +++--
test-suite/overnightindexedswap.cpp | 78 ++++++++++++++++++++++++++++++-
3 files changed, 98 insertions(+), 9 deletions(-)
commit 4e5dd7269c4a31b33089eb40e0971f980ff8795d
Merge: 2243398e3 1c9494a1b
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 5 Aug 2024 16:19:50 +0200
Expose `OvernightIndexedCouponPricer` (2024)
commit 1c9494a1b5dd92fca4bde07ba0bf8b23a94eec70
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 5 Aug 2024 15:35:03 +0200
Include instructions in deprecation warning
ql/experimental/averageois/averageoiscouponpricer.hpp | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
commit 7b2e01913f49021cb9ec7c77838c6d0c43af8fac
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 5 Aug 2024 15:34:25 +0200
Modernize a couple of initializations
ql/cashflows/overnightindexedcoupon.cpp | 26 +++++++++++---------------
1 file changed, 11 insertions(+), 15 deletions(-)
commit e5b882a855aa4bfb75c7e4278b2e385131b3069e
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 5 Aug 2024 15:33:45 +0200
Fix typo and a few warnings
ql/cashflows/overnightindexedcoupon.cpp | 4 ++--
ql/cashflows/overnightindexedcoupon.hpp | 16 +++++++---------
2 files changed, 9 insertions(+), 11 deletions(-)
commit 2243398e3113b8c3d2b4b7a6958099e7dcea09b4
Merge: 855e7f44a 638cbf2a0
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 5 Aug 2024 12:08:58 +0200
Add more warnings to W3 (2048)
commit 638cbf2a0e1679ff954bc4ff4648e1394c564a25
Author: Jonathan Sweemer <sweemergmail.com>
Date: Sat, 3 Aug 2024 09:20:38 +0900
Add more warnings to W3
cmake/Platform.cmake | 8 +++++++-
ql/math/integrals/exponentialintegrals.cpp | 2 --
ql/pricingengines/vanilla/analytichestonengine.cpp | 4 +++-
ql/time/ecb.cpp | 1 -
4 files changed, 10 insertions(+), 5 deletions(-)
commit 855e7f44aea6b5fe262108caa8461919576c0f6f
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 5 Aug 2024 10:14:05 +0200
Fix or silence a few more tidy warnings
ql/experimental/math/laplaceinterpolation.cpp | 2 +-
ql/instruments/makecds.cpp | 3 ++-
ql/pricingengines/swap/discretizedswap.cpp | 2 +-
test-suite/quantlibbenchmark.cpp | 6 +++---
test-suite/quantlibglobalfixture.cpp | 4 ++--
5 files changed, 9 insertions(+), 8 deletions(-)
commit c361cdf8f26780ca3b20edeea7c0b8648e44ae32
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Sun, 4 Aug 2024 03:58:48 +0000
Automated fixes by clang-tidy
ql/pricingengines/blackformula.cpp | 2 +-
test-suite/defaultprobabilitycurves.cpp | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
commit 0e83ab7d6b83fd3d6f286f0b4bb72a6411267276
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 1 Aug 2024 10:39:16 +0200
Check a couple of vector accesses
ql/timegrid.hpp | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
commit 01ba5068b78e7cae7f6430598ad0daf007b16e95
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 1 Aug 2024 09:34:22 +0200
Add CI build for gcc 14
.github/workflows/devenv-images.yml | 2 +-
.github/workflows/linux-full-tests.yml | 5 +++++
.github/workflows/linux-nondefault.yml | 5 +++++
.github/workflows/linux.yml | 6 ++++++
4 files changed, 17 insertions(+), 1 deletion(-)
commit 3ac875295491b84e13aa044174e565ec81cc6b92
Author: ralfkonrad <githubeckel-consulting.de>
Date: Tue, 30 Jul 2024 18:34:46 +0200
Move ArithmeticAveragedOvernightIndexedCouponPricer into overnightindexedcouponpricer files
QuantLib.vcxproj | 1 -
QuantLib.vcxproj.filters | 3 -
ql/CMakeLists.txt | 1 -
ql/cashflows/overnightindexedcoupon.cpp | 1 -
ql/cashflows/overnightindexedcouponpricer.cpp | 114 +++++++++++++++-
ql/cashflows/overnightindexedcouponpricer.hpp | 34 +++++
ql/experimental/averageois/Makefile.am | 1 -
.../averageois/arithmeticaverageois.cpp | 2 +-
.../averageois/averageoiscouponpricer.cpp | 146 ---------------------
.../averageois/averageoiscouponpricer.hpp | 44 +------
10 files changed, 146 insertions(+), 201 deletions(-)
commit 8425c5040e6575e6272479f93fffb5d885a06304
Author: ralfkonrad <githubeckel-consulting.de>
Date: Tue, 30 Jul 2024 18:12:40 +0200
Move CompoundingOvernightIndexedCouponPricer into overnightindexedcouponpricer files
QuantLib.vcxproj | 2 +
QuantLib.vcxproj.filters | 6 +
ql/CMakeLists.txt | 2 +
ql/cashflows/Makefile.am | 2 +
ql/cashflows/all.hpp | 1 +
ql/cashflows/overnightindexedcoupon.cpp | 149 +--------------------
ql/cashflows/overnightindexedcoupon.hpp | 19 ---
ql/cashflows/overnightindexedcouponpricer.cpp | 179 ++++++++++++++++++++++++++
ql/cashflows/overnightindexedcouponpricer.hpp | 57 ++++++++
9 files changed, 250 insertions(+), 167 deletions(-)
commit dce7eebc32abeef1783faeadf0be648ac8960ee3
Author: ralfkonrad <githubeckel-consulting.de>
Date: Tue, 30 Jul 2024 09:13:29 +0200
Fix typo
ql/cashflows/overnightindexedcoupon.cpp | 10 +++++-----
ql/cashflows/overnightindexedcoupon.hpp | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
commit a05c5120de240325ef04a6731a3bef6742b1784f
Merge: 826075f6b 193e32ff3
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 20:19:38 +0200
Remove leftover test class (2046)
commit 826075f6ba307c6fc4cba90cd2c24791db3958cd
Merge: 2230bcce3 0d13eb29b
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 17:31:13 +0200
Start of month functions (2034)
commit 2230bcce319a31d3d160dc530732b4f038f83fa6
Merge: 577284865 df04c16f0
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 16:51:01 +0200
Enable C4127 at W3 warning level (2045)
commit 577284865b58439c83f818508ac1d43444ac24ce
Merge: 66ac60d6e c854196ad
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 16:12:51 +0200
Use std headers in examples and tests (2043)
commit 66ac60d6ea59c564c205a625665afc5b2aa23e18
Merge: 3d45b9acb 403b2e489
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 15:32:52 +0200
Update ext::optional for C++17 (2042)
commit 0d13eb29bf0957273f6abde94b2b9c76c4ea50c9
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 14:56:24 +0200
Reuse method for high-resolution dates
ql/time/date.hpp | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
commit 09dc04214b10fc66bd58fe734d82426a77901d58
Author: ralfkonrad <githubeckel-consulting.de>
Date: Mon, 29 Jul 2024 14:43:30 +0200
Renamed pricer to CompoudingOvernightIndexedCouponPricer
ql/cashflows/overnightindexedcoupon.cpp | 18 +++++++++---------
ql/cashflows/overnightindexedcoupon.hpp | 4 ++--
2 files changed, 11 insertions(+), 11 deletions(-)
commit e79fec8d4e6e71f02d5d0c9c6012aa2fd03324a0
Author: ralfkonrad <githubeckel-consulting.de>
Date: Mon, 29 Jul 2024 14:30:40 +0200
Remove withOvernightIndexedCouponPricer(...) as a similar method is not provided e.g. for IborLeg
ql/cashflows/overnightindexedcoupon.cpp | 6 ------
ql/cashflows/overnightindexedcoupon.hpp | 4 ----
2 files changed, 10 deletions(-)
commit 5de635f0572f1326a713761417b6c68f9282f14e
Author: Francois Botha <igiturgmail.com>
Date: Mon, 29 Jul 2024 09:13:35 +0200
Simplify isStartOfMonth and isEndOfMonth functions
ql/time/calendar.hpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 193e32ff394cb7f21d1ac2ed334334e86400945a
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 12:00:36 +0200
Remove leftover utility class
test-suite/utilities.hpp | 31 -------------------------------
1 file changed, 31 deletions(-)
commit df04c16f08bed8a42fcc4e4dd4d74be94fc8f420
Author: Jonathan Sweemer <sweemergmail.com>
Date: Sun, 28 Jul 2024 07:41:10 +0900
Enable C4127 at W3 warning level
cmake/Platform.cmake | 13 +++---
.../barrieroption/mcdoublebarrierengine.hpp | 6 +--
ql/experimental/exoticoptions/mceverestengine.hpp | 2 +-
ql/experimental/exoticoptions/mchimalayaengine.hpp | 6 +--
ql/experimental/exoticoptions/mcpagodaengine.hpp | 2 +-
.../mcbasket/mclongstaffschwartzpathengine.hpp | 12 +++---
ql/experimental/mcbasket/mcpathbasketengine.hpp | 2 +-
.../asian/mcdiscreteasianenginebase.hpp | 6 +--
ql/pricingengines/barrier/mcbarrierengine.hpp | 6 +--
.../basket/mceuropeanbasketengine.hpp | 6 +--
ql/pricingengines/capfloor/mchullwhiteengine.hpp | 3 +-
ql/pricingengines/cliquet/mcperformanceengine.hpp | 6 +--
.../forward/mcforwardvanillaengine.hpp | 8 ++--
ql/pricingengines/forward/mcvarianceswapengine.hpp | 2 +-
ql/pricingengines/lookback/mclookbackengine.hpp | 2 +-
ql/pricingengines/mclongstaffschwartzengine.hpp | 2 +-
ql/pricingengines/vanilla/mcvanillaengine.hpp | 6 +--
test-suite/andreasenhugevolatilityinterpl.cpp | 2 +-
test-suite/nthtodefault.cpp | 46 +++++++++++-----------
19 files changed, 68 insertions(+), 70 deletions(-)
commit 403b2e4891626f4473804666535f5a46f261fe41
Author: Jonathan Sweemer <sweemergmail.com>
Date: Sun, 28 Jul 2024 07:56:11 +0900
Update ext::optional for C++17
QuantLib.vcxproj | 1 -
QuantLib.vcxproj.filters | 1 -
ql/CMakeLists.txt | 5 ++---
ql/Makefile.am | 4 +---
ql/optional.cpp | 29 -----------------------------
ql/optional.hpp | 4 +---
6 files changed, 4 insertions(+), 40 deletions(-)
commit c854196ad8a33fa94d0af55c2fec4d3a5ac84fec
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 11:55:09 +0200
Use std headers in examples and tests
That is, <tuple> and <functional> instead of <ql/tuple.hpp> and
<ql/functional.hpp>. The latter are obsolete, so we avoid them
in examples and tests, which are the source files people would
use as models for their own coding.
Examples/GlobalOptimizer/GlobalOptimizer.cpp | 3 +--
Examples/MultidimIntegral/MultidimIntegral.cpp | 4 +---
test-suite/fdheston.cpp | 27 ++++++++++++------------
test-suite/fdmlinearop.cpp | 2 +-
test-suite/fdsabr.cpp | 2 +-
test-suite/interpolations.cpp | 29 ++++++++++++--------------
test-suite/linearleastsquaresregression.cpp | 2 +-
test-suite/normalclvmodel.cpp | 2 +-
test-suite/utilities.hpp | 2 +-
9 files changed, 33 insertions(+), 40 deletions(-)
commit 3d45b9acb5fb4f7fcfaff1552f2e6063d51ca490
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Sun, 28 Jul 2024 01:46:43 +0000
Automated fixes by clang-tidy
ql/experimental/commodities/commoditycurve.cpp | 6 +++---
ql/experimental/commodities/energybasisswap.cpp | 6 ++----
ql/experimental/commodities/energycommodity.cpp | 15 +++++++--------
ql/experimental/commodities/energyfuture.cpp | 4 ++--
ql/experimental/commodities/energyvanillaswap.cpp | 6 ++----
ql/experimental/variancegamma/fftengine.cpp | 8 ++++----
ql/instruments/compositeinstrument.cpp | 4 ++--
test-suite/defaultprobabilitycurves.cpp | 4 ++--
test-suite/piecewiseyieldcurve.cpp | 6 +++---
9 files changed, 27 insertions(+), 32 deletions(-)
commit 9d01e0387b156db77808e657dcd181cf2e191c5d
Merge: 3a3ea734b 11c855944
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 08:25:01 +0200
add exact Bachelier implied vol from Jaeckel paper (2028)
commit 3a3ea734b2b7fd3729eb260a0f9f4c9147540857
Merge: 35ac323fc e41bbded4
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 07:41:26 +0200
Set C++ standard also for client code using CMake (2037)
commit 35ac323fc13cf3e2592ff3c531a93a381674b82e
Merge: 39439a65e 25924fa89
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 07:37:55 +0200
Update .clang-format and check_header.py to C++17 (2038)
commit 39439a65ef6b781cbbf1261a4e506e2d1212457f
Merge: 7432f806e f00816baf
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Mon, 29 Jul 2024 07:37:08 +0200
Remove workaround for GCC 3.4 and below (2040)
commit f00816bafff45692648283f30bd3daf4ab45f0c3
Author: Jonathan Sweemer <sweemergmail.com>
Date: Sun, 28 Jul 2024 08:25:35 +0900
Remove workaround for GCC 3.4 and below
ql/math/optimization/simplex.cpp | 20 --------------------
1 file changed, 20 deletions(-)
commit 25924fa89ee0cfe09a4616f0375a5549bcdfe8f3
Author: Jonathan Sweemer <sweemergmail.com>
Date: Sun, 28 Jul 2024 07:59:03 +0900
Update .clang-format and check_header.py to C++17
.clang-format | 4 ++--
tools/check_header.py | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
commit 11c855944a5e143b4beb88f5e35f86dbbae29a29
Author: Peter Caspers <peter.caspersacadia.inc>
Date: Fri, 26 Jul 2024 19:28:11 +0200
make jaeckel the default name
ql/pricingengines/blackformula.cpp | 24 ++++++++++++------------
ql/pricingengines/blackformula.hpp | 24 ++++++++++++------------
test-suite/blackformula.cpp | 8 ++++----
3 files changed, 28 insertions(+), 28 deletions(-)
commit e41bbded4d4aafc8233af564aeeb181ccbee70ce
Author: Auto Differentiation Dev Team <107129969+auto-differentiation-devusers.noreply.github.com>
Date: Fri, 26 Jul 2024 13:05:01 +0100
Adds comment for C++ standard compile feature
ql/CMakeLists.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 4915b934501247bdf0eee207bcc42fe1a61250f8
Author: Auto Differentiation Dev Team <107129969+auto-differentiation-devusers.noreply.github.com>
Date: Fri, 26 Jul 2024 13:01:35 +0100
propagate required C++ standard to client code
ql/CMakeLists.txt | 3 +++
1 file changed, 3 insertions(+)
commit 7432f806eba7d33a31de6bd98abae84b7c9f8444
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Fri, 26 Jul 2024 09:45:36 +0200
Add CI build in C++23 mode
.github/workflows/linux-full-tests.yml | 6 ++++++
.github/workflows/linux-nondefault.yml | 6 ++++++
.github/workflows/linux.yml | 6 ++++++
3 files changed, 18 insertions(+)
commit 4c7dce9f078357d7c3fabf5b98bb8e59d3ed99dd
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Wed, 24 Jul 2024 16:07:40 +0000
Automated fixes by clang-tidy
ql/any.hpp | 6 +---
ql/cashflows/cashflowvectors.cpp | 6 +---
ql/cashflows/timebasket.cpp | 2 +-
.../asian/analytic_cont_geom_av_price_heston.cpp | 2 +-
.../asian/analytic_discr_geom_av_price_heston.cpp | 2 +-
ql/experimental/commodities/commoditycurve.cpp | 2 +-
ql/experimental/commodities/commoditycurve.hpp | 2 +-
ql/experimental/commodities/commoditytype.cpp | 2 +-
ql/experimental/commodities/energybasisswap.cpp | 2 +-
ql/experimental/commodities/energycommodity.cpp | 2 +-
ql/experimental/commodities/energyfuture.cpp | 2 +-
ql/experimental/commodities/energyvanillaswap.cpp | 2 +-
ql/experimental/commodities/paymentterm.cpp | 2 +-
ql/experimental/commodities/unitofmeasure.cpp | 3 +-
ql/experimental/credit/binomiallossmodel.hpp | 2 +-
.../credit/randomdefaultlatentmodel.hpp | 2 +-
ql/experimental/math/piecewiseintegral.cpp | 2 +-
ql/experimental/models/squarerootclvmodel.cpp | 2 +-
ql/experimental/swaptions/irregularswap.cpp | 4 +--
ql/experimental/variancegamma/fftengine.cpp | 2 +-
ql/experimental/volatility/noarbsabr.hpp | 4 +--
ql/experimental/volatility/noarbsabrabsprobs.cpp | 4 +--
ql/functional.hpp | 8 ++---
ql/indexes/inflationindex.hpp | 4 +--
ql/instrument.hpp | 2 +-
ql/instruments/assetswap.cpp | 4 +--
ql/instruments/compositeinstrument.cpp | 2 +-
ql/instruments/equitytotalreturnswap.cpp | 6 ++--
ql/instruments/floatfloatswap.cpp | 8 ++---
ql/instruments/impliedvolatility.hpp | 6 +---
ql/instruments/nonstandardswap.cpp | 6 ++--
ql/instruments/zerocouponswap.cpp | 2 +-
ql/math/integrals/exponentialintegrals.hpp | 34 ++++++++++------------
ql/math/interpolations/xabrinterpolation.hpp | 5 +---
ql/math/optimization/lmdif.cpp | 4 +--
ql/math/optimization/lmdif.hpp | 5 +---
.../fdmarithmeticaveragecondition.cpp | 2 +-
.../stepconditions/fdmsimplestoragecondition.cpp | 2 +-
.../stepconditions/fdmsimpleswingcondition.cpp | 2 +-
.../utilities/localvolrndcalculator.cpp | 4 +--
ql/optional.cpp | 6 +---
ql/optional.hpp | 6 +---
ql/pricingengines/basket/stulzengine.cpp | 6 ++--
ql/pricingengines/capfloor/mchullwhiteengine.cpp | 6 +---
ql/pricingengines/credit/isdacdsengine.cpp | 8 ++---
.../forward/replicatingvarianceswapengine.hpp | 2 +-
ql/pricingengines/swap/cvaswapengine.cpp | 2 +-
ql/processes/gsrprocesscore.cpp | 18 +++++-------
ql/processes/gsrprocesscore.hpp | 6 +---
ql/shared_ptr.hpp | 6 +---
.../equityfx/andreasenhugevolatilityinterpl.cpp | 4 +--
.../volatility/optionlet/optionletstripper2.cpp | 2 +-
ql/time/schedule.hpp | 8 ++---
ql/timegrid.hpp | 2 +-
ql/timeseries.hpp | 4 +--
ql/tuple.hpp | 6 +---
ql/utilities/dataformatters.cpp | 6 +---
ql/utilities/tracing.cpp | 8 +----
ql/utilities/tracing.hpp | 6 +---
ql/utilities/vectors.hpp | 6 +---
test-suite/americanoption.cpp | 4 +--
test-suite/bonds.cpp | 2 +-
test-suite/cliquetoption.cpp | 2 +-
test-suite/defaultprobabilitycurves.cpp | 2 +-
test-suite/hestonmodel.cpp | 2 +-
test-suite/piecewiseyieldcurve.cpp | 2 +-
test-suite/quantooption.cpp | 2 +-
67 files changed, 109 insertions(+), 190 deletions(-)
commit 51b63ddc1b4753f1d32b85458f802b81fa5687e8
Merge: 1df5b6a9a 72a7e1a81
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 25 Jul 2024 17:39:23 +0200
Use C++17 as minimum standard version (2036)
commit 1df5b6a9a15352f7981bf34122d20aefad3b2756
Merge: c75f65f05 1b5e85f2e
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 25 Jul 2024 16:00:27 +0200
Extend `Index` interface (2022)
commit c75f65f05e4818410bea3e636e41a8cbaae5c145
Merge: 1b9bef129 90e04ccb9
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 25 Jul 2024 14:36:45 +0200
Add `Currency` information to `EquityIndex` (2020)
commit 90e04ccb93de9acffe1da0d8330d7ab95a58b7cd
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 25 Jul 2024 13:30:46 +0200
Deprecate the old constructor
ql/indexes/equityindex.hpp | 8 ++++++--
test-suite/equitycashflow.cpp | 4 ++--
test-suite/equityindex.cpp | 7 ++++---
test-suite/equitytotalreturnswap.cpp | 8 ++++----
4 files changed, 16 insertions(+), 11 deletions(-)
commit 6331e50779f2c50d0294492e084cedae47e5c986
Author: Francois Botha <igiturgmail.com>
Date: Wed, 24 Jul 2024 17:47:09 +0200
Add more start-of-month and end-of-month calendar tests
test-suite/calendars.cpp | 10 ++++++++++
1 file changed, 10 insertions(+)
commit 71b79d7bdaa2e3a71b74069c279f24f28ea62a54
Author: Francois Botha <igiturgmail.com>
Date: Wed, 24 Jul 2024 17:37:00 +0200
Add start of month functions
ql/time/calendar.hpp | 14 ++++++++++++++
ql/time/date.hpp | 14 ++++++++++++++
test-suite/calendars.cpp | 20 ++++++++++++++++++++
3 files changed, 48 insertions(+)
commit 72a7e1a81738594eb1412e8464a01e258da3f8fc
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 24 Jul 2024 17:18:00 +0200
Thanks, clang-tidy, but that's a bit too much
.clang-tidy | 1 +
1 file changed, 1 insertion(+)
commit 346cca50e7f03b1f8e8af50196ec372948d31b30
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 24 Jul 2024 17:11:44 +0200
Update all VC++ projects
Examples/BasketLosses/BasketLosses.vcxproj | 26 ++++++++++++++--------
Examples/BermudanSwaption/BermudanSwaption.vcxproj | 26 ++++++++++++++--------
Examples/Bonds/Bonds.vcxproj | 26 ++++++++++++++--------
Examples/CDS/CDS.vcxproj | 26 ++++++++++++++--------
Examples/CVAIRS/CVAIRS.vcxproj | 26 ++++++++++++++--------
Examples/CallableBonds/CallableBonds.vcxproj | 26 ++++++++++++++--------
Examples/ConvertibleBonds/ConvertibleBonds.vcxproj | 26 ++++++++++++++--------
Examples/DiscreteHedging/DiscreteHedging.vcxproj | 26 ++++++++++++++--------
Examples/EquityOption/EquityOption.vcxproj | 26 ++++++++++++++--------
Examples/FRA/FRA.vcxproj | 26 ++++++++++++++--------
Examples/FittedBondCurve/FittedBondCurve.vcxproj | 26 ++++++++++++++--------
Examples/Gaussian1dModels/Gaussian1dModels.vcxproj | 26 ++++++++++++++--------
Examples/GlobalOptimizer/GlobalOptimizer.vcxproj | 26 ++++++++++++++--------
Examples/LatentModel/LatentModel.vcxproj | 26 ++++++++++++++--------
Examples/MarketModels/MarketModels.vcxproj | 26 ++++++++++++++--------
.../MulticurveBootstrapping.vcxproj | 26 ++++++++++++++--------
Examples/MultidimIntegral/MultidimIntegral.vcxproj | 26 ++++++++++++++--------
Examples/Replication/Replication.vcxproj | 26 ++++++++++++++--------
Examples/Repo/Repo.vcxproj | 26 ++++++++++++++--------
test-suite/testsuite.vcxproj | 26 ++++++++++++++--------
20 files changed, 340 insertions(+), 180 deletions(-)
commit df8e4169c9cdd477cd8634b2a6110f4bde590c27
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 24 Jul 2024 10:40:40 +0200
No need to specify C++17 standard now
CMakePresets.json | 2 --
1 file changed, 2 deletions(-)
commit 1b9bef129015993f15d3a06cd2f7a734903be26c
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 24 Jul 2024 10:18:20 +0200
Move test to faster section
test-suite/basketoption.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 9896e7565db44f1b3caba7154d75bf7c515fb2ab
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 24 Jul 2024 09:06:41 +0200
--enable-std-classes now includes any and optional
.github/workflows/cmake.yml | 6 ++++++
.github/workflows/linux-full-tests.yml | 5 +++--
.github/workflows/linux-nondefault.yml | 5 +++--
.github/workflows/linux.yml | 5 +++--
.github/workflows/macos-nondefault.yml | 3 ++-
CMakeLists.txt | 15 ++-------------
CMakePresets.json | 8 ++------
configure.ac | 13 ++++++++-----
8 files changed, 29 insertions(+), 31 deletions(-)
commit 5551e965344177cc1cbb56ecef9ce2e30db17846
Merge: 250bd388b c3d7f45ff
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Wed, 24 Jul 2024 08:47:12 +0200
Remove switches to enable boost::function, boost::bind, boost::tuple and related functions (2032)
commit c3d7f45ff8e5a735abe8abb8f8f30c70e4c9f5d6
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 20:49:00 +0200
Avoid gcc warning in older versions
ql/functional.hpp | 9 +++++++++
1 file changed, 9 insertions(+)
commit 5c1d4ca6f98368e1ec016d735aa5352c8582db3b
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 19:07:17 +0200
Require C++17 standard in VC++ project
QuantLib.vcxproj | 24 ++++++++++++++++--------
1 file changed, 16 insertions(+), 8 deletions(-)
commit c9e16311d6c5b9d18d0fb20a198716811b84bf9a
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 18:12:53 +0200
Add a few structured bindings to check C++17 compilation
ql/experimental/termstructures/crosscurrencyratehelpers.cpp | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
commit 3f98c711023f7b7e53cda83a9b166018516a7f3e
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 18:09:03 +0200
Require C++17 in autotools and cmake
.github/workflows/linux-full-tests.yml | 6 ------
.github/workflows/linux-nondefault.yml | 7 -------
.github/workflows/linux.yml | 6 ------
.github/workflows/macos-nondefault.yml | 3 +--
CMakeLists.txt | 10 +++++-----
acinclude.m4 | 26 ++++++++++++--------------
configure.ac | 4 ++--
quantlib-config.in | 2 +-
quantlib.pc.in | 2 +-
9 files changed, 22 insertions(+), 44 deletions(-)
commit 250bd388b69adb7069759fb4bbd8d3050211aba6
Merge: 03e0c62d6 99aa50aff
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 17:37:20 +0200
Remove support for Visual C++ 2015. (2030)
commit d45d6c25f53a948a8a5e55464464aba6139a5081
Author: github-actions[bot] <41898282+github-actions[bot]users.noreply.github.com>
Date: Tue, 23 Jul 2024 15:18:23 +0000
Fix deprecated uses of ext namespace
Examples/GlobalOptimizer/GlobalOptimizer.cpp | 4 +-
Examples/MultidimIntegral/MultidimIntegral.cpp | 2 +-
ql/cashflows/conundrumpricer.cpp | 14 +++----
.../perturbativebarrieroptionengine.cpp | 10 ++---
ql/experimental/callablebonds/callablebond.cpp | 8 ++--
.../credit/randomdefaultlatentmodel.hpp | 8 ++--
ql/experimental/credit/saddlepointlossmodel.hpp | 40 +++++++++----------
.../finitedifferences/fdmvppstepcondition.hpp | 2 +-
.../gaussiannoncentralchisquaredpolynomial.cpp | 8 ++--
.../gaussiannoncentralchisquaredpolynomial.hpp | 2 +-
ql/experimental/math/latentmodel.hpp | 18 ++++-----
ql/experimental/math/multidimintegrator.hpp | 18 ++++-----
ql/experimental/math/multidimquadrature.hpp | 36 ++++++++---------
ql/experimental/math/piecewiseintegral.hpp | 8 ++--
.../mcbasket/longstaffschwartzmultipathpricer.hpp | 2 +-
ql/experimental/models/normalclvmodel.cpp | 4 +-
ql/experimental/models/normalclvmodel.hpp | 4 +-
ql/experimental/models/squarerootclvmodel.cpp | 4 +-
ql/experimental/models/squarerootclvmodel.hpp | 4 +-
.../processes/extendedornsteinuhlenbeckprocess.cpp | 6 +--
.../processes/extendedornsteinuhlenbeckprocess.hpp | 4 +-
ql/experimental/shortrate/generalizedhullwhite.cpp | 12 +++---
ql/experimental/shortrate/generalizedhullwhite.hpp | 32 +++++++--------
.../generalizedornsteinuhlenbeckprocess.cpp | 2 +-
.../generalizedornsteinuhlenbeckprocess.hpp | 8 ++--
.../integralhestonvarianceoptionengine.cpp | 2 +-
ql/math/integrals/discreteintegrals.cpp | 4 +-
ql/math/integrals/discreteintegrals.hpp | 4 +-
ql/math/integrals/expsinhintegral.hpp | 8 ++--
ql/math/integrals/filonintegral.cpp | 4 +-
ql/math/integrals/filonintegral.hpp | 2 +-
ql/math/integrals/gaussianquadratures.cpp | 2 +-
ql/math/integrals/gaussianquadratures.hpp | 2 +-
ql/math/integrals/gausslobattointegral.cpp | 6 +--
ql/math/integrals/gausslobattointegral.hpp | 6 +--
ql/math/integrals/integral.cpp | 2 +-
ql/math/integrals/integral.hpp | 4 +-
ql/math/integrals/kronrodintegral.cpp | 6 +--
ql/math/integrals/kronrodintegral.hpp | 6 +--
ql/math/integrals/segmentintegral.hpp | 4 +-
ql/math/integrals/simpsonintegral.hpp | 2 +-
ql/math/integrals/tanhsinhintegral.hpp | 4 +-
ql/math/integrals/trapezoidintegral.hpp | 6 +--
ql/math/integrals/twodimensionalintegral.hpp | 4 +-
ql/math/interpolations/chebyshevinterpolation.cpp | 4 +-
ql/math/interpolations/chebyshevinterpolation.hpp | 2 +-
ql/math/linearleastsquaresregression.hpp | 10 ++---
ql/math/matrixutilities/bicgstab.hpp | 2 +-
ql/math/matrixutilities/gmres.hpp | 2 +-
ql/math/matrixutilities/tapcorrelations.hpp | 4 +-
ql/math/ode/adaptiverungekutta.hpp | 4 +-
ql/math/optimization/lmdif.hpp | 2 +-
.../randomnumbers/stochasticcollocationinvcdf.cpp | 4 +-
.../randomnumbers/stochasticcollocationinvcdf.hpp | 2 +-
ql/math/richardsonextrapolation.cpp | 2 +-
ql/math/richardsonextrapolation.hpp | 4 +-
.../meshers/concentrating1dmesher.cpp | 8 ++--
.../meshers/concentrating1dmesher.hpp | 2 +-
.../operators/nthorderderivativeop.cpp | 2 +-
.../operators/numericaldifferentiation.cpp | 4 +-
.../operators/numericaldifferentiation.hpp | 6 +--
.../utilities/escroweddividendadjustment.cpp | 2 +-
.../utilities/escroweddividendadjustment.hpp | 4 +-
.../utilities/fdmdiscountdirichletboundary.cpp | 2 +-
.../utilities/fdminnervaluecalculator.cpp | 6 +--
.../utilities/fdminnervaluecalculator.hpp | 4 +-
.../utilities/fdmmesherintegral.cpp | 2 +-
.../utilities/fdmmesherintegral.hpp | 4 +-
.../utilities/fdmtimedepdirichletboundary.cpp | 4 +-
.../utilities/fdmtimedepdirichletboundary.hpp | 8 ++--
ql/methods/montecarlo/earlyexercisepathpricer.hpp | 2 +-
.../montecarlo/longstaffschwartzpathpricer.hpp | 2 +-
ql/methods/montecarlo/lsmbasissystem.cpp | 4 +-
ql/methods/montecarlo/lsmbasissystem.hpp | 4 +-
ql/models/equity/hestonslvfdmmodel.cpp | 20 +++++-----
.../basket/mcamericanbasketengine.cpp | 2 +-
.../basket/mcamericanbasketengine.hpp | 4 +-
ql/pricingengines/vanilla/analytichestonengine.cpp | 20 +++++-----
ql/pricingengines/vanilla/analytichestonengine.hpp | 6 +--
.../vanilla/analyticptdhestonengine.cpp | 2 +-
ql/pricingengines/vanilla/fdcevvanillaengine.cpp | 2 +-
ql/pricingengines/vanilla/mcamericanengine.cpp | 2 +-
ql/pricingengines/vanilla/mcamericanengine.hpp | 4 +-
ql/termstructures/globalbootstrap.hpp | 16 ++++----
.../equityfx/andreasenhugevolatilityinterpl.cpp | 14 +++----
.../equityfx/andreasenhugevolatilityinterpl.hpp | 4 +-
ql/timeseries.hpp | 4 +-
test-suite/andreasenhugevolatilityinterpl.cpp | 8 ++--
test-suite/fdheston.cpp | 24 +++++------
test-suite/fdmlinearop.cpp | 8 ++--
test-suite/fdsabr.cpp | 4 +-
test-suite/hestonmodel.cpp | 8 ++--
test-suite/hestonslvmodel.cpp | 46 +++++++++++-----------
test-suite/integrals.cpp | 2 +-
test-suite/interpolations.cpp | 28 ++++++-------
test-suite/linearleastsquaresregression.cpp | 8 ++--
test-suite/mclongstaffschwartzengine.cpp | 2 +-
test-suite/normalclvmodel.cpp | 10 ++---
test-suite/numericaldifferentiation.cpp | 26 ++++++------
test-suite/squarerootclvmodel.cpp | 14 +++----
test-suite/swingoption.cpp | 4 +-
test-suite/utilities.hpp | 2 +-
test-suite/vpp.cpp | 8 ++--
103 files changed, 376 insertions(+), 376 deletions(-)
commit 860cb5019dc58f3c6437ff5e5d51779431fd5ecf
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 16:46:14 +0200
Add workflow to replace deprecated ext:: classes and functions
.github/workflows/namespaces.yml | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
commit e7c9149063f3c5b18970d0f14b5ccfec1f99756d
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 15:25:40 +0200
Deprecate ext::function, ext::bind, ext::tuple and family.
ql/functional.hpp | 25 +++++++++++++++++++++++--
ql/tuple.hpp | 18 +++++++++++++++++-
2 files changed, 40 insertions(+), 3 deletions(-)
commit 5db36b3563d616f180043ddab84f0084ca3d6907
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 14:46:41 +0200
Remove switches to enable boost::function, boost::bind and boost::tuple
.ci/userconfig2019.alt.hpp | 11 -----------
.ci/userconfig2022.alt.hpp | 11 -----------
.github/workflows/linux-full-tests.yml | 2 +-
.github/workflows/linux-nondefault.yml | 2 +-
.github/workflows/linux.yml | 2 +-
.github/workflows/macos-nondefault.yml | 2 +-
CMakeLists.txt | 4 ----
CMakePresets.json | 4 ----
Docs/pages/config.docs | 14 --------------
configure.ac | 34 ----------------------------------
ql/config.hpp.cfg | 2 --
ql/functional.hpp | 34 ----------------------------------
ql/tuple.hpp | 12 ------------
ql/userconfig.hpp | 11 -----------
14 files changed, 4 insertions(+), 141 deletions(-)
commit 03e0c62d6acd618482d51aa04a7f4761d319caf6
Merge: 40bd33835 53722a457
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 14:09:58 +0200
Remove features deprecated in version 1.31 (2029)
commit 99aa50aff83c1f03a532fb0053fa5dd7c7d5c20e
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Tue, 23 Jul 2024 12:45:11 +0200
Remove support for Visual C++ 2015.
This makes it possible to start using features from the C++17 standard.
.appveyor.yml | 21 ++++-----------------
.ci/VS2015.props | 18 ------------------
ql/config.msvc.hpp | 4 ++--
ql/errors.cpp | 2 +-
ql/handle.hpp | 4 ----
5 files changed, 7 insertions(+), 42 deletions(-)
commit 40bd33835c0cc11a448c90d49d873d7a06ae67a1
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Thu, 15 Apr 2021 16:25:45 +0200
Set version to 1.36-dev.
CMakeLists.txt | 6 +++---
configure.ac | 2 +-
ql/version.hpp | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
commit da79d43b088f4631483a75a6f2a84689c63fe3eb
Author: Peter Caspers <peter.casperslseg.com>
Date: Sat, 20 Jul 2024 11:49:16 +0200
code formatting
ql/pricingengines/blackformula.cpp | 4 ++++
test-suite/blackformula.cpp | 15 ++++++++-------
2 files changed, 12 insertions(+), 7 deletions(-)
commit b9318553d1700d1d4ef9aab2e8aef9245356fa3e
Author: Peter Caspers <peter.casperslseg.com>
Date: Sat, 20 Jul 2024 11:46:41 +0200
better criteria for numerical equality
ql/pricingengines/blackformula.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 41f235ebeea4dfce5d57eeb99dd5283390fc1fd1
Author: Peter Caspers <peter.casperslseg.com>
Date: Fri, 19 Jul 2024 17:56:58 +0200
add exact Bachelier implied vol from Jaeckel paper
ql/pricingengines/blackformula.cpp | 86 +++++++++++++++++++++++++++++++++++++-
ql/pricingengines/blackformula.hpp | 14 ++++++-
test-suite/blackformula.cpp | 12 ++++--
3 files changed, 106 insertions(+), 6 deletions(-)
commit 53722a4574af0820ced0b91ad3e938cf29dfb1ca
Author: Luigi Ballabio <luigi.ballabiogmail.com>
Date: Fri, 19 Jul 2024 17:42:09 +0200
Remove features deprecated in version 1.31
QuantLib.vcxproj | 4 -
QuantLib.vcxproj.filters | 12 ---
cmake/GenerateHeaders.cmake | 4 -
ql/CMakeLists.txt | 4 -
ql/cashflows/conundrumpricer.hpp | 6 --
ql/cashflows/cpicoupon.cpp | 100 +++----------------
ql/cashflows/cpicoupon.hpp | 101 ++-----------------
ql/cashflows/cpicouponpricer.cpp | 29 +-----
ql/cashflows/cpicouponpricer.hpp | 15 ---
ql/experimental/inflation/genericindexes.hpp | 26 -----
ql/indexes/inflation/aucpi.hpp | 25 -----
ql/indexes/inflation/euhicp.hpp | 24 -----
ql/indexes/inflation/frhicp.hpp | 24 -----
ql/indexes/inflation/ukrpi.hpp | 24 -----
ql/indexes/inflation/uscpi.hpp | 24 -----
ql/indexes/inflation/zacpi.hpp | 24 -----
ql/indexes/inflationindex.cpp | 21 +---
ql/indexes/inflationindex.hpp | 22 -----
ql/instruments/forwardrateagreement.cpp | 22 -----
ql/instruments/forwardrateagreement.hpp | 26 -----
ql/math/Makefile.am | 4 +-
ql/math/curve.hpp | 21 ----
ql/math/lexicographicalview.hpp | 21 ----
ql/models/volatility/garch.hpp | 17 ----
ql/patterns/Makefile.am | 3 +-
ql/patterns/composite.hpp | 21 ----
ql/termstructures/yield/Makefile.am | 3 +-
ql/termstructures/yield/drifttermstructure.hpp | 22 -----
ql/timeseries.hpp | 95 ------------------
ql/utilities/steppingiterator.hpp | 40 --------
test-suite/inflation.cpp | 132 -------------------------
test-suite/timeseries.cpp | 21 ----
32 files changed, 28 insertions(+), 909 deletions(-)
commit 0991b3ee6ef9d3e1a5bbb33536b60781b5c2ca2d
Author: ralfkonrad <githubeckel-consulting.de>
Date: Tue, 16 Jul 2024 16:07:17 +0200
Add set pricer functionality to OvernightLeg
ql/cashflows/overnightindexedcoupon.cpp | 28 +++++++++++++---------------
ql/cashflows/overnightindexedcoupon.hpp | 4 ++++
2 files changed, 17 insertions(+), 15 deletions(-)
commit 1f7ba67bb7225d43b16c3d851b0acb9fdec63f46
Author: ralfkonrad <githubeckel-consulting.de>
Date: Tue, 16 Jul 2024 15:50:00 +0200
Expose the OvernightIndexedCouponPricer
ql/cashflows/overnightindexedcoupon.cpp | 291 +++++++++++++++-----------------
ql/cashflows/overnightindexedcoupon.hpp | 27 ++-
2 files changed, 161 insertions(+), 157 deletions(-)
commit 1b5e85f2e859192276ea2bca4f596df52f58d6af
Author: ralfkonrad <githubeckel-consulting.de>
Date: Tue, 16 Jul 2024 10:46:20 +0200
Implement inflation specific pastFixing(...)
ql/indexes/inflationindex.cpp | 32 ++++++++++++++++++++++----------
ql/indexes/inflationindex.hpp | 11 +++++++++++
2 files changed, 33 insertions(+), 10 deletions(-)
commit a553e0677e1e6c91e46d8b8ac7a7859b0a56d51d
Author: ralfkonrad <githubeckel-consulting.de>
Date: Mon, 15 Jul 2024 17:25:09 +0200
Let Index being derived from Observer
ql/index.hpp | 9 ++++++++-
ql/indexes/equityindex.hpp | 8 +-------
ql/indexes/inflationindex.hpp | 11 +----------
ql/indexes/interestrateindex.hpp | 11 +----------
4 files changed, 11 insertions(+), 28 deletions(-)
commit 037770bd388e214b9531c6233e5cb442d0aff528
Author: ralfkonrad <githubeckel-consulting.de>
Date: Mon, 15 Jul 2024 17:13:34 +0200
Add virtual Real Index::pastFixing(const Date& fixingDate)
ql/index.hpp | 12 ++++++++++++
ql/indexes/equityindex.cpp | 5 -----
ql/indexes/equityindex.hpp | 1 -
ql/indexes/interestrateindex.hpp | 8 --------
4 files changed, 12 insertions(+), 14 deletions(-)
commit 3900dc9220875afb10b1c681203234b5b0a7b4a8
Author: ralfkonrad <githubeckel-consulting.de>
Date: Mon, 15 Jul 2024 13:45:47 +0200
Add currency information to EquityIndex
ql/indexes/equityindex.cpp | 19 +++++++++++++++++--
ql/indexes/equityindex.hpp | 10 ++++++++++
2 files changed, 27 insertions(+), 2 deletions(-)