Skip to content

Commit 8cda4ee

Browse files
pcaspersjenkins
authored andcommitted
QPR-11772 fixes
1 parent c3081cd commit 8cda4ee

6 files changed

Lines changed: 14 additions & 13 deletions

File tree

OREData/ored/ored.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@
130130
#include <ored/portfolio/builders/bondtotalreturnswap.hpp>
131131
#include <ored/portfolio/builders/cachingenginebuilder.hpp>
132132
#include <ored/portfolio/builders/capfloor.hpp>
133+
#include <ored/portfolio/builders/capflooredaveragebmacouponleg.hpp>
133134
#include <ored/portfolio/builders/capflooredaverageonindexedcouponleg.hpp>
134135
#include <ored/portfolio/builders/capflooredcpileg.hpp>
135136
#include <ored/portfolio/builders/capfloorediborleg.hpp>

OREData/ored/portfolio/builders/capflooredaveragebmacouponleg.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ namespace ore {
2929
namespace data {
3030

3131
boost::shared_ptr<FloatingRateCouponPricer>
32-
CapFlooredOvernightIndexedCouponLegEngineBuilder::engineImpl(const std::string& index,
33-
const QuantLib::Period& rateComputationPeriod) {
32+
CapFlooredAverageBMACouponLegEngineBuilder::engineImpl(const std::string& index,
33+
const QuantLib::Period& rateComputationPeriod) {
3434
std::string ccyCode = parseIborIndex(index)->currency().code();
3535
Handle<YieldTermStructure> yts = market_->discountCurve(ccyCode, configuration(MarketContext::pricing));
3636
QL_REQUIRE(!yts.empty(), "engineFactory error: yield term structure not found for currency " << ccyCode);
@@ -51,8 +51,8 @@ CapFlooredOvernightIndexedCouponLegEngineBuilder::engineImpl(const std::string&
5151
return boost::make_shared<QuantExt::BlackAverageBMACouponPricer>(ovs);
5252
}
5353

54-
string CapFlooredOvernightIndexedCouponLegEngineBuilder::keyImpl(const string& index,
55-
const QuantLib::Period& rateComputationPeriod) {
54+
string CapFlooredAverageBMACouponLegEngineBuilder::keyImpl(const string& index,
55+
const QuantLib::Period& rateComputationPeriod) {
5656
return index + "_" + ore::data::to_string(rateComputationPeriod);
5757
}
5858

OREData/ored/portfolio/builders/capflooredaveragebmacouponleg.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ namespace data {
3535
/*! The coupon pricers are cached by index / rate comp period
3636
\ingroup builders
3737
*/
38-
class CapFlooredOvernightIndexedCouponLegEngineBuilder
38+
class CapFlooredAverageBMACouponLegEngineBuilder
3939
: public CachingCouponPricerBuilder<string, const std::string&, const QuantLib::Period&> {
4040
public:
41-
CapFlooredOvernightIndexedCouponLegEngineBuilder()
41+
CapFlooredAverageBMACouponLegEngineBuilder()
4242
: CachingEngineBuilder("BlackOrBachelier", "BlackOvernightIndexedCouponPricer",
4343
{"CapFlooredOvernightIndexedCouponLeg"}) {}
4444

QuantExt/qle/cashflows/cappedflooredaveragebmacoupon.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ class CappedFlooredAverageBMACoupon : public FloatingRateCoupon {
8989
class CapFlooredAverageBMACouponPricer : public FloatingRateCouponPricer {
9090
public:
9191
CapFlooredAverageBMACouponPricer(const Handle<OptionletVolatilityStructure>& v,
92-
const bool effectiveVolatilityInput);
92+
const bool effectiveVolatilityInput = false);
9393
Handle<OptionletVolatilityStructure> capletVolatility() const;
9494
bool effectiveVolatilityInput() const;
9595
Real effectiveCapletVolatility() const; // only available after capletRate() was called

QuantExt/qle/termstructures/proxyoptionletvolatility.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#include <qle/utilities/cashflows.hpp>
2323
#include <qle/utilities/time.hpp>
2424

25+
#include <ql/cashflows/avaeragebmacoupon.hpp>
2526
#include <ql/indexes/iborindex.hpp>
2627
#include <ql/termstructures/volatility/smilesection.hpp>
2728

QuantExt/qle/utilities/cashflows.hpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,31 +20,30 @@
2020
\brief some cashflow related utilities.
2121
*/
2222

23-
#ifndef quantext_utilities_cashflows_hpp
24-
#define quantext_utilities_cashflows_hpp
23+
#pragma once
2524

2625
#include <qle/cashflows/overnightindexedcoupon.hpp>
2726
#include <qle/utilities/time.hpp>
2827

28+
#include <ql/cashflows/averagebmacoupon.hpp>
2929

3030
namespace QuantExt {
3131

3232
/*! Utility function for calculating the atm strike level to a given \p fixingDate based on a given ois index,
33-
\p on, and a given irate computation period, \p rateComputationPeriod.
33+
\p on, and a given irate computation period, \p rateComputationPeriod.
3434
3535
\ingroup utilities
3636
*/
3737

3838
Real getOisAtmLevel(const boost::shared_ptr<OvernightIndex>& on, const Date& fixingDate,
3939
const Period& rateComputationPeriod);
40-
}
4140

4241
/*! Utility function for calculating the atm strike level to a given \p fixingDate based on a given BMA index,
4342
\p on, and a given irate computation period, \p rateComputationPeriod.
4443
4544
\ingroup utilities
4645
*/
4746
Real getBMAAtmLevel(const boost::shared_ptr<BMAIndex>& bma, const Date& fixingDate,
48-
const Period& rateComputationPeriod) {
47+
const Period& rateComputationPeriod);
4948

50-
#endif
49+
} // namespace QuantExt

0 commit comments

Comments
 (0)