QL.require(DiscountingBondEngine.class.isAssignableFrom(engine.getClass()), ReflectConstants.WRONG_ARGUMENT_TYPE); // QA:[RG]::verified
final DiscountingBondEngine discountingBondEngine = (DiscountingBondEngine)engine;
return dirtyPriceFromZSpreadFunction(notional(settlement), cashflows_,
zSpread, dc, comp, freq, settlement,
discountingBondEngine.discountCurve());
}
/**
* @see Bond#dirtyPriceFromZSpread(double, DayCounter, Compounding,
* Frequency, Date) using today's date as settlement date.