Function index_skew
pub fn index_skew(
indices: &[IndexCreditDefaultSwap],
constituents: &[(ReferenceEntity, f64)],
market: &MarketContext,
) -> Result<IndexSkew, PricingError>Expand description
Solves the skew that makes an index’s constituents reprice it.
indices are the index contracts at strictly ascending maturities, each
valued on the index’s own curve in market; constituents are as
index_intrinsic takes them. Tenor by tenor, the factor on the segment
ending at the k-th maturity is the root at which the scaled constituents’
intrinsic value equals the k-th index’s value. The contract at maturity
T_k reads no factor beyond it, so the system is triangular, and each
root is bracketed from [0, 1] outward, since the protection value is
monotone in the hazard. A pool that already reprices the index solves to
factors of one.
§Errors
PricingError::Curve for no contracts, maturities that do not ascend,
or a value no non-negative factor reaches; index_intrinsic’s errors;
a pricer’s error valuing an index.