{"uid":"cap_Yr2sFWbPeycQTO6oZsNGj","slug":"api-quantoracle-dev-d5d29df3","name":"QuantOracle Volatility Surface","description":"QuantOracle: derivatives/volatility-surface","url":"https://api.quantoracle.dev/v1/derivatives/volatility-surface","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"spot":{"type":"number","title":"Spot","description":"Current spot price"},"market_data":{"type":"array","items":{"type":"object","title":"VolPoint","required":["strike","expiry_days","implied_vol"],"properties":{"strike":{"type":"number","title":"Strike","description":"Strike price"},"expiry_days":{"type":"number","title":"Expiry Days","description":"Days to expiration"},"implied_vol":{"type":"number","title":"Implied Vol","description":"Implied volatility at this strike and expiry"}}},"title":"Market Data","description":"Array of implied vol data points"},"interpolation":{"enum":["linear","cubic"],"type":"string","title":"Interpolation","default":"linear","description":"Surface interpolation method"}}},"responseSchema":null,"example":{"request":{"spot":4500,"market_data":[{"strike":4400,"expiry_days":30,"implied_vol":0.18},{"strike":4500,"expiry_days":30,"implied_vol":0.16},{"strike":4600,"expiry_days":30,"implied_vol":0.17},{"strike":4400,"expiry_days":90,"implied_vol":0.19},{"strike":4500,"expiry_days":90,"implied_vol":0.17},{"strike":4600,"expiry_days":90,"implied_vol":0.18},{"strike":4400,"expiry_days":180,"implied_vol":0.2},{"strike":4500,"expiry_days":180,"implied_vol":0.18},{"strike":4600,"expiry_days":180,"implied_vol":0.19}],"interpolation":"linear"},"response":{"ms":7.31,"_meta":{"url":"https://quantoracle.dev","docs":"https://api.quantoracle.dev/docs","powered_by":"QuantOracle"},"surface":[{"vols":[{"vol":0.18,"strike":4400},{"vol":0.16,"strike":4500},{"vol":0.17,"strike":4600}],"expiry_days":30},{"vols":[{"vol":0.19,"strike":4400},{"vol":0.17,"strike":4500},{"vol":0.18,"strike":4600}],"expiry_days":90},{"vols":[{"vol":0.2,"strike":4400},{"vol":0.18,"strike":4500},{"vol":0.19,"strike":4600}],"expiry_days":180}],"n_points":9,"n_strikes":3,"n_expiries":3,"skew_by_expiry":[{"skew":0,"n_strikes":3,"expiry_days":30},{"skew":0,"n_strikes":3,"expiry_days":90},{"skew":0,"n_strikes":3,"expiry_days":180}],"atm_term_structure":[{"vol":0.16,"expiry_days":30},{"vol":0.17,"expiry_days":90},{"vol":0.18,"expiry_days":180}]}},"exampleRequest":{"spot":4500,"market_data":[{"strike":4400,"expiry_days":30,"implied_vol":0.18},{"strike":4500,"expiry_days":30,"implied_vol":0.16},{"strike":4600,"expiry_days":30,"implied_vol":0.17},{"strike":4400,"expiry_days":90,"implied_vol":0.19},{"strike":4500,"expiry_days":90,"implied_vol":0.17},{"strike":4600,"expiry_days":90,"implied_vol":0.18},{"strike":4400,"expiry_days":180,"implied_vol":0.2},{"strike":4500,"expiry_days":180,"implied_vol":0.18},{"strike":4600,"expiry_days":180,"implied_vol":0.19}],"interpolation":"linear"},"tags":["x402"],"displayCostAmount":"0.015","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.015/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.015","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.015","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_H7OkhWNfnw3zSnU-mdgQx","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.015","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Computes a full implied volatility surface across strikes and expiries for a given derivatives underlying","exampleAgentPrompt":"Build me a full implied volatility surface for SPY options — cover strikes from 80% to 120% moneyness and expiries from 1 week out to 1 year, using current market prices.","exampleUseCases":null,"resultDescription":"Returns a structured volatility surface object containing a grid of implied volatilities indexed by strike (or moneyness) and expiration, including vol smile curves per expiry, term structure of at-the-money vol, and potentially fitted surface parameters (e.g. SVI or SABR model coefficients).","failureModes":["Insufficient option chain data returns sparse or incomplete surface","Invalid or illiquid underlying with no listed options returns error","Strike range outside available market data returns extrapolation warnings or nulls","Malformed input symbol or unsupported asset class returns 400 validation error","Arbitrage violations in input data may cause surface fitting to fail"],"whenToPreferThis":"Use this endpoint when you need a full multi-dimensional view of implied volatility across both strike and expiry dimensions, rather than a single IV lookup. Ideal for options pricing engines, risk systems needing skew and term structure, or any workflow that requires a calibrated vol surface (e.g. for exotic pricing or hedging). Prefer over single-point IV calculators when you need the entire surface.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T00:45:03.742Z","isFirstParty":false}