pub struct EquityMarketData {
pub valuation_date: NaiveDate,
pub spot: Quote,
pub dividend_yield: f64,
pub borrow_cost: f64,
pub cash_dividends: Vec<(NaiveDate, f64)>,
pub vol_surface: Arc<VolSurface>,
pub discount_curve: Arc<YieldCurve>,
}Expand description
The market state one equity instrument is currently bound to — the
pricing-view companion of the contract (QuantLib’s process, Strata’s
provider). Resolved from / snapshotted to the typed
Market store; swapped wholesale by
EquityOption::with_market.
Fields§
§valuation_date: NaiveDateThe as-of date of this market snapshot; anchors every year fraction.
spot: Quote§dividend_yield: f64§borrow_cost: f64Continuous stock borrow (repo) cost; part of the carry alongside the dividend yield.
cash_dividends: Vec<(NaiveDate, f64)>Discrete cash dividend forecasts (ex-date, amount per share). Analytic, tree and terminal Monte Carlo engines use the escrowed model (spot minus PV of dividends); path-wise Monte Carlo and finite difference apply the jumps at the ex-dates.
vol_surface: Arc<VolSurface>Volatility surface; a flat surface represents a single constant vol.
Arc-shared with the Market store:
rebinding an instrument is a refcount bump, and replacing the
surface means installing a new Arc (copy-on-write), never
mutating through it.
discount_curve: Arc<YieldCurve>Discounting curve anchored at valuation_date; discount factors are
the source of truth, rates are derived views. Arc-shared and
copy-on-write, like vol_surface.
Trait Implementations§
Source§impl Clone for EquityMarketData
impl Clone for EquityMarketData
Source§fn clone(&self) -> EquityMarketData
fn clone(&self) -> EquityMarketData
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more