Skip to content

Commit 8dfbe2d

Browse files
pcaspersjenkins
authored andcommitted
QPR-11586 handle date-dependent strikes
1 parent 2acc58a commit 8dfbe2d

3 files changed

Lines changed: 8 additions & 3 deletions

File tree

Docker/.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
TAG=latest
2-
QL_TAG=1.29_105d651
2+
QL_TAG=1.29_d8a7100
33
BOOST_TAG=1.72.0
44
BOOST_DIR=1_72_0
55
NUM_CORES=16

OREData/ored/marketdata/capfloorvolcurve.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -832,12 +832,17 @@ boost::shared_ptr<StrippedOptionlet> CapFloorVolCurve::transform(const QuantExt:
832832
}
833833
}
834834

835+
vector<vector<Real>> optionletStrikes;
836+
for (Size i = 0; i < os.optionletFixingDates().size(); i++) {
837+
optionletStrikes.push_back(os.optionletStrikes(i));
838+
}
839+
835840
// FIXME StrippedOptionlet::atmOptionletRates() is the only method depending on whether index is Ibor or OIS
836841
// these are not used above in optSurface() though, so we do not need to extend StrippedOptionlet to handle OIS
837842
// at the moment
838843
boost::shared_ptr<StrippedOptionlet> res = boost::make_shared<StrippedOptionlet>(
839844
os.settlementDays(), os.calendar(), os.businessDayConvention(), os.index(), os.optionletFixingDates(),
840-
os.optionletStrikes(0), vols, os.dayCounter(), os.volatilityType(), os.displacement());
845+
optionletStrikes, vols, os.dayCounter(), os.volatilityType(), os.displacement());
841846

842847
res->unregisterWithAll();
843848

QuantLib

Submodule QuantLib updated from 6b5de09 to d8a7100

0 commit comments

Comments
 (0)