Skip to content

Commit c4e3d36

Browse files
author
sebastien.bouvard
committed
QPR-13791 EqMargin Fixing bug patch
1 parent c1ccc19 commit c4e3d36

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

OREData/ored/portfolio/fixingdates.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -758,6 +758,12 @@ void FixingDateGetter::visit(CmbCoupon& c) {
758758
void FixingDateGetter::visit(EquityMarginCoupon& c) {
759759
requiredFixings_.addFixingDates(c.fixingDates(), IndexNameTranslator::instance().oreName(c.equityCurve()->name()),
760760
c.date());
761+
for (const auto& d : c.fixingDates()) {
762+
if(c.equityCurve()){
763+
Date endDate = c.equityCurve()->fixingCalendar().advance(d, -1 * Days);
764+
requiredFixings_.addFixingDate(endDate, IndexNameTranslator::instance().oreName(c.equityCurve()->name()), c.date());
765+
}
766+
}
761767
if (c.fxIndex() != nullptr)
762768
requiredFixings_.addFixingDate(c.fixingStartDate(),
763769
IndexNameTranslator::instance().oreName(c.fxIndex()->name()), c.date());

0 commit comments

Comments
 (0)