Function day_growth
fn day_growth<R: Scalar>(day_count: DayCountFraction, rate: R, tau: f64) -> RExpand description
The compounded growth factor ∏(1 + r_d·tau_d) over the coupon’s days.
A day whose rate has already fixed contributes 1 + r·tau from the store; a
day still to come contributes DF(start)/DF(end) off the forward curve. A
run of consecutive projected days telescopes: the interior discount
factors cancel and the run collapses to a single ratio across its whole span.
That is not only fewer curve reads — in an active mode it is a handful of
recorded statements per run instead of one per day, for a period that can be
ninety of them.
A realised day breaks the run, because a realised factor is a number rather
than a ratio, and it is exactly at those breaks that the telescoping has to
stop.
One printed day’s growth factor. Every overnight index compounds a day
simply, 1 + r·τ, except one accruing on BUS/252: Brazil’s CDI, whose rate
is an annual rate compounded per business day, (1 + r)^τ with τ = 1/252
(EMTA-ISDA MP1; CME Rulebook 90104). A projected run needs no such rule —
it telescopes to the forward curve’s discount-factor ratio either way.