Skip to main content

forward_price_with

Function forward_price_with 

pub fn forward_price_with<R: Scalar, D, C>(
    bond: &FixedRateBond,
    t: NaiveDate,
    disc: &D,
    carry: &C,
    basis: PriceBasis,
) -> Result<R, CurveError>
where D: YieldCurve<R>, C: YieldCurve<R>,
Expand description

The forward dirty price per 100 face at t: the spot price carried to t on the financing (repo) curve.

(dirty_spot − PV_carry(interim coupons)) / DF_carry(t): flows strictly after t are valued on disc, coupons paid between valuation and t are netted at the carry rate — written out as the discount-only present value plus the disc/carry gap, so that with coinciding curves the correction is exactly amount·(x − x) and the result is bit-identical to the discount-only price rebased to t — and the sum is rebased by the carry curve’s discount factor to t. Every term is in the pricing mode, so the forward price carries both curves’ sensitivities.

§Errors

CurveError from the discount queries.