1. API
  2. Greeks API

Greeks API

Greeks,
already computed.

Look a contract up by its delta instead of its strike. Pull a heatmap of any Greek across the whole surface. Sum a book. The Greeks arrive on the row, so nothing has to be re-derived.

8Endpoints in this family
6Matching MCP tools
60/minPer token, 1,000 an hour

A real response

This is what
comes back.

Captured from the live endpoint on 2026-09-07, lists cut to a few rows so it fits on a page. The shape is exactly what your code receives.

GET /api/mcp/data/options-by-delta/NVDA?delta=0.30&option_type=call200, application/json
{
  "actual_delta": 0.2609,
  "ask": 1.08,
  "bid": 1.05,
  "expiration": "2026-09-09",
  "iv": 0.2569,
  "iv_pct": 25.69,
  "iv_units": "decimal",
  "mid": 1.065,
  "option_type": "call",
  "stock_price": 230.3,
  "strike": 235.0,
  "target_delta": 0.3,
  "ticker": "NVDA"
}

Every response is wrapped as {"success": true, "data": {...}}. Errors use the same envelope with an error string and a status code that means what it says.

Call it three ways. Same token, same JSON.

curlBearer token from Account, then API Access
curl -H "Authorization: Bearer avmcp_YOUR_TOKEN" \
     "https://apexvol.com/api/mcp/data/options-by-delta/NVDA?delta=0.30&option_type=call"
Pythonrequests, nothing else
import requests

r = requests.get("https://apexvol.com/api/mcp/data/options-by-delta/NVDA?delta=0.30&option_type=call",
                 headers={"Authorization": "Bearer avmcp_YOUR_TOKEN"})
d = r.json()["data"]
print(d["strike"], d["actual_delta"], d["iv_pct"], d["mid"])
In Claude, Cursor or ChatGPTthrough the MCP server, no code
You

Find the 30-delta call on NVDA for the next monthly expiry and tell me its Greeks.

The assistant calls get_options_by_delta and answers from the JSON above.

More prompts for this family in the prompt library. Set the server up in Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code, Windsurf or Gemini CLI.

Field by field

What each
number means.

target_delta, actual_delta
What you asked for and the nearest listed contract's real delta.
strike, expiration, option_type
The contract that matched.
iv, iv_pct, iv_units
The contract's implied volatility as a decimal and in percentage points, with the unit stated.
bid, ask, mid
The live quote for that contract.
stock_price
The underlying at the time of the call, so moneyness is reproducible.

The family

8 endpoints,
one prefix.

All under https://apexvol.com/api/mcp/data. Parameters are bounded and the docs say the bounds; out-of-range values are clamped or rejected, never silently changed. The reference has every response field.

MethodPathParametersReturns
GET/options-by-delta/{ticker}delta default 0.30, option_type, expirationThe contract nearest a target delta with its actual delta, IV, bid, ask and mid.
GET/chain/{ticker}expiration, num_expirationsDelta, gamma, theta, vega and rho for both sides on every strike row.
GET/greeks-heatmap/{ticker}option_type calls or putsEvery Greek across strikes and expirations in one matrix; pick the one you need.
GET/greeks-exposure/{ticker}expiration, aggregateDealer exposure by strike: delta, gamma, vega, theta, vanna and charm.
GET/charm/{ticker}expirationDelta decay by strike, the flow that builds into expiration.
GET/third-order-greeks/{ticker}expirationSpeed, zomma, color, vomma and ultima.
POST/portfolio-greekspositions: ticker, position_type, quantity, strike, expirationNet Greeks for a book with a risk label and a per-ticker breakdown.
POST/poplegs: option_type, action, strike, iv, dteProbability of profit for a set of legs.

The same data, in plain English

6 MCP tools
wrap this family.

Connect the ApexVol MCP server and an assistant can call these by name. One URL, a sign-in, no token to paste.

  • get_options_by_delta
  • get_greeks_heatmap
  • calculate_portfolio_greeks
  • get_third_order_greeks
  • get_charm_exposure
  • calculate_probability_of_profit

Set it up in:

What people build

Three things
this is for.

Access

Auth
Bearer token, prefix avmcp_, created under Account, then API Access. Shown once, hashed at rest, rotates in one click.
Limits
60 requests a minute and 1,000 an hour per token, with a 10,000-request monthly budget per account. Every response carries the remaining counts in headers.
Plans
Included with every paid plan from $55 a month. Each endpoint follows the tier of its web feature; Pro unlocks the full surface.
Spec
OpenAPI 3.1 at /docs/api/openapi.json and the whole reference as one Markdown file at /docs/api/apexvol-api.md.

Questions

Asked before
the first call.

Which Greeks does the API return?

Delta, gamma, theta, vega and rho on every chain row and every delta lookup. Dealer exposure endpoints add vanna and charm. The third-order endpoint adds speed, zomma, color, vomma and ultima.

Are the Greeks computed by ApexVol or by the data vendor?

By the institutional data vendor, on the same snapshot as the quote, so a delta always matches the bid and ask beside it. ApexVol does not re-run Black-Scholes on the way out, which is also why Greeks are consistent between the chain and the delta lookup.

Can I get Greeks for a whole portfolio?

Yes. POST positions to /portfolio-greeks with the ticker, position type, quantity, strike and expiration for each leg. Stock positions are accepted alongside options. The response nets everything and breaks it down per ticker.

How do I find the 16-delta put?

GET /options-by-delta/{ticker}?delta=0.16&option_type=put, optionally with expiration=YYYY-MM-DD. The response gives the nearest listed strike and its actual delta so you can see how close the match was.

Included with
every paid plan.

From $55 a month, tier-matched: your token queries the data your plan includes and Pro unlocks the full surface.

Real market data, not a sandbox. See it live on AAPL.

7 days free, cancel anytime Card required · no charge for 7 days
Start trial →