Struct CdsDiagnostics
pub struct CdsDiagnostics {
pub premium: f64,
pub accrual: f64,
pub rebate: f64,
pub upfront: f64,
pub protection: f64,
pub annuity: f64,
}Expand description
What a credit default swap resolved to when it was priced: each part of its value, signed as it enters that value, and the risky annuity behind its quote.
The parts sum to npv. They are reported signed rather than
as magnitudes because a protection buyer’s premium leg is a cost and its
protection leg is a benefit, and a reader needs to know which is which
without inferring it from a side.
The premium leg here is the survival-weighted one the pricer computes. It is not what summing the contract’s cashflow leg gives: that leg is a schedule of coupons, and discounting it without weighting each by the probability of surviving to collect it values a bond, not a swap.
Fields§
The survival-weighted premium leg.
accrual: f64The premium accrued to the default date, under the contract’s accrual-on-default convention.
rebate: f64The accrual the first coupon charges for but protection did not cover, returned at cash settlement and discounted from it.
upfront: f64The upfront, as money rather than as a decimal of the notional, discounted from the cash-settlement date it is paid on.
protection: f64The protection leg: the default-time integral over the contract’s grid.
annuity: f64The risky annuity at unit coupon, which is what the quote divides by. Unsigned: it is a per-unit-coupon cost, not a value.
Implementations§
§impl CdsDiagnostics
impl CdsDiagnostics
Trait Implementations§
§impl Clone for CdsDiagnostics
impl Clone for CdsDiagnostics
§fn clone(&self) -> CdsDiagnostics
fn clone(&self) -> CdsDiagnostics
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more