Skip to main content
OIPD accepts options data from three sources: the built-in yfinance connection, a CSV file on disk, and an in-memory DataFrame. All three paths normalize data into the same standard column schema before you pass the result to VolCurve, VolSurface, ProbCurve, or ProbSurface. Choose the tab that matches your data source below.
The sources module wraps yfinance to download live options chains in one call. Use list_expiry_dates to browse available dates, then fetch_chain to download a chain or surface.List available expiry dates
Download a single expiry
Download a multi-expiry surfacePass horizon instead of expiries to fetch all listed expiries within the window:
You cannot pass both expiries and horizon — OIPD raises a ValueError if you do.Using the VendorSnapshotfetch_chain returns a (DataFrame, VendorSnapshot) tuple. The snapshot records the download context. Use its fields to populate MarketInputs:
fetch_chain caches network responses for 15 minutes by default. Pass cache_enabled=False or cache_ttl_minutes=5 to change the caching behavior.

Standard columns

OIPD expects these target column names after any column_mapping is applied: