# GET /api/mcp/data/greeks-exposure/{ticker}

> Beyond gamma, where are SPY dealers exposed on delta, vanna and charm?

Returns dealer delta, gamma, vega, theta, vanna, charm and the higher-order exposures as totals and per-strike profiles, the key strike per Greek, and the key levels with distance from spot. The units block says what each number is.

- **Family:** Gamma exposure (https://apexvol.com/developers/gamma-exposure-api)
- **Plan:** Premium and above. Every call needs `Authorization: Bearer avmcp_<token>`; tokens are issued to paid and trial accounts under Account, then API Access.
- **Units:** Per Greek; read units.<greek>. Gamma is dollars per 1% move, delta is delta shares, charm is delta shares per day.
- **Basis:** Dealer convention as /gex. Aggregated over the listed expirations.
- **MCP tools:** `get_ticker_analytics`
- **Background:** https://apexvol.com/learn/gamma-exposure-explained

## Parameters

| Name | In | Default | Range | Meaning |
|---|---|---|---|---|
| `ticker` (required) | path |  | any covered symbol | The underlying, upper case. Use /search to check coverage. |
| `expiration` | query | nearest | YYYY-MM-DD, a listed expiration | Which expiration to use. Defaults to the nearest one. |
| `aggregate` | query | True | true or false | Sum across expirations or one only. |

## Request

```bash
curl -H "Authorization: Bearer avmcp_YOUR_TOKEN" \
     "https://apexvol.com/api/mcp/data/greeks-exposure/SPY"
```

## Response (captured 2026-09-08)

Real response, lists cut to the rows nearest the money. The envelope is `{"success": true, "data": ...}`.

```json
{
  "success": true,
  "data": {
    "expirations": [
      "2026-09-08",
      "2026-09-09",
      "2026-09-10"
    ],
    "expirations_horizon_days": 90,
    "expirations_included": 16,
    "expirations_through": "2026-11-20",
    "expirations_total": 32,
    "exposures": {
      "delta": {
        "call_total": 72779773.41,
        "profile": [
          {
            "call": 662203.97,
            "net": 1341242.2,
            "put": 679038.22,
            "strike": 769.0
          },
          {
            "call": 2953824.91,
            "net": 6035632.44,
            "put": 3081807.53,
            "strike": 770.0
          },
          {
            "call": 526110.77,
            "net": 1175225.88,
            "put": 649115.11,
            "strike": 771.0
          }
        ],
        "put_total": 55361041.47,
        "total": 128140814.88,
        "unit": "delta shares (dealer model: long calls, short puts)"
      },
      "gamma": {
        "call_total": 12387934215.44,
        "delta_adj_call_total": 5113957650.72,
        "delta_adj_crosses_zero": true,
        "delta_adj_flip_degenerate": false,
        "delta_adj_flip_level": 772.75,
        "delta_adj_profile": [
          {
            "call": 133476005.18,
            "net": -25907371.89,
            "put": -159383377.08,
            "strike": 769.0
          },
          {
            "call": 510209139.16,
            "net": 16139188.46,
            "put": -494069950.69,
            "strike": 770.0
          },
          {
            "call": 117857334.76,
            "net": -59060034.5,
            "put": -176917369.26,
            "strike": 771.0
          }
        ],
        "delta_adj_put_total": -4521550270.61,
        "delta_adj_total": 592407380.1,
        "delta_adj_trough": 760.0,
        "flip_degenerate": false,
        "flip_level": null,
        "gex_billions": -3.2308,
        "gex_ratio": 0.79,
        "implications": {
          "directional_bias": "Balanced (call/put GEX 0.79)",
          "net_to_gross": -0.1154,
          "pin_at_spot": false,
          "positioning": "largest strike $760.00 (-1.3%); call wall $775.00 (+0.6%); put wall $760.00 (-1.3%)",
          "regime_code": "negative",
          "support_resistance": "--",
          "volatility_regime": "Negative GEX (dealers amplify moves)"
        },
        "max_strike": 760.0,
        "profile": [
          {
            "call": 237808150.34,
            "net": -133889311.31,
            "put": -371697461.65,
            "strike": 769.0
          },
          {
            "call": 980618910.34,
            "net": -52445836.8,
            "put": -1033064747.14,
            "strike": 770.0
          },
          {
            "call": 253439508.77,
            "net": -73315508.53,
            "put": -326755017.3,
            "strike": 771.0
          }
        ],
        "put_total": -15618693641.37,
        "total": -3230759425.93,
        "unit": "$ gamma per 1% move"
      },
      "vanna": {
        "call_total": 80574246.67,
        "profile": [
          {
            "call": -1333176.63,
            "net": 652095.51,
            "put": 1985272.13,
            "strike": 769.0
          },
          {
            "call": -2543829.43,
            "net": -110258.35,
            "put": 2433571.07,
            "strike": 770.0
          },
          {
            "call": 570174.28,
            "net": -286879.42,
            "put": -857053.69,
            "strike": 771.0
          }
        ],
        "put_total": 286565015.57,
        "total": 367139262.24,
        "unit": "delta shares per vol point"
      }
    },
    "key_levels": {
      "call_wall": {
        "distance_pct": 0.62,
        "gex": 969364047.76,
        "strike": 775.0
      },
      "charm_pressure": {
        "distance_pct": -1.33,
        "exposure": 233669.48,
        "strike": 760.0
      },
      "key_gamma_strike": {
        "distance_pct": -1.33,
        "gex": 1376738203.79,
        "strike": 760.0
      },
      "put_wall": {
        "distance_pct": -1.33,
        "gex": 1809628588.06,
        "strike": 760.0
      },
      "vanna_resistance": {
        "distance_pct": 4.12,
        "exposure": -589551.4,
        "strike": 802.0
      },
      "vanna_support": {
        "distance_pct": -1.33,
        "exposure": 20298821.47,
        "strike": 760.0
      }
    },
    "stock_price": 770.25,
    "ticker": "SPY",
    "units": {
      "charm": "delta shares per day",
      "color": "$ gamma per 1% move, per day",
      "delta": "delta shares (dealer model: long calls, short puts)",
      "gamma": "$ gamma per 1% move",
      "speed": "$ gamma per 1% move, per 1% move",
      "theta": "$ per day",
      "ultima": "$ vega per vol point, per vol point squared",
      "vanna": "delta shares per vol point",
      "vega": "$ per vol point",
      "vomma": "$ vega per vol point, per vol point",
      "zomma": "$ gamma per 1% move, per vol point"
    }
  }
}
```

## Fields

- `exposures.<greek>.total, call_total, put_total, unit`: Aggregate exposure per Greek.
- `exposures.<greek>.profile[]`: Per-strike exposure.
- `greek_levels.<greek>.key_strike`: The strike with the largest exposure.
- `key_levels.call_wall, put_wall, vanna_resistance, charm_pressure`: Named levels with distance_pct from spot.
- `units`: Unit string per Greek.

## Errors

- `401`: no or revoked token
- `429`: Retry-After seconds
- `403`: Premium plan required
- `424`: data feed unavailable, retry
- Full list: https://apexvol.com/developers/errors

## Ask it in an MCP client

- Where is dealer vanna exposure largest on SPY?
- Show delta and gamma exposure by strike for QQQ.
- What is the charm pressure level on SPY today?

Conventions for units, bases and timestamps: https://apexvol.com/developers/conventions
