Function range_accrual_coupon
pub(crate) fn range_accrual_coupon(
currency: &str,
accrual_start: NaiveDate,
accrual_end: NaiveDate,
payment_date: NaiveDate,
notional: f64,
fixed_rate: f64,
day_count: Named<DayCountFraction>,
index: &str,
lower: Option<f64>,
upper: Option<f64>,
gap: f64,
) -> PyResult<PyAnyCoupon>Expand description
One range accrual: notional × fixed_rate × accrual fraction × (days in range) / (days), every calendar day from accrual_start to accrual_end
observing the fixing of index (a registered term index) on the latest
business day on or before it, in range when it lies in [lower, upper] (a
bound left None is open).
A day still to fix is in range with the probability two digitals give,
each a call spread gap wide off the currency’s cap vol surface, which a
leg holding the coupon declares; a fixed day reads its print.