1. API
  2. Implied volatility
  3. IV rank

Implied volatility API, GET /iv-rank/{ticker}

Is NVDA's implied volatility high or low for NVDA right now?

IV rank and IV percentile against the last year, with the range they were measured on. Returns where today's implied volatility sits inside its own 52-week range (iv_rank, 0 to 100) and the share of days that closed with lower IV (iv_percentile), plus the min, max, mean and state label the numbers were built from.

PremiumPlan and above, from $55/mo
1MCP tool that calls it
2026-09-08Sample captured from the live endpoint

The answer, in one call

Units first,
then the request.

current_iv, iv30d and the range bounds are annualised IV in percentage points (34.43 means 34.43%). iv_rank and the percentiles are 0 to 100.

iv_basis names the daily series the rank is measured on; iv30d is the 30-day constant-maturity IV used by the VRP endpoints, so the two can differ slightly. iv_percentile is the one-year percentile from the data feed.

curlBearer token from Account, then API Access
curl -H "Authorization: Bearer avmcp_YOUR_TOKEN" \
     "https://apexvol.com/api/mcp/data/iv-rank/NVDA"
Pythonrequests, nothing else
import requests

headers = {"Authorization": "Bearer avmcp_YOUR_TOKEN"}
r = requests.get("https://apexvol.com/api/mcp/data/iv-rank/NVDA", headers=headers)
r.raise_for_status()
data = r.json()["data"]
print(data["iv_rank"])
In Claude, Cursor or ChatGPTthrough the MCP server, no code
You

What is NVDA's IV rank and percentile right now?

The assistant calls get_iv_rank and answers from the JSON below.

Tokens come with every paid or trial plan. Sign in and create one under Account, then API Access, or start a trial. Your ticker, your budget.

GET /api/mcp/data/iv-rank/NVDA200, application/json, captured 2026-09-08
{
  "success": true,
  "data": {
    "current_iv": 34.43,
    "data_source": "iv_rank_1y",
    "historical_data_points": 252,
    "is_full_year": true,
    "iv30d": 33.05,
    "iv_basis": "vendor_ivrank_series",
    "iv_max_52w": 48.38,
    "iv_mean": 38.53,
    "iv_median": 38.39,
    "iv_min_52w": 32.01,
    "iv_percentile": 12.0,
    "iv_percentile_1m": 66.67,
    "iv_percentile_1y": 12,
    "iv_percentile_source": "cores_ivPctile1y",
    "iv_rank": 14.79,
    "iv_rank_1m": 54.08,
    "iv_rank_1y": 14.79,
    "iv_state": "VERY_LOW",
    "iv_std": 3.31,
    "iv_stdv_from_mean": -1.49,
    "iv_units": "percentage_points",
    "lookback_days": 252,
    "ticker": "NVDA",
    "timestamp": "2026-09-08T05:06:35.749922"
  }
}

Every response is wrapped as {"success": true, "data": {...}}. Lists in the sample are cut to a few rows so it fits on a page; the shape is exactly what your code receives.

Parameters

Bounded,
and the bounds are stated.

Out-of-range numbers are clamped to the documented range, never silently changed to something else. A missing required field returns 400 with the reason.

NameInDefaultRangeMeaning
ticker requiredpathany covered symbolThe underlying, upper case. Use /search to check coverage.
lookback_daysquery25220 to 1260, clampedDays of history behind the rank and the 1y percentile.

Field by field

What each
number means.

iv_rank
Today's IV as a position between the 52-week low (0) and high (100).
iv_percentile
Share of lookback days that closed with IV below today's.
current_iv
The IV the rank was computed from, in percentage points.
iv30d
The 30-day constant-maturity IV, the basis the VRP endpoints use.
iv_min_52w, iv_max_52w, iv_mean, iv_std
The range and distribution behind the rank.
iv_state
VERY_LOW to VERY_HIGH so a caller can branch without picking thresholds.
iv_rank_1m, iv_percentile_1m
The same measures over the last month.

Access, limits, errors

Before the
first call.

Plan
Premium Premium and above. Tokens are issued to paid and trial accounts from $55 a month; each endpoint follows the tier of its web feature. An endpoint above your plan answers 402 and names the plan it needs.
Auth
Bearer token, prefix avmcp_, created under Account, then API Access. Shown once, hashed at rest, rotates in one click. Always call https://apexvol.com, never www.
Limits
60 requests a minute and 1,000 an hour per token, plus a monthly allowance by plan. Every response carries the remaining counts in X-RateLimit-* headers; a 429 carries Retry-After in seconds.
Errors
401 no or revoked token; 429 Retry-After seconds; 403 Premium plan required; 424 data feed unavailable, retry. The full list with payload shapes is on the errors page.
Since
API 1.0. Units, bases and timestamps follow the conventions shared by every endpoint; changes are logged in the API changelog.
Machine-readable
This page as Markdown, the family as one file, the whole API as llms-full.txt or OpenAPI 3.1.

The same data, in plain English

Ask for it
in an MCP client.

Connect the ApexVol MCP server and the assistant calls get_iv_rank by name. One URL, a sign-in, no token to paste.

Prompts that hit this endpointcopy one into Claude, Cursor or ChatGPT
You

What is NVDA's IV rank and percentile right now?

You

Is implied volatility on AAPL high or low compared with the last year?

You

Rank SPY, QQQ and IWM by IV rank.

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

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 →