Skip to content

Commit 16834e9

Browse files
committed
Merge branch 'feature/QPR-13776' into 'master'
QPR-13776 Scale RPA notional by ParticipationRate when IM Schedule Closes QPR-13776 See merge request qs/oreplus!3165
2 parents c81d75f + 6dded58 commit 16834e9

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

OREData/ored/portfolio/riskparticipationagreement.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,10 @@ void RiskParticipationAgreement::buildWithSwapUnderlying(const QuantLib::ext::sh
192192
engineFactory->configuration(MarketContext::pricing))
193193
->value());
194194
}
195+
for(auto const& af: envelope().additionalFields()){
196+
if(af.first == "im_model" && af.second =="Schedule")
197+
notional_ = notional_ * participationRate_;
198+
}
195199
legs_ = underlyingLegs;
196200
legCurrencies_ = underlyingCcys;
197201
legPayers_ = underlyingPayer;
@@ -238,6 +242,10 @@ void RiskParticipationAgreement::buildWithTlockUnderlying(const QuantLib::ext::s
238242

239243
npvCurrency_ = notionalCurrency_ = tlockData_.bondData().currency();
240244
notional_ = tlockData_.bondData().bondNotional();
245+
for(auto const& af: envelope().additionalFields()){
246+
if(af.first == "im_model" && af.second =="Schedule")
247+
notional_ = notional_ * participationRate_;
248+
}
241249

242250
// checks
243251

0 commit comments

Comments
 (0)