API-key access · start with a supported equity

Gamma Exposure (GEX)

Inspect estimated gamma exposure by strike, with the selected expiry and response timestamp visible.

Start with AAPL and one listed expiry after today. Free provides 5 requests/day. SPY/QQQ API access requires Basic and above, full-chain access Growth and above, and 0DTE Growth and above. Use the downloadable dashboard guide to build your own SPY/QQQ visualization.

Growth - $239/mo billed annually
Upgrade from free (single expiry) to the full stack
Upgrade to Growth
Full-chain GEX - aggregate across every expiration
0DTE analytics - pin risk, regime, expected move
2,500 req/day · 15 seconds response cache
Vol surface · DEX/VEX/CHEX · AI narrative
Unlock Live GEX Data

Sign in with a Free API key for an eligible AAPL request. No credit card required.

Get Free API Key

Already have a key? Sign in

What can you do with GEX?

Find the Flip Point

The strike where net GEX crosses zero. Above it, dealers dampen moves. Below it, they amplify them. A critical level for day traders.

Support & Resistance

Strikes with large positive GEX act as magnets - dealers buy dips and sell rallies around them, creating mean-reverting zones.

Volatility Regime

Positive net GEX = low-vol, range-bound. Negative net GEX = trending, volatile. Screen the entire market for regime shifts.

Get this via API

curl
# 1. List supported equity expirations (one API request)
curl --fail-with-body -H "X-Api-Key: YOUR_API_KEY" \
  "https://lab.flashalpha.com/v1/options/AAPL"

# 2. Replace YYYY-MM-DD with one listed date after today (second request)
curl --fail-with-body -H "X-Api-Key: YOUR_API_KEY" \
  "https://lab.flashalpha.com/v1/exposure/gex/AAPL?expiration=YYYY-MM-DD"
Python
# Download the complete two-call example:
# /downloads/seo-workflows/first-gex.py
# Set FLASHALPHA_API_KEY, then run:
# python first-gex.py
# It discovers an AAPL expiry after today and handles 401/403/429.

# Growth+ full-chain SPY API workflow (build your own charts):
from flashalpha import FlashAlpha
import os
fa = FlashAlpha(os.environ["FLASHALPHA_API_KEY"])
data = fa.gex("SPY")
print(data.get("net_gex"), data.get("gamma_flip_status"))

Get GEX via API

A supported individual equity and one listed expiry after today can be evaluated on Free (5 requests/day). SPY/QQQ single-expiry API requests require Basic and above. Full-chain aggregation requires Growth and above; 0DTE requires Growth and above. Check the response timestamp: cache duration is not source-data age.

Start Free View your API key

How Gamma Exposure Is Calculated

Gamma exposure quantifies the dollar value of shares dealers must trade to maintain delta-neutral positions as the underlying moves. For a single option contract:

$$\text{GEX}_i = \Gamma_i \times OI_i \times 100 \times S^2 \times 0.01$$

Where:

  • $\Gamma_i$ is the option's gamma (second derivative of price with respect to underlying)
  • $OI_i$ is the open interest at that strike
  • $S$ is the current underlying price
  • The factor $100$ converts to shares per contract, and $0.01$ normalizes for a 1% move

Net GEX and the Dealer Convention

Gamma is identical for a call and a put at the same strike and expiry, so the sign in a GEX calculation cannot come from the option's right. It comes from who is long and who is short: long an option is long gamma, short an option is short gamma, either way. Open interest reports how many contracts exist, not who holds which side, so any OI-based figure has to assign a position sign by convention. The standard convention treats call gamma as positive and put gamma as negative, which is equivalent to assuming dealers are long calls and short puts:

$$\text{Net GEX} = \sum_{i} \text{GEX}_{i}^{\text{call}} - \sum_{i} \text{GEX}_{i}^{\text{put}}$$

The subtraction is that convention rather than a property of the options themselves. Positive net GEX represents dealers holding long gamma: to stay hedged they sell into rallies and buy dips, which dampens realized volatility. Negative net GEX represents short gamma, where the same hedging runs with the move instead of against it and amplifies it.

The Gamma Flip Point

The gamma flip is a hypothetical underlying price where aggregate portfolio GEX crosses zero after the included options are repriced. Keep expiry scope, open interest, volatility assumptions and dealer-sign convention fixed. It is not the cumulative sum of the current strike bars:

$$G(S^*) = \sum_i d_i\,\Gamma_i(S^*)\,OI_i\,M_i\,(S^*)^2\,0.01 = 0$$

Verify the crossing's orientation, returned status and net GEX at the actual price. A missing or unstable crossing is not a numeric zero, and a numeric level is not a guaranteed regime boundary.

Gamma and the Black-Scholes Model

Under Black-Scholes, gamma for a European option is:

$$\Gamma = \frac{\phi(d_1)}{S \sigma \sqrt{T}}$$

Where $\phi(d_1)$ is the standard normal PDF evaluated at $d_1$, $\sigma$ is implied volatility, and $T$ is time to expiration. Gamma is highest for at-the-money options near expiration - which is why 0DTE options create massive GEX concentrations.

Why GEX Matters for Traders

Institutional research from SqueezeMetrics and academic work by Bouchaud & Bonart (2018) demonstrate that dealer hedging flows create measurable price impact. GEX is not a predictive signal - it's a structural one. It tells you the rules of the game for that day.

Expiration Filtering

Near-dated options contribute disproportionately to GEX because gamma scales as $\frac{1}{\sqrt{T}}$. Our API supports filtering by expiration date so you can isolate 0DTE gamma (which drives intraday moves) from longer-dated positioning.

Limitations

  • Dealer assumption - GEX has to assume a dealer position, because open interest says how many contracts exist but not who holds which side. The standard convention is equivalent to dealers being long calls and short puts. In practice some OI is inter-dealer or institutional hedging that does not fit that assumption.
  • OI is T-1 - open interest is reported end-of-day by the OCC and reflects the previous session's close.
  • Not a crystal ball - GEX describes the mechanical hedging landscape, not future direction. Use it alongside price action, not as a standalone signal.

Want to compute GEX yourself from raw data? See our open-source walkthrough with Python code: GEX Explained on GitHub

What Is Gamma Exposure (GEX)?

Gamma exposure - commonly abbreviated GEX - measures the total amount of options gamma that market makers and dealers hold across every strike price for a given underlying asset. Gamma itself is a second-order Greek: it tells you how quickly a dealer’s delta (directional exposure) changes as the underlying price moves by one dollar. When you aggregate that sensitivity across all open options contracts, you get a dollar-weighted map of where dealers will be forced to hedge - and in which direction.

Think of GEX as a pressure map of the options market. Each strike with significant open interest exerts a gravitational force on the underlying. Strikes where dealers are long gamma act like shock absorbers: as the stock moves toward them, dealers hedge by buying dips and selling rallies, dampening volatility. Strikes where dealers are short gamma do the opposite - dealers must sell into sell-offs and buy into rallies, amplifying moves. The aggregate balance between these forces determines whether the market is in a mean-reverting or trending regime.

Why Gamma Exposure Matters Near Expiration

For near-the-money options, gamma can become more concentrated as expiration approaches. This is not exponential growth for every option: far-out-of-the-money gamma can fall toward zero. Exposure depends on open interest, the expiry set and the assumed dealer positions as well as the Greeks.

A gamma flip is a model output, not a hard market boundary. It can move, disappear, have multiple crossings or be rejected by stability checks. Read the returned status alongside the level and the net GEX at the actual price; neither a wall nor a flip guarantees a reversal or a volatility outcome.

How to Use the FlashAlpha GEX Tool

Sign in with an API key, choose a supported ticker and a listed expiration eligible for your plan to inspect gamma exposure by strike. The horizontal bar chart shows call GEX (positive, green) and put GEX (negative, red) at each strike, with the net GEX value determining the overall direction. Key levels are highlighted automatically: the gamma flip point, the call wall (strike with the highest positive GEX, a concentration to investigate), and the put wall (strike with the most negative GEX, a concentration that can fail as support).

For systematic workflows, the same data is available via the FlashAlpha Lab API - the GEX result uses the endpoint you can call programmatically; availability depends on your symbol, expiry and plan. Pull GEX data into your Python scripts, spreadsheets, or trading bots with a single API call. Free-tier accounts get single-expiration lookups on individual equities with no credit card required; Growth plans unlock aggregated all-expiration views, and the Alpha plan adds historical replay for backtesting.

Get Free API Access

Create an account in 30 seconds. No credit card required. Start pulling live GEX data into your trading workflow today.

Sign Up Free