Discovered option market identity plus available quote fields.
Built by Bourse.Unified.OptionSurface.discover/2. Identity fields are required;
bid/ask, IV and open interest are populated only when the venue supplies them.
Summary
Types
@type t() :: %Bourse.OptionInstrument{ active: boolean() | nil, ask_price: number() | nil, base: String.t() | nil, bid_price: number() | nil, expiry: integer() | nil, id: String.t() | nil, implied_volatility: number() | nil, info: map() | nil, observed_at: integer() | nil, open_interest: number() | nil, option_type: String.t() | nil, quote: String.t() | nil, settle: String.t() | nil, source_timestamp: integer() | nil, strike: number() | nil, symbol: String.t() | nil, venue: String.t() | nil }
Functions
@spec schema() :: map()
JSON Schema for the OptionInstrument surface type.