Enum MarketInputId
#[non_exhaustive]pub enum MarketInputId {
Show 27 variants
CurveNode {
curve: CurveId,
node_index: usize,
date: NaiveDate,
},
MeetingNode {
curve: CurveId,
meeting: MeetingId,
},
TurnNode {
curve: CurveId,
date: NaiveDate,
},
CurveLevel {
curve: CurveId,
node_index: usize,
},
CurveFxSpot {
curve: CurveId,
},
FxSpot {
pair: CurrencyPair,
},
Fixing {
index: String,
date: NaiveDate,
},
Exogenous {
label: String,
},
FxVolNode {
pair: CurrencyPair,
expiry: NaiveDate,
quote: DeltaQuote,
},
RateVolNode {
currency: Currency,
expiry_bp: u32,
tenor_bp: u32,
spread_bp: Option<i32>,
},
BondYieldVolNode {
key: String,
expiry_bp: u32,
duration_bp: u32,
},
CapVolNode {
currency: Currency,
expiry_bp: u32,
tenor_bp: u32,
strike_bp: Option<i32>,
},
CreditVolNode {
credit: CreditCurveId,
expiry_bp: u32,
},
BaseCorrelationNode {
index: CreditIndexId,
detachment_bp: u32,
},
Recovery {
credit: CreditCurveId,
},
BasketCorrelation {
basket: String,
},
CmsSpreadCorrelation {
first: String,
second: String,
expiry_bp: Option<u32>,
strike_bp: Option<i32>,
},
YoyVolNode {
index: String,
expiry_bp: u32,
strike_bp: Option<i32>,
},
CpiVolNode {
index: String,
expiry_bp: u32,
strike_bp: Option<i32>,
},
RecoveryFloor {
index: CreditIndexId,
},
FactorDof {
index: CreditIndexId,
},
IdiosyncraticDof {
index: CreditIndexId,
},
SabrNode {
registry: SabrRegistry,
currency: Currency,
expiry_bp: u32,
tenor_bp: u32,
parameter: SabrParameter,
},
FuturePrice {
contract: ListedFutureId,
},
EquitySpot {
name: String,
},
FutureOptionVolNode {
contract: ListedFutureId,
expiry: Option<NaiveDate>,
strike_bp: Option<u32>,
},
EquityVolNode {
name: String,
expiry: Option<NaiveDate>,
strike_bp: Option<u32>,
},
}Expand description
The typed key for one entry of a risk vector.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
CurveNode
An ordinary dated pillar on an identified curve. node_index counts
within that curve’s flat parameter vector.
Fields
MeetingNode
A step-curve pillar anchored at a central-bank policy decision.
Fields
TurnNode
A step-curve pillar anchored at a turn-of-period jump.
CurveLevel
An undated level on an identified curve — a flat hazard, a quoted level with no pillar. It belongs to its curve’s axis but to no tenor bucket.
Fields
CurveFxSpot
The FX spot an implied curve is built over. It sits on the FX axis rather than the axis of the curve that owns it: it is an FX market fact, and a rate ladder that swept it up would report an FX move as a rate move.
FxSpot
A quoted FX spot rate, keyed by ordered pair. Undated.
Fields
pair: CurrencyPairThe pair, quoted as quote per one base.
Fixing
One published index observation. Dated, but on no rate axis: a reset exposure is per-observation, not per-pillar, and reports on its own ladder.
Exogenous
A caller-named differentiable scalar. It has no natural bump unit and belongs to no axis.
FxVolNode
One node of a delta-quoted FX vol surface: the quote the market names it by, which compares to the basis point of delta.
Fields
pair: CurrencyPairThe pair the surface belongs to.
quote: DeltaQuoteThe node’s quote: 25P, ATM, 25C.
RateVolNode
One node of a currency’s swaption vol surface. The two year fractions are carried in basis points of a year so the key stays exactly comparable.
Fields
BondYieldVolNode
One node of a bond yield vol surface — the same grid type as a swaption surface, read by a bond option at its forward modified duration, and told apart from the swaption registry by this key.
Fields
CapVolNode
One node of a currency’s cap vol surface — the same grid type as a swaption surface, read by a caplet at its fixing and the index tenor, and told apart from the swaption registry by this key.
Fields
CreditVolNode
One node of a credit name’s CDS option vol surface, by expiry.
Fields
credit: CreditCurveIdThe credit name the surface belongs to.
BaseCorrelationNode
One quoted point of a credit index’s base-correlation curve: the correlation of the base tranche detaching there.
Fields
index: CreditIndexIdThe credit index the curve belongs to.
Recovery
One entity’s market recovery: the rate default settles at, with its survival curve held.
Fields
credit: CreditCurveIdThe entity the recovery is quoted for.
BasketCorrelation
One basket’s market asset correlation, by the caller’s key — the correlation an nth-to-default basket on a market correlation reads.
CmsSpreadCorrelation
One pair of swap indices’ market CMS spread correlation — what a CMS spread coupon on a market correlation reads. The pair is in the market’s order (the lesser code first), since a correlation is symmetric. A flat mark is one parameter with no expiry; a term structure carries one per pillar; a surface carries one per (expiry, strike) node.
Fields
YoyVolNode
One node of a price index’s year-on-year inflation optionlet vol surface — what a YoY caplet, floorlet or collared YoY coupon reads.
Fields
CpiVolNode
One node of a price index’s zero-coupon CPI option vol surface — what a zero-coupon inflation cap, floor or collared CPI notional reads.
Fields
RecoveryFloor
One credit index’s market Amraoui–Hitier recovery floor — what a tranche on a market floor reads.
Fields
index: CreditIndexIdThe credit-index id.
FactorDof
One credit index’s market double-t factor degrees of freedom — what a tranche on a market copula reads.
Fields
index: CreditIndexIdThe credit-index id.
IdiosyncraticDof
One credit index’s market double-t idiosyncratic degrees of freedom.
Fields
index: CreditIndexIdThe credit-index id.
SabrNode
One parameter of one node of a SABR rate smile — its ATM vol, ρ or ν.
Fields
registry: SabrRegistryThe registry the surface is pinned in.
parameter: SabrParameterWhich of the node’s parameters.
FuturePrice
One listed future’s quoted price, per 100 face — what an option on the future reads as its underlying. Undated, and on its own axis: a futures delta is a price exposure, not a pillar exposure.
Fields
contract: ListedFutureIdThe contract quoted.
EquitySpot
One equity’s quoted spot. Undated, on the equity axis.
FutureOptionVolNode
One node of a listed future’s option vol surface. The strike is carried in ten-thousandths of a price point so the key stays exactly comparable.
Fields
contract: ListedFutureIdThe underlying contract the surface belongs to.
EquityVolNode
One node of an equity’s option vol surface, keyed as a listed future option’s node is.
Implementations§
§impl MarketInputId
impl MarketInputId
Trait Implementations§
§impl Clone for MarketInputId
impl Clone for MarketInputId
§fn clone(&self) -> MarketInputId
fn clone(&self) -> MarketInputId
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more