Skip to main content

shocked_vols

Function shocked_vols 

fn shocked_vols(
    market: MarketContext,
    leg: &ScenarioLeg,
) -> Result<MarketContext, ScenarioError>
Expand description

market with every vol surface leg selects moved node by node: the leg’s shape read at each node’s expiry, applied relatively (the default) or in vol points, every surface re-pinned under its own key.

§Errors

ScenarioError::NonPositiveVol when the move takes any node to zero or below — up front for a relative parallel move of −100% or more, so the refusal does not depend on which surfaces the market holds.