21#include <ql/cashflows/cashflows.hpp>
26 const bool includeSecurityLeg)
27 : repoCurve_(repoCurve), includeSecurityLeg_(includeSecurityLeg) {}
30 QL_REQUIRE(!
repoCurve_.empty(),
"DiscountingBondRepoEngine::calculate(): repoCurve_ is empty()");
31 Real multiplier =
arguments_.cashLegPays ? -1.0 : 1.0;
34 results_.additionalResults[
"CashLegNPV"] = cashLegNpv;
35 results_.additionalResults[
"SecurityLegNPV"] = securityLegNpv;
const Instrument::results * results_
const bool includeSecurityLeg_
void calculate() const override
DiscountingBondRepoEngine(const Handle< YieldTermStructure > &repoCurve, const bool includeSecurityLeg=true)
const Handle< YieldTermStructure > repoCurve_
Swap::arguments * arguments_