Enum CurveId
#[non_exhaustive]pub enum CurveId {
Discount(CollateralSpec),
Projection(String),
Credit(CreditCurveId),
Repo(String),
SecuritySpread(String),
Inflation(String),
}Expand description
Identifies a stored curve by the role it was pinned under.
The role is part of the identity, not metadata: one stored curve pinned as both a discount and a projection curve carries two risk axes, because a ladder that merged them could not tell a collateral move from a forward move.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Discount(CollateralSpec)
A discount curve, keyed by the collateral it discounts.
Projection(String)
A projection curve, keyed by its floating index name.
Credit(CreditCurveId)
A survival curve, keyed by the credit identity — a reference entity in a currency, or an index by family, series and version.
Repo(String)
A repo/financing curve, keyed by bond or legal entity.
SecuritySpread(String)
A per-security spread curve, keyed by security identifier.
Inflation(String)
An inflation curve, keyed by price-index name.
Implementations§
§impl CurveId
impl CurveId
fn as_ref(&self) -> CurveIdRef<'_>
fn matches(&self, key: CurveIdRef<'_>) -> bool
Trait Implementations§
impl Eq for CurveId
§impl FromStr for CurveId
The inverse of Display, so a curve a risk row names can be
named back — what a scenario leg selecting one curve is written with.
impl FromStr for CurveId
The inverse of Display, so a curve a risk row names can be
named back — what a scenario leg selecting one curve is written with.