commit dbea7afad72f59706fa08a4cbfa5880684d9b8d9 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Mon, 12 Jan 2026 09:21:31 +0000 Set version to 1.41 CMakeLists.txt | 4 ++-- configure.ac | 2 +- ql/version.hpp | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) commit c90498ad13cbc660c3e80c8c65598ad2c897fef0 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Mon, 5 Jan 2026 19:24:10 +0000 Update changelog ChangeLog.txt | 11008 ++++++++++---------------------------------------------- 1 file changed, 1946 insertions(+), 9062 deletions(-) commit 5225d64206cd4f2555b5cf3a03b20ca55405d934 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Mon, 5 Jan 2026 19:24:10 +0000 Set version to 1.41-rc CMakeLists.txt | 4 ++-- configure.ac | 2 +- ql/version.hpp | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) commit d6d38347e51cd8f2a617b1591f87e550af29ff86 Merge: 7590f1b57 4ecf2c764 Author: Luigi Ballabio Date: Mon, 5 Jan 2026 18:11:23 +0100 typo in multi-curve error message (#2419) commit 4ecf2c764c21bfe4ed46d2da5727a6880641975f Author: Peter Caspers Date: Mon, 5 Jan 2026 17:04:10 +0100 typo ql/termstructures/multicurve.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7590f1b57853e52770da7ba6da26f01ba1226ffb Author: Luigi Ballabio Date: Mon, 5 Jan 2026 09:26:49 +0100 Add clang 21 to CI builds .github/workflows/devenv-images.yml | 2 +- .github/workflows/linux-full-tests.yml | 7 ++++++- .github/workflows/linux-nondefault.yml | 7 ++++++- .github/workflows/linux.yml | 6 +++--- 4 files changed, 16 insertions(+), 6 deletions(-) commit e41f1b6b3402c4cd44f22b7b5050f80e56c7cabc Author: Luigi Ballabio Date: Mon, 5 Jan 2026 12:37:24 +0100 Update news for 1.41 and list of contributors Contributors.txt | 3 +++ News.md | 47 +++++++++++++++++++++++------------------------ 2 files changed, 26 insertions(+), 24 deletions(-) commit defbf778b37146394da752513ad6b54070ed112d Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sat, 3 Jan 2026 13:57:18 +0000 Automated fixes by clang-tidy ql/cashflows/overnightindexedcoupon.cpp | 4 ++-- ql/cashflows/overnightindexedcoupon.hpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) commit bc7db315bb7ed1c5669cb8069898c1804bc4c9ea Author: Luigi Ballabio Date: Sat, 3 Jan 2026 15:53:10 +0100 Revert #2410 ql/processes/gsrprocesscore.hpp | 2 +- test-suite/gsr.cpp | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) commit b43bcbfe75a4dc8518c91ab508e76a15162bbc37 Merge: 17a5a84fa be2041853 Author: Luigi Ballabio Date: Tue, 30 Dec 2025 14:59:48 +0100 Some deferred observers get destroyed during updates II (#2412) commit be2041853087c071bdff5151a320eddc1a7c18a4 Author: francis Date: Tue, 30 Dec 2025 12:55:23 +0000 Avoid dereferencing null deferred observer. Alternative approach for PR 2409. ql/patterns/observable.cpp | 6 ++---- ql/patterns/observable.hpp | 19 +++++++++++-------- 2 files changed, 13 insertions(+), 12 deletions(-) commit 17a5a84fa618bbfb04beefcf0f5c3531fc756b58 Author: Luigi Ballabio Date: Mon, 29 Dec 2025 23:37:47 +0100 Copy latest copyright list to website when tagging a release .github/workflows/publish-release.yml | 1 + 1 file changed, 1 insertion(+) commit 6ab7d21faa12632e466f5c209e11ba4f6abd59de Merge: 2bd9e3dfd 86683188e Author: Luigi Ballabio Date: Mon, 29 Dec 2025 11:18:21 +0100 Fix GsrProcessCore crash when constructed with temporary arrays (#2410) commit 2bd9e3dfd916e9fc7004e657e374f36fa279e713 Merge: 302e4d7d7 ad90c6f1b Author: Luigi Ballabio Date: Mon, 29 Dec 2025 10:50:04 +0100 Some deferred observers get destroyed during updates (#2409) commit 302e4d7d70ad1de6d2380e9c8e1838d8018f2d48 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sun, 28 Dec 2025 01:31:22 +0000 Automated fixes by clang-tidy ql/cashflows/blackovernightindexedcouponpricer.cpp | 5 +++-- ql/cashflows/blackovernightindexedcouponpricer.hpp | 4 ++-- ql/cashflows/overnightindexedcoupon.cpp | 6 +++--- ql/cashflows/overnightindexedcoupon.hpp | 8 ++++---- ql/cashflows/overnightindexedcouponpricer.cpp | 9 +++++---- ql/cashflows/overnightindexedcouponpricer.hpp | 7 ++++--- ql/instruments/assetswap.cpp | 2 +- ql/instruments/equitytotalreturnswap.cpp | 2 +- 8 files changed, 23 insertions(+), 20 deletions(-) commit 86683188e66943a0a5d69754b853f2cce7f13e49 Author: Yashwant Bezawada Date: Sat, 27 Dec 2025 03:11:29 -0600 Fix GsrProcessCore crash when constructed with temporary arrays GsrProcessCore stored references to the input arrays instead of copies. When temporary arrays were passed (common in SWIG bindings where Python lists are converted to temporary Array objects), these references became dangling after the constructor returned, causing segfaults during path generation. The fix changes the member variables from references to values so the arrays are copied and remain valid for the lifetime of the object. Added a test case that creates a GsrProcess with temporary arrays and uses it in PathGenerator to verify path generation works correctly. Fixes #2408 ql/processes/gsrprocesscore.hpp | 2 +- test-suite/gsr.cpp | 53 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+), 1 deletion(-) commit ad90c6f1b7c6023c040cc1cd7f548b440a646e58 Author: francis Date: Wed, 24 Dec 2025 12:24:11 +0000 Avoid dereferencing null deferred observer. Add a bool runningDeferredUpdates_ that is set to true when deferredObservers_ are being processed in ObservableSettings::enableUpdates(). We keep a set invalidDeferredObservers_ that holds elements of deferredObservers_ that are destroyed while ObservableSettings::enableUpdates() is running. We can then skip calling update on them in ObservableSettings::enableUpdates(). ql/patterns/observable.cpp | 8 ++++++++ ql/patterns/observable.hpp | 13 +++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) commit c2b5cc811801593b5cc2cbbbb26d40b037d4202f Author: francis Date: Wed, 24 Dec 2025 10:50:45 +0000 Add test showing issue with deferred observer. The test gives a read access violation. The problem is that some elements in deferredObservers_ can be destroyed while ObservableSettings::enableUpdates() is running. Later in the call deferredObserver->update() is called on the already destructed element and it gives a read access violation. The example here uses the zero coupon inflation swap helper to demonstrate the issue. The zciis_ member is one of the deferred observers. When ObservableSettings::enableUpdates() is running ZeroCouponInflationSwapHelper::initializeDates() is called because the helper is notified and updateDates_ is true. zciis_ is re-assigned and the original pointee is destroyed. But the original pointee that has been destroyed is still in the deferredObservers_ set and update() gets called on it leading to the read access violation. test-suite/observable.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) commit ecefd253d0e2b648a8994f32f208af504ca36c94 Author: Luigi Ballabio Date: Wed, 24 Dec 2025 09:46:47 +0100 Uniform naming ql/cashflows/overnightindexedcoupon.cpp | 2 +- ql/cashflows/overnightindexedcoupon.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 1daa40d013ff700292f421ec9473f419893b1379 Author: Luigi Ballabio Date: Mon, 22 Dec 2025 09:53:40 +0100 Remove a few warnings and verbosity from new pricers ql/cashflows/blackovernightindexedcouponpricer.cpp | 4 ++-- ql/cashflows/overnightindexedcouponpricer.cpp | 8 ------- ql/cashflows/overnightindexedcouponpricer.hpp | 25 +++++++++++----------- 3 files changed, 14 insertions(+), 23 deletions(-) commit 9cbbbb2708019775a89f25871f429b78861f396e Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Thu, 18 Dec 2025 11:52:46 +0000 Update old license links ql/cashflows/blackovernightindexedcouponpricer.cpp | 2 +- ql/cashflows/blackovernightindexedcouponpricer.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit c15a6fecbd6bbe9fe8d509d6a20945a3815ebd2e Merge: bf18303eb 5096ee8b9 Author: Luigi Ballabio Date: Thu, 18 Dec 2025 12:52:35 +0100 QL-ORE ON coupons alignment (#2297) commit 5096ee8b9216e733b62a658662775c2e70a90e27 Author: Luigi Ballabio Date: Thu, 18 Dec 2025 11:02:52 +0100 Another test test-suite/overnightindexedcoupon.cpp | 54 ++++++++++++++++++++++++++--------- 1 file changed, 41 insertions(+), 13 deletions(-) commit bf18303ebee20dab046c5b804b3188b0cf6d07f7 Author: Luigi Ballabio Date: Thu, 18 Dec 2025 10:18:18 +0100 Add job to publish reference docs when tagging a release .github/workflows/publish-release.yml | 41 +++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) commit e10dd4e8fe0576b4fa87bd965b899ab72be7505a Author: paolodelia99 Date: Wed, 17 Dec 2025 17:45:43 +0100 Fix test,and initialized method in BlackArithmeticONPricer ql/cashflows/blackovernightindexedcouponpricer.cpp | 2 +- test-suite/overnightindexedcoupon.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 7660c595758a980f2b8d08c9bbadce7c47f67908 Merge: 4f0732537 3c0a67935 Author: Luigi Ballabio Date: Wed, 17 Dec 2025 11:27:38 +0100 add instrument weights to global bootstrap (#2398) commit 9c719887b7426b377c92da996c6011674a73934f Author: Luigi Ballabio Date: Wed, 17 Dec 2025 11:09:13 +0100 Move check at construction time With the check in setCouponPricer, the call OvernightLeg(...) .withCouponPricer(arithmeticPricer) .withAveragingMethod(RateAveraging::Simple) would fail. ql/cashflows/overnightindexedcoupon.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) commit fcf392a5e504f983226c73cd8be5e37d939a2398 Author: Luigi Ballabio Date: Wed, 17 Dec 2025 11:05:49 +0100 Register properly with pricer ql/cashflows/overnightindexedcoupon.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b2e5ed12ab430c40b5cf0b9d4870fd16af5355db Author: Luigi Ballabio Date: Wed, 17 Dec 2025 11:03:03 +0100 Avoid worthless caps and floors in pricer tests ql/cashflows/blackovernightindexedcouponpricer.cpp | 7 +-- test-suite/overnightindexedcoupon.cpp | 73 +++++++++++++++------- 2 files changed, 53 insertions(+), 27 deletions(-) commit 6c3ccb316ec8c5f5655ed09fd3469393fe0d98e9 Author: Luigi Ballabio Date: Wed, 17 Dec 2025 10:28:49 +0100 No need to set two different pricers depending on caps/floors ql/cashflows/overnightindexedcoupon.cpp | 20 +++----------------- ql/cashflows/overnightindexedcoupon.hpp | 7 ++----- test-suite/overnightindexedcoupon.cpp | 4 ++-- 3 files changed, 7 insertions(+), 24 deletions(-) commit 3c0a67935723ced7dc08706b616a1ed3d9d02cae Author: Peter Caspers Date: Wed, 17 Dec 2025 09:53:52 +0100 fix maxDate and revert enabling extrapolation ql/termstructures/globalbootstrap.hpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) commit fa60f238eb37cbac516099f1fb2e0199deb593a9 Author: paolodelia99 Date: Tue, 16 Dec 2025 19:48:59 +0100 fix infinite loop problem in initialize method in blackONPricer ql/cashflows/blackovernightindexedcouponpricer.cpp | 6 ++++-- test-suite/overnightindexedcoupon.cpp | 7 ++++++- 2 files changed, 10 insertions(+), 3 deletions(-) commit a1310598c7ba2e70e80b49c79aeb24e9eacf44e9 Author: Peter Caspers Date: Tue, 16 Dec 2025 16:45:08 +0100 fix ql/termstructures/globalbootstrap.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2900e2e9e5fefd639e55eef44596ad531ba0239a Author: Peter Caspers Date: Tue, 16 Dec 2025 16:18:23 +0100 omit sorting of helpers, enable extrapolation on underlying curve ql/termstructures/globalbootstrap.cpp | 2 +- ql/termstructures/globalbootstrap.hpp | 108 ++++++++++++++++------------------ 2 files changed, 52 insertions(+), 58 deletions(-) commit 4f073253701e2c600a87ff6a26434b5dea57a7b1 Merge: 5945c8951 c147bfc26 Author: Luigi Ballabio Date: Tue, 16 Dec 2025 11:55:54 +0100 Add an accessor for pricing engine (#2400) commit e99ae9daeaf561b53feef6bd680019c005ef0926 Author: Luigi Ballabio Date: Tue, 16 Dec 2025 09:18:59 +0100 Renamed a few classes and methods for clarity ql/cashflows/blackovernightindexedcouponpricer.cpp | 106 ++++++++++----------- ql/cashflows/blackovernightindexedcouponpricer.hpp | 18 ++-- ql/cashflows/overnightindexedcoupon.cpp | 54 +++++------ ql/cashflows/overnightindexedcoupon.hpp | 32 +++---- ql/cashflows/overnightindexedcouponpricer.cpp | 22 ++--- ql/cashflows/overnightindexedcouponpricer.hpp | 14 +-- test-suite/overnightindexedcoupon.cpp | 41 ++++---- 7 files changed, 144 insertions(+), 143 deletions(-) commit 5945c8951762799c67f1c7b3496c25d947bb3ccc Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Dec 2025 11:01:00 +0000 Bump actions/upload-artifact from 5 to 6 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/msvc-analysis.yml | 2 +- .github/workflows/test-times.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit d5f33b8c412f4bb0803aa6a6adfefd0fcedb5078 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Dec 2025 11:01:19 +0000 Bump peter-evans/create-pull-request from 7 to 8 Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7 to 8. - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v7...v8) --- updated-dependencies: - dependency-name: peter-evans/create-pull-request dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/copyrights.yml | 2 +- .github/workflows/generated-headers.yml | 2 +- .github/workflows/includes.yml | 2 +- .github/workflows/increase-version-number.yml | 2 +- .github/workflows/license-url.yml | 2 +- .github/workflows/misspell.yml | 2 +- .github/workflows/namespaces.yml | 2 +- .github/workflows/prepare-release-candidate.yml | 2 +- .github/workflows/prepare-release.yml | 2 +- .github/workflows/sync-qldefines.yml | 2 +- .github/workflows/tidy.yml | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) commit 99c56ceb4b6cae3437709f92f083b58d9c32b8f1 Merge: 619a23ac1 1e9efef1c Author: Luigi Ballabio Date: Fri, 12 Dec 2025 14:33:27 +0100 Use quoteError in FittedBondDiscountCurve (#2401) commit 619a23ac13e40a9528da4b8cea543b2a5f16290f Merge: 99d3a393f 536011abf Author: Luigi Ballabio Date: Thu, 11 Dec 2025 15:04:19 +0100 Patches for AD compatibility (#2402) commit 99d3a393f53df48d4f3ada206ed06379308a6859 Author: Luigi Ballabio Date: Thu, 11 Dec 2025 15:03:06 +0100 Upgrade to Boost 1.90 in CI workflows .github/workflows/cmake-latest-runners.yml | 4 ++-- .github/workflows/cmake.yml | 12 ++++++------ .github/workflows/msvc-all-configs.yml | 2 +- .github/workflows/msvc-analysis.yml | 4 ++-- .github/workflows/msvc-nondefault.yml | 2 +- .github/workflows/msvc.yml | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) commit 1c155151f2bda9545973e14f2863d0217aadc310 Author: Peter Caspers Date: Wed, 10 Dec 2025 17:09:11 +0100 fix capture test-suite/piecewiseyieldcurve.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4f07b1f04a35d2d2ba7586db6c581ab5beaeff97 Author: Peter Caspers Date: Wed, 10 Dec 2025 17:05:27 +0100 clearer code test-suite/piecewiseyieldcurve.cpp | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) commit ebb3c032b8ec99b46f3444889da82e75a8305769 Author: Peter Caspers Date: Wed, 10 Dec 2025 16:46:24 +0100 add unit test test-suite/piecewiseyieldcurve.cpp | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) commit 536011abfda53e1aa6b7d2f7b53f466a65887a2a Author: Auto Differentiation Dev Team <107129969+auto-differentiation-dev@users.noreply.github.com> Date: Wed, 10 Dec 2025 12:35:43 +0000 constexpr and implicit conversion fixes for using with non-double Real type test-suite/piecewiseyieldcurve.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 3fdbb754932698803ce038ab108c6652aae89703 Author: Peter Caspers Date: Tue, 9 Dec 2025 20:07:58 +0100 add instrument weights ql/termstructures/globalbootstrap.hpp | 62 ++++++++++++++++++++++------------- 1 file changed, 40 insertions(+), 22 deletions(-) commit 97ba81f0a08eb1ab9990276a9caaeacabcdaf8b2 Author: Peter Caspers Date: Tue, 9 Dec 2025 19:29:13 +0100 Revert "introduce scale" This reverts commit 889b98fb2bea518090b556b28ba58ade30cf115a. ql/termstructures/bootstraphelper.hpp | 16 ++++++---------- ql/termstructures/globalbootstrap.hpp | 3 +-- ql/termstructures/iterativebootstrap.hpp | 2 +- ql/termstructures/yield/ratehelpers.cpp | 6 +++--- 4 files changed, 11 insertions(+), 16 deletions(-) commit 322392bc085800f59c06b8db88e69f49bbd9ccb4 Author: Peter Caspers Date: Tue, 9 Dec 2025 19:29:09 +0100 Revert "scale should be the factor to get to the order of 1" This reverts commit 12ea554e2eb42cd0c665ac574f6fff9e3e37c94f. ql/termstructures/yield/ratehelpers.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit bd7883ea0a26868c2999e1a33edcfb435faf07b7 Author: Auto Differentiation Dev Team <107129969+auto-differentiation-dev@users.noreply.github.com> Date: Tue, 9 Dec 2025 18:28:06 +0000 Fixes test macros to be compatible with other types test-suite/piecewiseyieldcurve.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) commit 1e9efef1cb181e271cccafb1553ca69ee0bc5f8d Author: Eugene Toder Date: Tue, 9 Dec 2025 12:02:07 -0500 Use quoteError in FittedBondDiscountCurve ql/termstructures/yield/fittedbonddiscountcurve.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit c147bfc26db3b5ee15abb98a1b5785818dc570a6 Author: Eugene Toder Date: Tue, 9 Dec 2025 09:48:30 -0500 Add an accessor for pricing engine ql/instrument.hpp | 5 +++++ 1 file changed, 5 insertions(+) commit 7fa295f752a00eff4abcd7c55c1e2d055cb300fb Merge: eef27a34a 5acde822e Author: Luigi Ballabio Date: Tue, 9 Dec 2025 12:20:13 +0100 relax check on helper maturities in GlobalBootstrap (#2395) commit eef27a34a552f375e25b19f2632b7d3dbd433b69 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sun, 7 Dec 2025 01:36:34 +0000 Automated fixes by clang-tidy ql/instruments/asianoption.cpp | 4 ++-- ql/instruments/asianoption.hpp | 4 ++-- ql/patterns/lazyobject.hpp | 2 +- ql/termstructures/globalbootstrap.cpp | 7 ++++--- ql/termstructures/multicurve.cpp | 6 +++--- ql/termstructures/multicurve.hpp | 4 ++-- 6 files changed, 14 insertions(+), 13 deletions(-) commit 289937841d07f30375133675985584db76e00208 Author: Luigi Ballabio Date: Tue, 9 Dec 2025 09:09:13 +0100 Avoid a few conversion warnings ql/termstructures/globalbootstrap.cpp | 2 +- test-suite/piecewiseyieldcurve.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit a55e72511632308094bc45a9a21aeeac32facd8b Author: paolodelia99 Date: Mon, 8 Dec 2025 17:35:37 +0100 return plain spread in case simple avg ONCopoun ql/cashflows/overnightindexedcoupon.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 12ea554e2eb42cd0c665ac574f6fff9e3e37c94f Author: Peter Caspers Date: Sun, 7 Dec 2025 20:21:40 +0100 scale should be the factor to get to the order of 1 ql/termstructures/yield/ratehelpers.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 889b98fb2bea518090b556b28ba58ade30cf115a Author: Peter Caspers Date: Sun, 7 Dec 2025 19:21:52 +0100 introduce scale ql/termstructures/bootstraphelper.hpp | 16 ++++++++++------ ql/termstructures/globalbootstrap.hpp | 3 ++- ql/termstructures/iterativebootstrap.hpp | 2 +- ql/termstructures/yield/ratehelpers.cpp | 6 +++--- 4 files changed, 16 insertions(+), 11 deletions(-) commit ca701f7ad702aae1e70f259160d686c2d2ffe63c Author: Auto Differentiation Dev Team <107129969+auto-differentiation-dev@users.noreply.github.com> Date: Sat, 6 Dec 2025 14:32:24 +0000 Constexpr auto as it might be incompatible with Real test-suite/piecewiseyieldcurve.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 6824d28e42241c2632c090d7a1d9a2ffe9ccd7aa Author: Auto Differentiation Dev Team <107129969+auto-differentiation-dev@users.noreply.github.com> Date: Sat, 6 Dec 2025 14:29:36 +0000 Explicit return type on lambda to allow use with expression templates ql/pricingengines/vanilla/cashdividendeuropeanengine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 33a3be2c4ebbbcb91f3eeec0915f76e657bf5246 Author: Auto Differentiation Dev Team <107129969+auto-differentiation-dev@users.noreply.github.com> Date: Sat, 6 Dec 2025 10:22:21 +0000 Avoid constexpr Real, as that breaks AD types ql/termstructures/globalbootstrap.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5acde822eb05a13ff7a8d6c1137440ea78fd22ec Author: Peter Caspers Date: Sat, 6 Dec 2025 10:51:02 +0100 remove old check ql/termstructures/globalbootstrap.hpp | 6 ------ 1 file changed, 6 deletions(-) commit decdd7f4cc3c461018395e892b292d476c694627 Author: Peter Caspers Date: Sat, 6 Dec 2025 10:48:03 +0100 relax check ql/termstructures/globalbootstrap.hpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) commit 9c6bbcff7a7573169d0ba695e8353465b6849a24 Merge: 4c8af36f2 c988da992 Author: Luigi Ballabio Date: Fri, 5 Dec 2025 09:01:40 +0100 Natural Cubic Spline Fitting method (#2378) commit 4c8af36f20219ed96196420468ff4d36b140e538 Author: Luigi Ballabio Date: Thu, 4 Dec 2025 16:04:00 +0100 Avoid warning about implicit copy constructor ql/utilities/steppingiterator.hpp | 1 + 1 file changed, 1 insertion(+) commit c988da992947c38670261a138b36f4dffe9b3e81 Author: Luigi Ballabio Date: Thu, 4 Dec 2025 17:39:13 +0100 Avoid Codacy warning ql/termstructures/yield/nonlinearfittingmethods.hpp | 1 + 1 file changed, 1 insertion(+) commit 967ec6e95045dcc70969ca7dddbf2305206295db Author: Luigi Ballabio Date: Thu, 4 Dec 2025 16:22:12 +0100 No need to add a node at t=0 in the example code Examples/FittedBondCurve/FittedBondCurve.cpp | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) commit 41f6b252be88db24e9389f28e92c666806deba6a Author: Luigi Ballabio Date: Thu, 4 Dec 2025 16:21:59 +0100 More simplification .../yield/nonlinearfittingmethods.cpp | 22 +++++++--------------- .../yield/nonlinearfittingmethods.hpp | 1 - 2 files changed, 7 insertions(+), 16 deletions(-) commit c6f23c27209f9c87fce7dbb906e7d18425d32aaf Author: Krishn Parasar Date: Thu, 4 Dec 2025 00:21:55 +0530 Updates based on comments Examples/FittedBondCurve/FittedBondCurve.cpp | 5 +++-- .../yield/nonlinearfittingmethods.cpp | 23 +++++----------------- .../yield/nonlinearfittingmethods.hpp | 9 --------- 3 files changed, 8 insertions(+), 29 deletions(-) commit 7a04258b20f599e4b489ae599def7a9155358900 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Wed, 3 Dec 2025 17:06:52 +0000 Update copyright list in license LICENSE.TXT | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 6350a42558383f46c52932a4f9ff12e77503fcad Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Wed, 3 Dec 2025 17:06:51 +0000 Update old license links ql/termstructures/globalbootstrap.cpp | 2 +- ql/termstructures/multicurve.cpp | 2 +- ql/termstructures/multicurve.hpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit 0b3940320262d2f3efe48dc0cc3f0a897bf9b5a8 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Wed, 3 Dec 2025 14:50:38 +0000 Update generated headers ql/termstructures/all.hpp | 1 + 1 file changed, 1 insertion(+) commit 44513c97d8f4ef293475cfda51d7dbcb82586b2a Merge: 7ed57d00e 09edbae05 Author: Luigi Ballabio Date: Wed, 3 Dec 2025 15:48:31 +0100 Add support for seasoned continuous Asian options (#2381) commit 8721724e6bbae7a352f2eaa6256a116eb81abc4b Author: Krishn Parasar Date: Wed, 3 Dec 2025 19:39:01 +0530 Updates based on comments. Examples/FittedBondCurve/FittedBondCurve.cpp | 3 + .../yield/nonlinearfittingmethods.cpp | 71 +--------------------- 2 files changed, 6 insertions(+), 68 deletions(-) commit 09edbae052edffbde9393eb097c21ba0b27c3e63 Author: Luigi Ballabio Date: Wed, 3 Dec 2025 14:35:20 +0100 Avoid deprecated constructor in example Examples/AsianOption/AsianOption.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 43a9156b4ab8e1a31baca5f3b4e5d9ee95ef0b9f Author: Luigi Ballabio Date: Wed, 3 Dec 2025 14:20:19 +0100 Deprecate old engine constructor .../asian/continuousarithmeticasianlevyengine.cpp | 15 ++++++++++++--- .../asian/continuousarithmeticasianlevyengine.hpp | 8 ++++++++ test-suite/asianoptions.cpp | 14 +++++++------- 3 files changed, 27 insertions(+), 10 deletions(-) commit 7ed57d00e1011f5a036ead8a3dd627cc2d61f520 Merge: b3612efbd 313f6c36a Author: Luigi Ballabio Date: Wed, 3 Dec 2025 13:03:22 +0100 add multicurve bootstrap (#2344) commit 313f6c36a4719770b18c9893e1894f571f30b68c Author: Peter Caspers Date: Mon, 1 Dec 2025 18:03:10 +0100 improve doc ql/termstructures/multicurve.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 04d3317642ea2d8486753114011ed1eb7839211c Author: Peter Caspers Date: Mon, 1 Dec 2025 17:56:55 +0100 udpate documentation ql/termstructures/multicurve.hpp | 45 +++++++++++++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 7 deletions(-) commit b3612efbd2aab169f3298f203441f5f86777b019 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sun, 30 Nov 2025 01:38:50 +0000 Automated fixes by clang-tidy ql/experimental/termstructures/crosscurrencyratehelpers.cpp | 10 +++++----- ql/experimental/termstructures/crosscurrencyratehelpers.hpp | 2 +- test-suite/crosscurrencyratehelpers.cpp | 6 ++++-- 3 files changed, 10 insertions(+), 8 deletions(-) commit 20ab3cbbab1aedf50a15e0d37e9ccce32ba9c280 Author: Peter Caspers Date: Sun, 30 Nov 2025 12:10:56 +0100 refactor and rename ql/termstructures/multicurve.cpp | 35 ++++++++++------------------------- ql/termstructures/multicurve.hpp | 26 ++++++++++++++------------ test-suite/piecewiseyieldcurve.cpp | 8 ++++---- 3 files changed, 28 insertions(+), 41 deletions(-) commit a91e6dcb0ee169d092e9c0e951413cda67f919f1 Author: Peter Caspers Date: Sat, 29 Nov 2025 20:01:31 +0100 use rvalue ref ql/termstructures/multicurve.cpp | 10 ++++------ ql/termstructures/multicurve.hpp | 4 ++-- test-suite/piecewiseyieldcurve.cpp | 8 ++++---- 3 files changed, 10 insertions(+), 12 deletions(-) commit e103123e29eb62fa78f0ad199b687fef034d3aee Author: Peter Caspers Date: Sat, 29 Nov 2025 19:42:16 +0100 formatting ql/termstructures/multicurve.cpp | 9 ++++----- ql/termstructures/multicurve.hpp | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) commit a806e4338ec5eb2a8e0d80efd4620893b014cf59 Author: Peter Caspers Date: Sat, 29 Nov 2025 19:41:01 +0100 formatting ql/termstructures/multicurve.cpp | 1 - 1 file changed, 1 deletion(-) commit 7358039bd3ddd6f879218bb94eba8772cdcb57b6 Author: Peter Caspers Date: Sat, 29 Nov 2025 19:40:18 +0100 fix ql/termstructures/multicurve.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ce8a571b3c466a236cb246e22c7e13cead70dbf2 Author: Peter Caspers Date: Sat, 29 Nov 2025 18:52:23 +0100 Revert "Simplify usage" This reverts commit 03db67cd4486a24a81bd39ac91491e94af557df1. ql/termstructures/multicurve.cpp | 42 ++++++++++++++++++------- ql/termstructures/multicurve.hpp | 35 ++++++++++++++------- ql/termstructures/yield/piecewiseyieldcurve.hpp | 32 ++++++------------- ql/termstructures/yieldtermstructure.hpp | 2 -- test-suite/piecewiseyieldcurve.cpp | 23 +++++++------- 5 files changed, 75 insertions(+), 59 deletions(-) commit 04019bd614733bd1c99d201bd9371899e81aa769 Author: Peter Caspers Date: Sat, 29 Nov 2025 13:27:12 +0100 add non-pw curve ql/termstructures/multicurve.cpp | 20 ++++++++++++++++++-- ql/termstructures/multicurve.hpp | 7 +++++-- test-suite/piecewiseyieldcurve.cpp | 19 +++---------------- 3 files changed, 26 insertions(+), 20 deletions(-) commit 9d2fe9986c5547d5b59a61378ec85a5c80ca59e7 Author: Peter Caspers Date: Sat, 29 Nov 2025 11:45:12 +0100 remove QuantLib namespace qualification ql/termstructures/globalbootstrap.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 66b5513c4cad1bc958e00f9dffb9bfb11a1e4e44 Author: Peter Caspers Date: Sat, 29 Nov 2025 11:41:29 +0100 add unit test for cycle of zero spreaded and pw curve test-suite/piecewiseyieldcurve.cpp | 75 +++++++++++++++++++++++++++++++++++++- 1 file changed, 73 insertions(+), 2 deletions(-) commit 03d53bbd92d1ba76ab710e25fc6d01f527486c64 Author: Kareem Fareed <88599145+KookiesNKareem@users.noreply.github.com> Date: Fri, 28 Nov 2025 03:14:20 -0700 Refactor seasoned Asian options: move startDate to option, keep currentAverage in engine Separates contract terms (option) from market data (engine) per ideal design. ql/instruments/asianoption.cpp | 13 +------------ ql/instruments/asianoption.hpp | 10 ++++------ ql/pricingengines/asian/analytic_cont_geom_av_price.cpp | 2 +- .../asian/continuousarithmeticasianlevyengine.cpp | 15 +++------------ test-suite/asianoptions.cpp | 8 +++----- 5 files changed, 12 insertions(+), 36 deletions(-) commit 08ef0689336d2d43ae1d08447f7c9dcc0c62acdc Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Thu, 27 Nov 2025 14:01:40 +0000 Update generated headers ql/quantlib.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2b6e7a6a80dab5f44967899b1488141c67c34098 Merge: 641992d73 7f9f90b2d Author: Luigi Ballabio Date: Thu, 27 Nov 2025 14:49:34 +0100 Minor change for consistency of BOOST_ALL_NO_LIB and ql auto_link. (#2385) commit 641992d7387ec01db08551a48e2736d5d32eb59b Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Thu, 27 Nov 2025 07:51:04 +0000 Update copyright list in license LICENSE.TXT | 2 ++ 1 file changed, 2 insertions(+) commit 86b141ead5041baf3f842ac5586c3b6d0ad2b522 Author: Krishn Parasar Date: Thu, 27 Nov 2025 18:28:08 +0530 Updates based on comments Refactored NaturalCubicFitting to use QuantLib’s CubicInterpolation for natural spline second-derivative computation and removed custom tridiagonal solver. .../yield/nonlinearfittingmethods.cpp | 195 +++++++++------------ .../yield/nonlinearfittingmethods.hpp | 15 +- 2 files changed, 93 insertions(+), 117 deletions(-) commit 7f9f90b2d2f4173370bcfe665ce96b965b1f0c4c Author: francis Date: Thu, 27 Nov 2025 11:01:59 +0000 Minor change for consistency of BOOST_ALL_NO_LIB and ql auto_link. ql/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit cc56685e572b4ff6743fd5f2d239665e26860eea Merge: 924d4ad0e 673ab76d0 Author: Luigi Ballabio Date: Thu, 27 Nov 2025 08:50:53 +0100 Add CrossCurrencySwapRateHelper for cross-currency swap bootstrapping (#2367) commit 282e7423506fd083036bca535af41ba293b6b0d9 Author: paolodelia99 Date: Wed, 26 Nov 2025 23:14:02 +0100 fix win compilation error using static_cast of lookbackDays ql/cashflows/overnightindexedcoupon.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 6399fcabaca4578482e6214eae29b931e045b1f0 Author: paolodelia99 Date: Wed, 26 Nov 2025 23:00:00 +0100 Added adj in ONCoupoon ctor, fix bug when computing the effectiveIndexFixing ql/cashflows/overnightindexedcoupon.cpp | 9 ++++++++- ql/cashflows/overnightindexedcouponpricer.cpp | 12 ++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) commit 673ab76d0c69cac2b635cf527ba0c28bbee30f4a Author: Luigi Ballabio Date: Wed, 26 Nov 2025 17:08:17 +0100 Refactor common functionality in cross-currency swaps .../termstructures/crosscurrencyratehelpers.cpp | 347 ++++++++++----------- .../termstructures/crosscurrencyratehelpers.hpp | 148 ++++----- test-suite/crosscurrencyratehelpers.cpp | 210 +++++++------ 3 files changed, 345 insertions(+), 360 deletions(-) commit 924d4ad0e74abe1c879a3456c4d3627cfe23f574 Merge: 0766d68c1 ef7ed6a5f Author: Luigi Ballabio Date: Wed, 26 Nov 2025 10:41:18 +0100 Add Asian option example (#2380) commit ef7ed6a5f187f9d02705ff3880d648fb3569d0ea Author: Luigi Ballabio Date: Wed, 26 Nov 2025 09:46:16 +0100 Add new project to VC++ solution file QuantLib.sln | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) commit 7db5e392a6281899c5f783d74ea8656b471e2e8b Author: Kareem Fareed <88599145+KookiesNKareem@users.noreply.github.com> Date: Tue, 25 Nov 2025 22:45:44 -0700 added vcxprroj & vcxproj.filters Examples/AsianOption/AsianOption.vcxproj | 562 +++++++++++++++++++++++ Examples/AsianOption/AsianOption.vcxproj.filters | 22 + 2 files changed, 584 insertions(+) commit a9a3092c23aa7aee4a6bd5d0103d744ccf67c057 Author: Peter Caspers Date: Tue, 25 Nov 2025 15:50:31 +0100 compile issue ql/termstructures/yield/piecewiseyieldcurve.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 2d71ab59180f142bafdb1bceaa933ece981c7ea3 Author: Peter Caspers Date: Tue, 25 Nov 2025 12:57:30 +0100 fix ql/termstructures/yield/piecewiseyieldcurve.hpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) commit 0766d68c1f9e8e6247e4a116b8a1597029d8cdd3 Author: Luigi Ballabio Date: Tue, 25 Nov 2025 10:34:18 +0100 Fix formatting in man page man/quantlib-test-suite.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5a0ebbe190c5ba9d12831db6fdd760d7c1c93859 Author: Kareem Fareed <88599145+KookiesNKareem@users.noreply.github.com> Date: Mon, 24 Nov 2025 11:33:42 -0800 Address PR review feedback - Fix comment: 'Bootstrap' -> 'Set up flat' curves - Move Finite Differences to discrete arithmetic section - Cleaned output and fixed inaccurate inequality - Increase column width for proper alignment (20->24) Examples/AsianOption/AsianOption.cpp | 43 +++++++++++++----------------------- 1 file changed, 15 insertions(+), 28 deletions(-) commit 3522a8dffb142e55dbc3a13dafbca99af9d8712e Merge: 3e41c3731 9dcb76300 Author: Luigi Ballabio Date: Mon, 24 Nov 2025 17:00:45 +0100 Make sure the correct vector initialiser is used even in AD case (#2383) commit 3e41c3731ecb29b51c22706435488236a72312a5 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Nov 2025 11:32:02 +0000 Bump actions/checkout from 5 to 6 Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/cmake-latest-runners.yml | 2 +- .github/workflows/cmake.yml | 12 ++++++------ .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/copyrights.yml | 2 +- .github/workflows/coveralls.yml | 2 +- .github/workflows/devenv-images.yml | 2 +- .github/workflows/doxygen.yml | 4 ++-- .github/workflows/filelists.yml | 2 +- .github/workflows/generated-headers.yml | 2 +- .github/workflows/headers.yml | 2 +- .github/workflows/includes.yml | 2 +- .github/workflows/increase-version-number.yml | 2 +- .github/workflows/license-url.yml | 2 +- .github/workflows/linux-full-tests.yml | 2 +- .github/workflows/linux-nondefault.yml | 2 +- .github/workflows/linux.yml | 2 +- .github/workflows/macos-nondefault.yml | 2 +- .github/workflows/macos.yml | 2 +- .github/workflows/misspell.yml | 2 +- .github/workflows/msvc-all-configs.yml | 2 +- .github/workflows/msvc-analysis.yml | 2 +- .github/workflows/msvc-nondefault.yml | 2 +- .github/workflows/msvc.yml | 2 +- .github/workflows/namespaces.yml | 2 +- .github/workflows/prepare-release-candidate.yml | 2 +- .github/workflows/prepare-release.yml | 2 +- .github/workflows/publish-release-candidate.yml | 2 +- .github/workflows/publish-release.yml | 2 +- .github/workflows/sanitizer.yml | 4 ++-- .github/workflows/sync-qldefines.yml | 2 +- .github/workflows/test-times.yml | 2 +- .github/workflows/tidy.yml | 2 +- 32 files changed, 39 insertions(+), 39 deletions(-) commit 09959bef7ca4f7ccb8026b01e40f63f740bdb29e Author: Kareem Fareed <88599145+KookiesNKareem@users.noreply.github.com> Date: Sun, 23 Nov 2025 23:03:07 -0800 Add support for seasoned continuous Asian options Implements the long-standing TODO for running average support in continuous Asian options. Seasoned options are those where averaging has already started and a current average value is known. - Add new constructor to ContinuousAveragingAsianOption accepting currentAverage and startDate for seasoned options - Update ContinuousArithmeticAsianLevyEngine to handle seasoned options by adjusting strike based on accumulated average - Add proper validation requiring both currentAverage and startDate together - Add error handling for geometric seasoned options (not yet implemented) - Add comprehensive unit tests verifying correct pricing behavior - Maintain full backward compatibility with existing code All 1171 tests pass with no errors or warnings. ql/instruments/asianoption.cpp | 25 ++++- ql/instruments/asianoption.hpp | 28 ++++- .../asian/analytic_cont_geom_av_price.cpp | 8 ++ .../asian/continuousarithmeticasianlevyengine.cpp | 23 +++- test-suite/asianoptions.cpp | 119 +++++++++++++++++++++ 5 files changed, 192 insertions(+), 11 deletions(-) commit e8e8ed6b23ee6eb1231774b3b0712e3e3a21d79c Author: Kareem Fareed <88599145+KookiesNKareem@users.noreply.github.com> Date: Sun, 23 Nov 2025 22:24:16 -0800 Add Asian option example This example demonstrates pricing of Asian options using various methods: - Discrete geometric average (analytic and Monte Carlo) - Discrete arithmetic average (Monte Carlo with/without control variate, Turnbull-Wakeman approximation, finite differences) - Continuous geometric average (analytic) - Continuous arithmetic average (Levy engine) Examples/AsianOption/AsianOption.cpp | 314 +++++++++++++++++++++++++++++++++++ Examples/AsianOption/CMakeLists.txt | 5 + Examples/CMakeLists.txt | 1 + Examples/Makefile.am | 4 + 4 files changed, 324 insertions(+) commit ee298ee6565b80715a28e1fe627fe2df77f7fc19 Author: uzi101 Date: Sun, 23 Nov 2025 15:49:19 -0500 Finalize const-notional CCS helper and test suite per review feedback .../termstructures/crosscurrencyratehelpers.cpp | 44 +++--- .../termstructures/crosscurrencyratehelpers.hpp | 7 +- ql/termstructures/yield/all.hpp | 1 - test-suite/crosscurrencyratehelpers.cpp | 166 ++++++++++++--------- 4 files changed, 118 insertions(+), 100 deletions(-) commit 330285ff8e038755065747fda052e1895fbbbc4f Author: Peter Caspers Date: Sun, 23 Nov 2025 20:01:10 +0100 handle case where base class enables shared from this ql/termstructures/yield/piecewiseyieldcurve.hpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 03db67cd4486a24a81bd39ac91491e94af557df1 Author: Eugene Toder Date: Tue, 28 Oct 2025 15:20:06 -0400 Simplify usage ql/termstructures/multicurve.cpp | 20 ++++++-------------- ql/termstructures/multicurve.hpp | 19 +++++++------------ ql/termstructures/yield/piecewiseyieldcurve.hpp | 23 +++++++++++++++-------- test-suite/piecewiseyieldcurve.cpp | 4 ++-- 4 files changed, 30 insertions(+), 36 deletions(-) commit d8a49e3d14b513e62ca13742bada0724f5aaa431 Author: Krishn Parasar Date: Sun, 23 Nov 2025 20:07:01 +0530 Natural Cubic Spline Fitting method Examples/FittedBondCurve/FittedBondCurve.cpp | 61 ++++++- .../yield/nonlinearfittingmethods.cpp | 187 +++++++++++++++++++++ .../yield/nonlinearfittingmethods.hpp | 40 +++++ 3 files changed, 281 insertions(+), 7 deletions(-) commit 262bce13bcd67fcd77e46bba64c5e49be469248a Author: Peter Caspers Date: Sun, 23 Nov 2025 13:14:44 +0100 make MultiCurveBootstrap internal to MultiCurve ql/termstructures/globalbootstrap.cpp | 8 +++++++- ql/termstructures/multicurve.cpp | 8 ++++++-- ql/termstructures/multicurve.hpp | 4 +++- test-suite/piecewiseyieldcurve.cpp | 2 +- 4 files changed, 17 insertions(+), 5 deletions(-) commit 9dcb763008752d894848b16dba640ccc3d648177 Author: Auto Differentiation Dev Team <107129969+auto-differentiation-dev@users.noreply.github.com> Date: Fri, 21 Nov 2025 12:34:28 +0000 Make sure the correct vector initialiser is used even in AD case If Real is not double, the compiler has to choose between converting {1.0} to a `Real` for value initializer, or converting it to a `size_t` for the size initializer, and favours the latter. test-suite/dividendoption.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit e46ecf9f013f3fbc9ea9bbaec07ed43b99df5818 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Tue, 18 Nov 2025 13:43:56 +0000 Update generated headers ql/pricingengines/vanilla/all.hpp | 1 + 1 file changed, 1 insertion(+) commit 825246da0d208dc0a7ed887aef2caebbf0c9c671 Merge: e3bf39e73 3d3c2f133 Author: Luigi Ballabio Date: Tue, 18 Nov 2025 14:41:44 +0100 added semi-analytic European engine for a single asset with cash dividends (#2373) commit ae36b13f2e5a9a7f4edfb6e4e6bf4ab55bc06926 Author: uzi101 Date: Fri, 14 Nov 2025 11:06:53 -0500 Update cross-currency swap rate helper and test suite .../termstructures/crosscurrencyratehelpers.cpp | 168 ++++++++++++--------- .../termstructures/crosscurrencyratehelpers.hpp | 56 ++++--- test-suite/crosscurrencyratehelpers.cpp | 100 +++++++++++- 3 files changed, 224 insertions(+), 100 deletions(-) commit e3bf39e73e79d5a15e1b23a314f126e35711298e Merge: 18819d475 58036268f Author: Luigi Ballabio Date: Thu, 13 Nov 2025 11:37:06 +0100 Deprecate retrieval of lagged rates from inflation term structures (#2374) commit 18819d47591901acd33ac78430cfce7d7363626a Author: Luigi Ballabio Date: Thu, 13 Nov 2025 09:42:50 +0100 Fix a few typos Docs/pages/lattices.docs | 2 +- Examples/DiscreteHedging/DiscreteHedging.cpp | 2 +- Examples/FRA/FRA.cpp | 2 +- ql/experimental/credit/basecorrelationlossmodel.hpp | 2 +- ql/experimental/credit/defaultevent.hpp | 2 +- ql/experimental/credit/randomdefaultlatentmodel.hpp | 2 +- ql/experimental/credit/randomlosslatentmodel.hpp | 2 +- ql/experimental/credit/recursivelossmodel.hpp | 2 +- ql/experimental/credit/saddlepointlossmodel.hpp | 2 +- ql/methods/finitedifferences/tridiagonaloperator.hpp | 2 +- ql/models/marketmodels/models/capletcoterminalswaptioncalibration.cpp | 4 ++-- ql/models/shortrate/onefactormodels/markovfunctional.hpp | 2 +- ql/pricingengines/forward/forwardengine.hpp | 2 +- ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp | 4 ++-- ql/termstructures/defaulttermstructure.hpp | 2 +- ql/termstructures/volatility/equityfx/impliedvoltermstructure.hpp | 4 ++-- 16 files changed, 19 insertions(+), 19 deletions(-) commit 58036268f142968d014900bcf4e374f3082d643a Author: Luigi Ballabio Date: Wed, 12 Nov 2025 08:16:55 +0100 Deprecate retrieval of lagged rates from inflation term structures No longer needed since the lag is managed by the coupons. .../inflation/yoycapfloortermpricesurface.hpp | 3 +- ql/indexes/inflationindex.cpp | 4 +-- .../inflation/inflationcapfloorengines.cpp | 2 +- ql/termstructures/inflationtermstructure.cpp | 12 +++++++ ql/termstructures/inflationtermstructure.hpp | 37 ++++++++++++++-------- test-suite/inflation.cpp | 2 +- 6 files changed, 41 insertions(+), 19 deletions(-) commit 3d3c2f133a0d32c9f0e494f2a39b124ef27ec043 Author: klaus spanderen Date: Wed, 12 Nov 2025 21:54:25 +0100 fixed error message ql/pricingengines/basket/choibasketengine.cpp | 2 ++ test-suite/dividendoption.cpp | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) commit 4049af9e4eae2a3c25460bec60ffda2b4bdc7f30 Author: klaus spanderen Date: Wed, 12 Nov 2025 19:23:37 +0100 extend test cases ql/pricingengines/basket/choibasketengine.cpp | 6 +- .../vanilla/cashdividendeuropeanengine.cpp | 47 +++-- test-suite/dividendoption.cpp | 203 +++++++++++++++++++-- 3 files changed, 228 insertions(+), 28 deletions(-) commit a1fe2fe4e1bed4d8d174800d5a84d036f769cf12 Merge: 339376eeb e6ebc3426 Author: Luigi Ballabio Date: Wed, 12 Nov 2025 13:47:57 +0100 Make it possible to use default setting for `includeSettlementDateFlows` in `CashFlows` methods (#2372) commit e6ebc34265bc2bb42dc2c098824154430da437ec Author: Luigi Ballabio Date: Tue, 11 Nov 2025 17:59:45 +0100 Use default settings in Bond::isExpired ql/instruments/bond.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 02b1a141388e39e05a404a9a5048d1590c8e038a Author: Luigi Ballabio Date: Tue, 11 Nov 2025 17:04:39 +0100 Remove unused parameter in internal function ql/cashflows/cashflows.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) commit 4b7ea77e4cfda714a676d00fc7080829d977fd49 Author: Luigi Ballabio Date: Tue, 11 Nov 2025 16:55:55 +0100 Make it possible to use default setting for includeSettlementDateFlows ql/cashflows/cashflows.cpp | 84 +++++++++++++++++++++---------------------- ql/cashflows/cashflows.hpp | 90 +++++++++++++++++++++++----------------------- 2 files changed, 87 insertions(+), 87 deletions(-) commit 339376eebbad41b032c2d8249c838ef5bd30e024 Merge: 0d1259428 d6e29d7b1 Author: Luigi Ballabio Date: Tue, 11 Nov 2025 09:05:40 +0100 Simplify LogInterpolationImpl and MixedInterpolationImpl (#2363) commit 0d12594286c3da9d610ffbc0c04fdb9a77678c8a Author: Luigi Ballabio Date: Mon, 10 Nov 2025 11:04:40 +0100 Update Boost download link in workflow .github/workflows/cmake-latest-runners.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5c85938badaff1787800f4e13da28184d76d7f5a Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sun, 9 Nov 2025 01:41:09 +0000 Automated fixes by clang-tidy ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp | 4 ++-- ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp | 4 ++-- ql/termstructures/yield/zerospreadedtermstructure.hpp | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) commit 7ccb3629ef1b423ab7c7eca2152bd3b272f4208d Author: uzi101 Date: Sat, 8 Nov 2025 08:56:29 -0500 Refactor CrossCurrencySwapRateHelper into experimental helpers with unified collateral handling ql/CMakeLists.txt | 2 - .../termstructures/crosscurrencyratehelpers.cpp | 133 +++++++++ .../termstructures/crosscurrencyratehelpers.hpp | 54 +++- .../yield/crosscurrencyswapratehelper.cpp | 166 ----------- .../yield/crosscurrencyswapratehelper.hpp | 73 ----- test-suite/CMakeLists.txt | 1 - test-suite/crosscurrencyratehelpers.cpp | 116 +++++++- test-suite/crosscurrencyswapratehelper.cpp | 306 --------------------- 8 files changed, 301 insertions(+), 550 deletions(-) commit ef1f370cea722ed63ad6222abee63789689d31b5 Author: klaus spanderen Date: Thu, 6 Nov 2025 22:59:43 +0100 reformat tabs .../finitedifferences/stepconditions/fdmstepconditioncomposite.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 70fb37f74906f1ea5d04d469beb5ce82ffeed332 Author: klaus spanderen Date: Thu, 6 Nov 2025 22:58:38 +0100 reformat tabs .../vanilla/cashdividendeuropeanengine.cpp | 36 +-- .../vanilla/cashdividendeuropeanengine.hpp | 10 +- .../vanilla/fdblackscholesvanillaengine.cpp | 10 +- .../vanilla/fdblackscholesvanillaengine.hpp | 4 +- test-suite/dividendoption.cpp | 308 ++++++++++----------- 5 files changed, 184 insertions(+), 184 deletions(-) commit 97a7e04c3ae54b02b7978e631ee1c27f9efc90e9 Author: klaus spanderen Date: Thu, 6 Nov 2025 22:51:49 +0100 fixed test cases .../vanilla/cashdividendeuropeanengine.cpp | 173 +++++++++++++++++++++ .../vanilla/cashdividendeuropeanengine.hpp | 67 ++++++++ test-suite/americanoption.cpp | 4 +- test-suite/dividendoption.cpp | 2 +- 4 files changed, 242 insertions(+), 4 deletions(-) commit 6e20b12c99edaf4092920bd3bb771421852dad90 Author: klaus spanderen Date: Thu, 6 Nov 2025 21:16:05 +0100 cash dividend engine, first version QuantLib.vcxproj | 2 + QuantLib.vcxproj.filters | 6 + ql/CMakeLists.txt | 2 + .../stepconditions/fdmstepconditioncomposite.cpp | 12 +- .../utilities/escroweddividendadjustment.cpp | 3 +- ql/pricingengines/vanilla/Makefile.am | 2 + .../vanilla/fdblackscholesvanillaengine.cpp | 20 +- .../vanilla/fdblackscholesvanillaengine.hpp | 7 +- test-suite/dividendoption.cpp | 270 +++++++++++++++++++++ test-suite/fdheston.cpp | 1 - 10 files changed, 312 insertions(+), 13 deletions(-) commit a56667380bef38d0f8fe766d8e4a1ff9c122b7b5 Author: uzi101 Date: Wed, 5 Nov 2025 18:06:21 -0500 Add CrossCurrencySwapRateHelper for cross-currency swap bootstrapping ql/CMakeLists.txt | 2 + ql/termstructures/yield/all.hpp | 1 + .../yield/crosscurrencyswapratehelper.cpp | 166 +++++++++++ .../yield/crosscurrencyswapratehelper.hpp | 73 +++++ test-suite/CMakeLists.txt | 1 + test-suite/crosscurrencyswapratehelper.cpp | 306 +++++++++++++++++++++ 6 files changed, 549 insertions(+) commit 33e452e496f8e6b5147e5b4a214e3934a48d6e18 Merge: c068ec3a2 7419a6885 Author: Luigi Ballabio Date: Wed, 5 Nov 2025 14:29:24 +0100 Remove day counter argument from spreaded curves (#2365) commit 7419a6885dded8f111a199c95ce1fab7b7d4ef90 Author: Luigi Ballabio Date: Wed, 5 Nov 2025 12:11:09 +0100 Show deprecation in generated docs ql/termstructures/yield/piecewiseforwardspreadedtermstructure.hpp | 3 +++ ql/termstructures/yield/piecewisezerospreadedtermstructure.hpp | 3 +++ ql/termstructures/yield/zerospreadedtermstructure.hpp | 3 +++ 3 files changed, 9 insertions(+) commit c068ec3a276834f5a60358bdce8d29c22671204d Merge: d823f4ecb e1b3051f5 Author: Luigi Ballabio Date: Mon, 3 Nov 2025 16:24:03 +0100 Allow crossed ranges in holidayList and businessDayList (#2362) commit 5cb1bffa0d3a1e4ddf40c530fdefd6281f32ffdc Author: Eugene Toder Date: Thu, 30 Oct 2025 15:31:15 -0400 Remove day counter argument from spreaded curves Spreaded curves always use the same day counter as the original curve. It's not possible to support a different day counter without some API changes on the base YieldTermStructure. Currently these classes simply ignore the passed day counter. Deprecate the current constructors and add new ones that do not take a day counter. ql/cashflows/cashflows.cpp | 71 +++++----------------- .../finitedifferences/operators/fdmbatesop.cpp | 4 +- .../piecewiseforwardspreadedtermstructure.hpp | 42 +++++++++---- .../yield/piecewisezerospreadedtermstructure.hpp | 49 +++++++++++---- .../yield/zerospreadedtermstructure.hpp | 24 +++++--- test-suite/capfloor.cpp | 8 +-- test-suite/piecewisezerospreadedtermstructure.cpp | 5 +- 7 files changed, 101 insertions(+), 102 deletions(-) commit d6e29d7b12265bcd52e535d7743e1041ef154c15 Author: Eugene Toder Date: Wed, 29 Oct 2025 22:18:28 -0400 Simplify LogInterpolationImpl and MixedInterpolationImpl Remove Interpolators as class template parameters and move them to constructors instead. They are not used after construction. This removes duplication in the generated code. Also, remove unneeded members from MixedInterpolationImpl and improve the check on switch point. ql/math/interpolation.hpp | 4 +- ql/math/interpolations/loginterpolation.hpp | 41 ++++++++--------- ql/math/interpolations/mixedinterpolation.hpp | 64 +++++++++++++-------------- 3 files changed, 51 insertions(+), 58 deletions(-) commit 1e8c557b296526b7607d8916d31106b6f7dbaac6 Author: Peter Caspers Date: Thu, 30 Oct 2025 09:02:47 +0100 allow to add observers to multicurve bootstrap ql/termstructures/globalbootstrap.cpp | 10 +++++++++- ql/termstructures/globalbootstrap.hpp | 2 ++ ql/termstructures/multicurve.cpp | 4 ++++ ql/termstructures/multicurve.hpp | 5 +++-- 4 files changed, 18 insertions(+), 3 deletions(-) commit e1b3051f571f37d986bd9ff347e571bbcdfa270d Author: Eugene Toder Date: Wed, 29 Oct 2025 22:09:27 -0400 Allow crossed ranges in holidayList and businessDayList This should just return an empty vector instead of throwing an error. ql/time/calendar.cpp | 6 ------ test-suite/calendars.cpp | 13 +++++++++---- 2 files changed, 9 insertions(+), 10 deletions(-) commit 42bdd82ef8385a1b8c303319e159f70df4d56b71 Author: Peter Caspers Date: Wed, 29 Oct 2025 18:03:18 +0100 not needed any more ql/termstructures/iterativebootstrap.hpp | 1 - ql/termstructures/localbootstrap.hpp | 1 - 2 files changed, 2 deletions(-) commit 139b5e3d7963f70f86cb46c43efb282ca9a149ba Author: Eugene Toder Date: Tue, 28 Oct 2025 15:53:03 -0400 Make safer ql/termstructures/multicurve.cpp | 3 ++- ql/termstructures/yield/piecewiseyieldcurve.hpp | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) commit 0497ccdba90de03a4563817d6360f0649b263182 Author: Peter Caspers Date: Wed, 29 Oct 2025 16:24:53 +0100 handle thread safe observer build ql/termstructures/multicurve.cpp | 12 ++++++++---- ql/termstructures/multicurve.hpp | 9 ++++++--- 2 files changed, 14 insertions(+), 7 deletions(-) commit d353587bf8d101101368890dc0449172428dd836 Author: Peter Caspers Date: Wed, 29 Oct 2025 12:09:28 +0100 back to original code, does the order matter? ql/termstructures/multicurve.cpp | 4 ++-- ql/termstructures/multicurve.hpp | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) commit c3e3fee60b04cd281ac35ec3d1cf72831d2177b2 Author: Peter Caspers Date: Wed, 29 Oct 2025 12:08:21 +0100 Revert "attempt to resolve compile and weak_ptr issues" This reverts commit f6e7a59a57bc877403d657494aa457ac06b3ef70. ql/termstructures/multicurve.cpp | 4 ++-- ql/termstructures/multicurve.hpp | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) commit f6e7a59a57bc877403d657494aa457ac06b3ef70 Author: Peter Caspers Date: Wed, 29 Oct 2025 11:29:57 +0100 attempt to resolve compile and weak_ptr issues ql/termstructures/multicurve.cpp | 4 ++-- ql/termstructures/multicurve.hpp | 7 +++---- 2 files changed, 5 insertions(+), 6 deletions(-) commit a8095fd9069eda1afe64d25197c6a6e40eca770b Author: Peter Caspers Date: Wed, 29 Oct 2025 09:56:23 +0100 do we need this? ql/termstructures/multicurve.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 21808cdf585172ff4ceb78f2fa4f1dc5748a7e3c Author: Peter Caspers Date: Wed, 29 Oct 2025 09:46:19 +0100 not needed ql/termstructures/multicurve.hpp | 1 - 1 file changed, 1 deletion(-) commit e3966ee973b627b45d44944874d88f748999ebfd Author: Peter Caspers Date: Wed, 29 Oct 2025 09:24:05 +0100 fix ql/termstructures/multicurve.cpp | 4 ++-- ql/termstructures/multicurve.hpp | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) commit ea31f6d580ed1a62feb9b754b1e007c300300f31 Author: Peter Caspers Date: Tue, 28 Oct 2025 19:45:45 +0100 simplify observability ql/termstructures/multicurve.cpp | 31 +++++++------------------------ ql/termstructures/multicurve.hpp | 21 +++++---------------- 2 files changed, 12 insertions(+), 40 deletions(-) commit 4a2638ba567e0e011107ed71ec6a6d2d49bc238d Author: Peter Caspers Date: Tue, 28 Oct 2025 19:45:24 +0100 use dynamic cast ql/termstructures/globalbootstrap.hpp | 2 +- ql/termstructures/iterativebootstrap.hpp | 1 + ql/termstructures/localbootstrap.hpp | 1 + ql/termstructures/yield/piecewiseyieldcurve.hpp | 5 ++++- ql/termstructures/yieldtermstructure.hpp | 2 +- 5 files changed, 8 insertions(+), 3 deletions(-) commit d823f4ecbadebeeafc98b4b68e7372576341aa11 Merge: aa0fa6ff8 db1b59cc4 Author: Luigi Ballabio Date: Tue, 28 Oct 2025 15:43:46 +0100 Implement ZeroCouponInflationSwap::fixedLegBPS() (#2360) commit aa0fa6ff89fc8aba2a659d9052e7d4f9d88e07dc Merge: b5f79d4a3 d734b6b9b Author: Luigi Ballabio Date: Tue, 28 Oct 2025 15:28:08 +0100 Small optimization for VV adjustment (#2356) commit db1b59cc4ff8c125244998844aa7ae33cf0cc224 Author: Eugene Toder Date: Sat, 25 Oct 2025 10:33:16 -0400 Implement ZeroCouponInflationSwap::fixedLegBPS() ql/instruments/zerocouponinflationswap.cpp | 19 +++++++++++++++++++ ql/instruments/zerocouponinflationswap.hpp | 1 + ql/instruments/zerocouponswap.cpp | 6 +++--- test-suite/inflation.cpp | 21 ++++++++++++++++++++- 4 files changed, 43 insertions(+), 4 deletions(-) commit b5f79d4a320c6ee78bf6364c943bd9bfc7545da8 Merge: fd20c1cfe 04186b702 Author: Luigi Ballabio Date: Mon, 27 Oct 2025 15:14:31 +0100 fixed misspelled Euribor curve (#2359) commit fd20c1cfe47da2b4521dd548dfd8ccd9120e0852 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Oct 2025 12:05:30 +0000 Bump actions/upload-artifact from 4 to 5 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/msvc-analysis.yml | 2 +- .github/workflows/test-times.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 04186b70291f39f42cbe728f7be4713e1dcc909c Author: Babar Khan <46613555+BabarZKhan@users.noreply.github.com> Date: Mon, 27 Oct 2025 13:49:03 +0100 Fix misspelled Euribor curve Examples/Gaussian1dModels/Gaussian1dModels.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d1574ee74ddb850a64d8a6385d15d91b50096c78 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sun, 26 Oct 2025 01:32:00 +0000 Automated fixes by clang-tidy ql/termstructures/inflation/inflationhelpers.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c698c94c474cb91c8af3080a93e614226a01754a Author: Peter Caspers Date: Sun, 26 Oct 2025 10:28:27 +0100 tbd, simplify interface, but undefined behavior possible ql/termstructures/multicurve.cpp | 8 ++++++-- ql/termstructures/multicurve.hpp | 3 +-- ql/termstructures/yield/piecewiseyieldcurve.hpp | 3 ++- ql/termstructures/yieldtermstructure.hpp | 5 +++++ test-suite/piecewiseyieldcurve.cpp | 4 ++-- 5 files changed, 16 insertions(+), 7 deletions(-) commit e25269befa0c9a0b706c3ae7dd595066300daf80 Author: Peter Caspers Date: Sun, 26 Oct 2025 10:26:52 +0100 merge setupCostFunction() and guess() into one method ql/termstructures/globalbootstrap.cpp | 3 +-- ql/termstructures/globalbootstrap.hpp | 22 +++++++++------------- 2 files changed, 10 insertions(+), 15 deletions(-) commit c2e2f07a811af23d67bbd2fa0463e04156b74867 Author: Peter Caspers Date: Sun, 26 Oct 2025 09:45:25 +0100 make class final ql/termstructures/globalbootstrap.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 41f0b952750daf76a3265bb1b535cc0da0d74e2b Author: Peter Caspers Date: Sat, 25 Oct 2025 16:13:43 +0200 fix test setup test-suite/piecewiseyieldcurve.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit b6f3538bb01d56701776c0e95503927c9931a509 Author: Peter Caspers Date: Sat, 25 Oct 2025 13:25:28 +0200 should be explicit ql/termstructures/globalbootstrap.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 56adfa9c264aa2b72ae9e078d5771a0995e98249 Author: Peter Caspers Date: Sat, 25 Oct 2025 12:42:45 +0200 init members ql/termstructures/globalbootstrap.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit aa3366889f789240ea1d5a6980c211f67a1c7723 Author: Peter Caspers Date: Sat, 25 Oct 2025 12:20:13 +0200 add unit test test-suite/piecewiseyieldcurve.cpp | 141 +++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) commit 0443b4ed1052bd2ec41df2561bf678e6e46f5990 Author: Peter Caspers Date: Sat, 25 Oct 2025 12:20:03 +0200 add multicurve QuantLib.vcxproj | 4 ++- QuantLib.vcxproj.filters | 8 ++++- ql/CMakeLists.txt | 2 ++ ql/termstructures/Makefile.am | 2 ++ ql/termstructures/multicurve.cpp | 71 ++++++++++++++++++++++++++++++++++++++++ ql/termstructures/multicurve.hpp | 69 ++++++++++++++++++++++++++++++++++++++ 6 files changed, 154 insertions(+), 2 deletions(-) commit 126d40fe220c7c1cd23abaab960d22d0f534fc1b Author: Peter Caspers Date: Sat, 25 Oct 2025 12:19:33 +0200 simplify ql/termstructures/globalbootstrap.cpp | 146 ++++++++++++++------------------- ql/termstructures/globalbootstrap.hpp | 147 ++++++++++++++-------------------- 2 files changed, 122 insertions(+), 171 deletions(-) commit 70d83d5b4cd64615019efb7e8ab7e42dd1ff00ef Author: Peter Caspers Date: Sat, 25 Oct 2025 12:19:16 +0200 add inspector ql/termstructures/yield/piecewiseyieldcurve.hpp | 1 + 1 file changed, 1 insertion(+) commit d734b6b9b58c12dd0250939f191c4e8d5dbc29b0 Author: paolodelia99 Date: Fri, 24 Oct 2025 23:56:15 +0200 Remove atm bs and atm market price, since they are the same ql/experimental/barrieroption/vannavolgabarrierengine.cpp | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) commit ca8d518c857d8667da402f97aa8294844561f73f Merge: a41624cfe 19c510204 Author: Luigi Ballabio Date: Fri, 24 Oct 2025 16:56:57 +0200 fix: clean up extra semicolon in output loops (#2355) commit 19c5102048bbb53b2f98931d9bbcbb6643fb02b7 Author: Luigi Ballabio Date: Fri, 24 Oct 2025 15:16:09 +0200 Fix indentation to avoid CI warning Examples/LatentModel/LatentModel.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) commit a41624cfe9e8ba88b59817de158b629f9e6c7142 Merge: a67b0dba4 4ae8dfcfe Author: Luigi Ballabio Date: Fri, 24 Oct 2025 15:01:12 +0200 Vanna-Volga (#2354) commit 5f6c9e0e55688e8545605a4124179e82cb5f76c0 Author: BabarZKhan <46613555+BabarZKhan@users.noreply.github.com> Date: Fri, 24 Oct 2025 12:11:57 +0200 fix: clean up extra semicolon in output loops I'm using QuantLib examples to deep-dive into QuantLib. While testing and understanding basic usage of a Latent variable model, I found some extra semicolons in nested loops. Yes, it is syntactically valid but serves no purpose. Examples/LatentModel/LatentModel.cpp | 2 -- 1 file changed, 2 deletions(-) commit 4ae8dfcfefd70e6c141a2c87c1afaf7b3e48cba3 Author: kp9991 Date: Wed, 22 Oct 2025 19:58:09 +1100 Vanna-Volga ql/pricingengines/bacheliercalculator.cpp | 21 ++++++++++++ ql/pricingengines/bacheliercalculator.hpp | 6 ++++ ql/pricingengines/blackcalculator.cpp | 32 +++++++++++++++++++ ql/pricingengines/blackcalculator.hpp | 6 ++++ test-suite/bacheliercalculator.cpp | 53 +++++++++++++++++++++++++++++++ test-suite/blackcalculator.cpp | 52 ++++++++++++++++++++++++++++++ 6 files changed, 170 insertions(+) commit a67b0dba4db6217ec5c48f324df382c7864f9198 Author: Luigi Ballabio Date: Tue, 21 Oct 2025 12:49:56 +0200 Update default Ubuntu image for CI builds .github/workflows/devenv-images.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit afd13138c17f64a8f6ded6b36dc1e0c1da919607 Merge: 81d4dd108 65074a39a Author: Luigi Ballabio Date: Mon, 20 Oct 2025 17:11:15 +0200 Add constructors with 2 dates for inflation swap helpers (#2351) commit 81d4dd10881d81593d30b2ca35fecba11f010e8a Merge: 10fa56041 948ff6fcc Author: Luigi Ballabio Date: Mon, 20 Oct 2025 12:26:29 +0200 Make PiecewiseSpreadYieldCurve::traits_type public (#2350) commit 10fa56041dd734e4356f3c907e51347170e7adfe Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Sun, 19 Oct 2025 01:42:45 +0000 Automated fixes by clang-tidy test-suite/ultimateforwardtermstructure.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 65074a39a82810a7ac7ef6a23957294077129992 Author: Eugene Toder Date: Sat, 18 Oct 2025 19:18:59 -0400 Add constructors with 2 dates for inflation swap helpers ql/termstructures/inflation/inflationhelpers.cpp | 77 +++++++++++++++++++----- ql/termstructures/inflation/inflationhelpers.hpp | 40 +++++++++++- 2 files changed, 98 insertions(+), 19 deletions(-) commit 948ff6fccc4c61b2f6d790e25f61e9639b0b66d3 Author: Eugene Toder Date: Sat, 18 Oct 2025 17:19:19 -0400 Make PiecewiseSpreadYieldCurve::traits_type public This matches PiecewiseYieldCurve and is useful in some generic code. ql/termstructures/yield/piecewisespreadyieldcurve.hpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit b8a116f59706c57f683cc0298cdbcd96f5e9446f Author: paolodelia99 Date: Fri, 17 Oct 2025 10:49:41 +0200 Small adjustments as suggested in the PR ql/cashflows/blackovernightindexedcouponpricer.hpp | 2 -- ql/cashflows/couponpricer.cpp | 18 ++++++++++-------- ql/cashflows/overnightindexedcouponpricer.cpp | 1 + 3 files changed, 11 insertions(+), 10 deletions(-) commit ae9d80438ac70e644eb97cbcff96e29cb928d057 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Wed, 15 Oct 2025 15:42:42 +0000 Update copyright list in license LICENSE.TXT | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 0f8041b4cb0e5da5ec2e5799640f9b00b6baf99c Merge: 84b0e8ecc bccac7e14 Author: Luigi Ballabio Date: Wed, 15 Oct 2025 17:42:32 +0200 Enable rounding in UFR interpolation (#2342) commit bccac7e14ff917a9d4a8ee1d03bce3b4c337a94a Author: Luigi Ballabio Date: Wed, 15 Oct 2025 16:15:26 +0200 Expanded comment ql/termstructures/yield/ultimateforwardtermstructure.hpp | 8 ++++---- test-suite/ultimateforwardtermstructure.cpp | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) commit 84b0e8ecc99836c31a7350f9f68b0bf77be7d9ce Merge: 10f1dfd7e 6f379f4e9 Author: Luigi Ballabio Date: Tue, 14 Oct 2025 15:11:39 +0200 Remove features deprecated in version 1.36 (#2348) commit 10f1dfd7e076e540b2c855b7dd1a16789edd5666 Author: lballabio[bot] <224797326+lballabio-bot@users.noreply.github.com> Date: Tue, 14 Oct 2025 08:47:55 +0000 Set version to 1.41-dev CMakeLists.txt | 6 +++--- configure.ac | 2 +- ql/version.hpp | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) commit bcd4d3b7d8eb2502b486930d1b0db50468f6be45 Author: Luigi Ballabio Date: Tue, 14 Oct 2025 09:39:51 +0200 Removed deprecated macos-13 runner from CI builds .github/workflows/cmake-latest-runners.yml | 1 - .github/workflows/macos-nondefault.yml | 2 +- .github/workflows/macos.yml | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) commit 976baa9f6b6626da2e796fa59d78c5608725a296 Author: Luigi Ballabio Date: Tue, 14 Oct 2025 09:59:51 +0200 Add workflow to increase version number after release .github/workflows/increase-version-number.yml | 40 +++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) commit 463fbded733c90120dc2c24b2e1b22dd98dc18ca Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Oct 2025 11:48:14 +0000 Bump github/codeql-action from 3 to 4 Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3 to 4. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/v3...v4) --- updated-dependencies: - dependency-name: github/codeql-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/codeql-analysis.yml | 6 +++--- .github/workflows/msvc-analysis.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) commit 6f379f4e9dea16419365f6c64dae8f9106f51f78 Author: Luigi Ballabio Date: Mon, 8 Sep 2025 17:24:56 +0200 Remove features deprecated in version 1.36 QuantLib.vcxproj | 6 - QuantLib.vcxproj.filters | 18 -- cmake/GenerateHeaders.cmake | 9 +- ql/CMakeLists.txt | 6 - ql/Makefile.am | 2 + ql/cashflows/capflooredinflationcoupon.hpp | 23 -- ql/cashflows/conundrumpricer.cpp | 2 +- ql/cashflows/yoyinflationcoupon.cpp | 25 -- ql/cashflows/yoyinflationcoupon.hpp | 25 -- ql/experimental/Makefile.am | 2 - ql/experimental/averageois/Makefile.am | 30 +- ql/experimental/averageois/all.hpp | 3 - .../averageois/arithmeticaverageois.cpp | 150 --------- .../averageois/arithmeticaverageois.hpp | 95 +----- .../averageois/arithmeticoisratehelper.cpp | 113 ------- .../averageois/arithmeticoisratehelper.hpp | 69 +--- .../averageois/averageoiscouponpricer.hpp | 28 -- .../averageois/makearithmeticaverageois.cpp | 241 -------------- .../averageois/makearithmeticaverageois.hpp | 83 +---- .../perturbativebarrieroptionengine.cpp | 2 +- ql/experimental/credit/gaussianlhplossmodel.hpp | 2 +- ql/experimental/credit/pool.cpp | 2 +- .../credit/randomdefaultlatentmodel.hpp | 2 +- ql/experimental/credit/saddlepointlossmodel.hpp | 2 +- .../finitedifferences/fdmvppstepcondition.hpp | 2 +- .../inflation/yoycapfloortermpricesurface.cpp | 17 - .../inflation/yoycapfloortermpricesurface.hpp | 63 ---- ql/experimental/inflation/yoyoptionlethelpers.cpp | 14 - ql/experimental/inflation/yoyoptionlethelpers.hpp | 16 +- .../gaussiannoncentralchisquaredpolynomial.cpp | 2 - .../gaussiannoncentralchisquaredpolynomial.hpp | 2 +- ql/experimental/math/multidimintegrator.hpp | 2 +- ql/experimental/math/multidimquadrature.hpp | 2 +- ql/experimental/math/tcopulapolicy.hpp | 2 +- .../mcbasket/longstaffschwartzmultipathpricer.hpp | 2 +- ql/experimental/models/normalclvmodel.hpp | 2 +- ql/experimental/models/squarerootclvmodel.hpp | 2 +- .../processes/extendedornsteinuhlenbeckprocess.hpp | 2 +- ql/experimental/risk/Makefile.am | 28 +- ql/experimental/risk/all.hpp | 2 - ql/experimental/risk/creditriskplus.cpp | 240 -------------- ql/experimental/risk/creditriskplus.hpp | 74 +---- ql/experimental/risk/sensitivityanalysis.cpp | 350 --------------------- ql/experimental/risk/sensitivityanalysis.hpp | 198 +----------- .../generalizedornsteinuhlenbeckprocess.hpp | 2 +- .../integralhestonvarianceoptionengine.cpp | 2 +- ql/functional.hpp | 50 +-- ql/indexes/equityindex.cpp | 12 - ql/indexes/equityindex.hpp | 10 - ql/instruments/makeyoyinflationcapfloor.cpp | 7 - ql/instruments/makeyoyinflationcapfloor.hpp | 10 +- ql/instruments/yearonyearinflationswap.cpp | 16 - ql/instruments/yearonyearinflationswap.hpp | 18 +- ql/math/integrals/integral.hpp | 2 +- ql/math/integrals/kronrodintegral.hpp | 2 +- ql/math/integrals/twodimensionalintegral.hpp | 2 +- ql/math/interpolations/chebyshevinterpolation.hpp | 2 +- ql/math/linearleastsquaresregression.hpp | 2 +- ql/math/matrixutilities/bicgstab.hpp | 2 +- ql/math/matrixutilities/gmres.hpp | 3 +- ql/math/matrixutilities/tapcorrelations.hpp | 2 +- ql/math/ode/adaptiverungekutta.hpp | 2 +- ql/math/optimization/levenbergmarquardt.cpp | 2 +- ql/math/optimization/levenbergmarquardt.hpp | 6 - ql/math/optimization/lmdif.hpp | 2 +- .../randomnumbers/stochasticcollocationinvcdf.hpp | 2 +- ql/math/richardsonextrapolation.hpp | 2 +- .../meshers/concentrating1dmesher.hpp | 4 +- .../operators/numericaldifferentiation.hpp | 2 +- .../schemes/impliciteulerscheme.cpp | 2 +- .../finitedifferences/schemes/trbdf2scheme.hpp | 2 +- .../utilities/escroweddividendadjustment.hpp | 2 +- .../utilities/fdminnervaluecalculator.hpp | 2 +- .../utilities/fdmmesherintegral.hpp | 2 +- .../utilities/fdmtimedepdirichletboundary.hpp | 2 +- ql/methods/montecarlo/earlyexercisepathpricer.hpp | 2 +- .../montecarlo/longstaffschwartzpathpricer.hpp | 2 +- ql/methods/montecarlo/lsmbasissystem.hpp | 2 +- .../basket/mcamericanbasketengine.hpp | 3 +- ql/pricingengines/vanilla/analytichestonengine.cpp | 4 +- ql/pricingengines/vanilla/analytichestonengine.hpp | 2 +- .../vanilla/exponentialfittinghestonengine.cpp | 2 +- ql/quantlib.hpp | 2 - ql/termstructures/globalbootstrap.hpp | 2 +- ql/termstructures/inflation/inflationhelpers.cpp | 13 - ql/termstructures/inflation/inflationhelpers.hpp | 13 - .../inflation/piecewisezeroinflationcurve.hpp | 2 +- .../equityfx/andreasenhugevolatilityinterpl.hpp | 3 +- .../equityfx/gridmodellocalvolsurface.cpp | 2 +- ql/timeseries.hpp | 2 +- ql/tuple.hpp | 34 +- test-suite/CMakeLists.txt | 1 - test-suite/Makefile.am | 1 - test-suite/creditriskplus.cpp | 132 -------- test-suite/testsuite.vcxproj | 1 - test-suite/testsuite.vcxproj.filters | 3 - 96 files changed, 81 insertions(+), 2287 deletions(-) commit 3bdcb6e8211f110152b73b20386f9fb1cfc0019d Author: Luigi Ballabio Date: Tue, 14 Oct 2025 09:34:12 +0200 Fix link in draft release notes .github/workflows/publish-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit d7f10e50521c00a3e597d725358650499f4650a2 Author: Peter Caspers Date: Sun, 12 Oct 2025 12:10:32 +0200 make ctor explicit ql/termstructures/globalbootstrap.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e4df62a83429eaa705b308a9b2ade6ce66e5fc2f Author: Peter Caspers Date: Sun, 12 Oct 2025 12:05:26 +0200 remove debug output ql/termstructures/globalbootstrap.hpp | 2 -- 1 file changed, 2 deletions(-) commit 654f421be4f6cabffa1e7a0863f8b3502979468e Author: Peter Caspers Date: Sun, 12 Oct 2025 11:51:00 +0200 fix ql/termstructures/globalbootstrap.hpp | 64 +++++++++++++++++------------------ 1 file changed, 31 insertions(+), 33 deletions(-) commit bd1eaf827ce2bdd17ce8bdee03a15ea1c00557e8 Author: Peter Caspers Date: Sat, 11 Oct 2025 20:25:32 +0200 update msvc files QuantLib.vcxproj | 1 + QuantLib.vcxproj.filters | 3 +++ 2 files changed, 4 insertions(+) commit 60f917289189d7badeafa71a6bb5a29f3fbbcdc9 Author: Peter Caspers Date: Sat, 11 Oct 2025 20:17:03 +0200 add multicurve bootstrap ql/CMakeLists.txt | 1 + ql/patterns/lazyobject.hpp | 6 ++ ql/termstructures/Makefile.am | 1 + ql/termstructures/globalbootstrap.cpp | 128 ++++++++++++++++++++++++ ql/termstructures/globalbootstrap.hpp | 177 ++++++++++++++++++++++++++-------- 5 files changed, 273 insertions(+), 40 deletions(-) commit 12f9d137cf875b35b6ea2d6c452ed279c5bdc04b Author: paolodelia99 Date: Fri, 10 Oct 2025 18:24:23 +0200 ovveride cap/floorletRate(Real, bool) and in direct childs ql/cashflows/overnightindexedcouponpricer.hpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) commit 87f381bc07ff69f3c1ae7317bfa8b10e5620b6c5 Author: paolodelia99 Date: Fri, 10 Oct 2025 18:14:52 +0200 use ext::dynamic_pointer_cast ql/cashflows/overnightindexedcoupon.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 972bace443e4a75ad9c7477dfb3046f6d123da9e Author: paolodelia99 Date: Fri, 10 Oct 2025 17:15:42 +0200 Fix compilation error, overload virtual functions ql/cashflows/overnightindexedcouponpricer.hpp | 2 ++ 1 file changed, 2 insertions(+) commit 40fb3278ab2c92517df892f63f83694c2c477c1f Author: paolodelia99 Date: Fri, 10 Oct 2025 17:11:00 +0200 Make onIndexedCouponPricer the base class for the blackONPricers, adj inheritance among those classes ql/cashflows/blackovernightindexedcouponpricer.cpp | 12 ++--- ql/cashflows/blackovernightindexedcouponpricer.hpp | 10 ++-- ql/cashflows/couponpricer.cpp | 20 ++++--- ql/cashflows/overnightindexedcoupon.cpp | 23 +++++--- ql/cashflows/overnightindexedcoupon.hpp | 7 ++- ql/cashflows/overnightindexedcouponpricer.cpp | 61 +++++++++++----------- ql/cashflows/overnightindexedcouponpricer.hpp | 56 +++++++++----------- 7 files changed, 99 insertions(+), 90 deletions(-) commit 04521a414bbf0fd12d115174d9ddde01c42750f9 Author: Marcin Rybacki Date: Wed, 8 Oct 2025 12:27:29 +0200 Incorporated PR feedback. .../yield/ultimateforwardtermstructure.hpp | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) commit 469e542cd16e8d45c8f3d646523d2eb8993aa8e8 Author: Marcin Rybacki Date: Wed, 8 Oct 2025 11:42:02 +0200 Calculate equivalent rates only when compounding different than continuous. .../yield/ultimateforwardtermstructure.hpp | 21 +++-- test-suite/ultimateforwardtermstructure.cpp | 95 +++++++++------------- 2 files changed, 54 insertions(+), 62 deletions(-) commit d4326f5e41fe312367071db406e29fff7e8f701a Author: Marcin Rybacki Date: Tue, 7 Oct 2025 17:05:50 +0200 Use camel-case naming. ql/termstructures/yield/ultimateforwardtermstructure.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 50fed27595f5e4826ca8908ed4150b71dc8a4099 Author: Marcin Rybacki Date: Tue, 7 Oct 2025 16:56:56 +0200 Adjusted indentation. ql/termstructures/yield/ultimateforwardtermstructure.hpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) commit 961c1db60ab185f29afe0c8e120c47ac8e33ad69 Author: Marcin Rybacki Date: Tue, 7 Oct 2025 16:54:53 +0200 Updated docstring. ql/termstructures/yield/ultimateforwardtermstructure.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3f6d9e60fec79aaccd9f07c7515e8f1908a2698f Author: Marcin Rybacki Date: Tue, 7 Oct 2025 16:52:35 +0200 Enabled rounding in UFR interpolation .../yield/ultimateforwardtermstructure.hpp | 52 +++++++++++++++++----- test-suite/ultimateforwardtermstructure.cpp | 41 +++++++++++++++++ 2 files changed, 83 insertions(+), 10 deletions(-) commit 9ad665a3f2d8557406021bb36079ddf2814d105b Author: paolodelia99 Date: Sat, 4 Oct 2025 17:39:52 +0200 made some ctors explicit ql/cashflows/blackovernightindexedcouponpricer.hpp | 4 ++-- ql/cashflows/overnightindexedcoupon.hpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) commit c84af72c7acb3d19d09d569af02e8a0c4b456057 Author: paolodelia99 Date: Sat, 4 Oct 2025 16:59:10 +0200 Adjustements to the ON coupon pricers class as suggested ql/cashflows/blackovernightindexedcouponpricer.cpp | 151 +++++++++++---------- ql/cashflows/blackovernightindexedcouponpricer.hpp | 26 ++-- ql/cashflows/overnightindexedcoupon.cpp | 25 ++-- ql/cashflows/overnightindexedcoupon.hpp | 3 + ql/cashflows/overnightindexedcouponpricer.cpp | 52 ++++--- ql/cashflows/overnightindexedcouponpricer.hpp | 83 +++++++---- test-suite/overnightindexedcoupon.cpp | 7 + 7 files changed, 215 insertions(+), 132 deletions(-) commit 25c0cd5b507b50d4bd9f5904f863375b3fb1bb1e Author: Luigi Ballabio Date: Wed, 3 Sep 2025 10:16:42 +0200 Initialize flags properly ql/cashflows/overnightindexedcoupon.hpp | 4 ++-- test-suite/overnightindexedcoupon.cpp | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) commit db54efa4a881698b3b0706040e1e07f0f92d05ee Author: paolodelia99 Date: Sun, 31 Aug 2025 12:27:51 +0200 More realistic tests when calculating ON leg npv test-suite/overnightindexedcoupon.cpp | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) commit cf0670779074dd4b7b83edbe9593710edbfb04c3 Author: paolodelia99 Date: Fri, 29 Aug 2025 22:40:01 +0200 add a futher cap and floor rate to match the schedule size in the tests test-suite/overnightindexedcoupon.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit a16c479b591606d0d6b58e16836f16740d50066a Author: paolodelia99 Date: Fri, 22 Aug 2025 19:07:50 +0200 Fix at par Coupon error test-suite/overnightindexedcoupon.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit c4deaad8bc6adfc423c989fb5a01bdbebd310ebb Author: paolodelia99 Date: Fri, 22 Aug 2025 18:18:28 +0200 add test for capped-floored on coupons and leg ql/cashflows/blackovernightindexedcouponpricer.hpp | 1 + test-suite/overnightindexedcoupon.cpp | 96 ++++++++++++++++++++-- 2 files changed, 89 insertions(+), 8 deletions(-) commit fabeac9063cdbd2adda540c65002dca9130b9a30 Author: paolodelia99 Date: Fri, 22 Aug 2025 11:48:01 +0200 removed redundant attributes, add first test for black pricer and reformat code ql/cashflows/blackovernightindexedcouponpricer.cpp | 846 +++++++++++---------- ql/cashflows/blackovernightindexedcouponpricer.hpp | 104 +-- ql/cashflows/overnightindexedcoupon.cpp | 5 +- ql/cashflows/overnightindexedcoupon.hpp | 10 +- ql/cashflows/overnightindexedcouponpricer.hpp | 20 +- test-suite/overnightindexedcoupon.cpp | 67 ++ 6 files changed, 568 insertions(+), 484 deletions(-) commit 8081384bf8fffa41c6a98f06a11e90470c46cc23 Author: paolodelia99 Date: Tue, 19 Aug 2025 09:32:44 +0200 Removed pragma once and use ifdef ql/cashflows/blackovernightindexedcouponpricer.hpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit c8a9a430508aa3efab60a0874ea406b07676b140 Author: paolodelia99 Date: Tue, 19 Aug 2025 09:19:05 +0200 Fix typo in vcxproj file QuantLib.vcxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5092a673ab17fdfc832bc212dd10c6d898fb58ca Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 19 Aug 2025 07:18:14 +0000 Update copyright list in license LICENSE.TXT | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1dc90fded9b6b775b3c227ff495a2e31dcc021f2 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 18 Aug 2025 21:32:10 +0000 Update generated headers ql/cashflows/all.hpp | 1 + 1 file changed, 1 insertion(+) commit 121b3f38bce0ce7643f11350fa744b48e212764e Author: paolodelia99 Date: Mon, 18 Aug 2025 23:29:53 +0200 Added blackovernigthindexedcouponpricer and updated pricesetter methods QuantLib.vcxproj | 2 + QuantLib.vcxproj.filters | 6 + ql/CMakeLists.txt | 2 + ql/cashflows/Makefile.am | 2 + ql/cashflows/blackovernightindexedcouponpricer.cpp | 511 +++++++++++++++++++++ ql/cashflows/blackovernightindexedcouponpricer.hpp | 85 ++++ ql/cashflows/couponpricer.cpp | 33 ++ ql/cashflows/overnightindexedcoupon.cpp | 15 +- ql/cashflows/overnightindexedcoupon.hpp | 13 +- 9 files changed, 663 insertions(+), 6 deletions(-) commit 633167fc20e93cc18ddf1b85d93419f5eade21a5 Author: paolodelia99 Date: Sun, 10 Aug 2025 12:03:50 +0200 Fix tolerance in overnightleg test test-suite/overnightindexedcoupon.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 85216a2c0dc1eda7aeede1c2ff9dd8dff722a72e Author: paolodelia99 Date: Thu, 7 Aug 2025 18:05:43 +0200 Add test for the overnightLeg ql/cashflows/overnightindexedcoupon.cpp | 18 +- ql/cashflows/overnightindexedcoupon.hpp | 5 +- ql/cashflows/overnightindexedcouponpricer.cpp | 3 +- test-suite/overnightindexedcoupon.cpp | 349 ++++++++++++++++++++++++++ 4 files changed, 367 insertions(+), 8 deletions(-) commit 93e3a241cededb251d81574cc7163fead74f37ed Author: paolodelia99 Date: Thu, 7 Aug 2025 12:18:03 +0200 First alignment ORE/QL ON coupon and ON coupon pricer ql/cashflows/overnightindexedcoupon.cpp | 337 +++++++++++++++++++++++++- ql/cashflows/overnightindexedcoupon.hpp | 110 ++++++++- ql/cashflows/overnightindexedcouponpricer.cpp | 92 ++++++- ql/cashflows/overnightindexedcouponpricer.hpp | 23 ++ 4 files changed, 538 insertions(+), 24 deletions(-)