Function shocked_smile
fn shocked_smile(
market: MarketContext,
leg: &ScenarioLeg,
pair: CurrencyPair,
component: SmileComponent,
) -> Result<MarketContext, ScenarioError>Expand description
market with the smile of pair’s FX surface moved in vol points: the
leg’s shape read at each smile’s expiry, and applied to each node by its
side of ATM as component says. A market with no surface for the pair is
returned as it is, as a vol-surface selector does.
§Errors
ScenarioError::NonPositiveVol when the move takes a node to zero or
below.