Function ise_simple_yield
pub fn ise_simple_yield(
bond: &FixedRateBond,
clean: f64,
settlement: NaiveDate,
) -> Result<f64, YieldSolveError>Expand description
The ISE simple yield (vendor calc type 1014) from a clean price.
Two arms, chosen by settlement:
- Before the final coupon period, the ISE quote is the ordinary periodic
yield to maturity, so this is
yield_solveat the bond’s own basis. - Inside it, exactly one flow remains — redemption plus the final coupon
— and the convention measures its time on ACT/365 at simple interest. The
market writes that as
(payoff/dirty − 1)·365/days; algebraically it is the pricing body with a single term atCompounding::Simple, sincedirty = payoff/(1 + y·t)inverts to exactly that. So this builds the one flow on ACT/365 and hands it to the same solver, rather than restating the arithmetic.
The vendor’s two-decimal display rounding is not applied.
§Errors
As yield_solve.