DEV Community

tomasz dobrowolski
tomasz dobrowolski

Posted on • Originally published at flashalpha.com

Call Wall, Put Wall & Gamma Flip Explained: The Three GEX Levels Every Options Trader Must Know

On March 18, 2025, SPY traded in a $2.10 range all day — pinned between the call wall at $575 and put wall at $567. The next morning, a hot CPI print pushed price below the gamma flip at $565. The range that day? $8.40 — four times wider. Same stock, same market. The only thing that changed was the gamma regime.

This is not a coincidence. It is the direct result of how options dealers hedge — and three numbers predicted the entire shift: the call wall, the put wall, and the gamma flip point.

Most explanations stop at one-sentence definitions. This guide covers the mechanics, the math, and the code so you can pull these levels programmatically and use them with confidence.

If you're new to gamma exposure entirely, start with our complete GEX guide first.


The Three GEX Levels at a Glance

Level Definition Market Effect
Call Wall Highest call-side gamma strike Resistance — dealers sell stock as price rises toward it
Put Wall Highest put-side gamma strike Support — dealers buy stock as price falls toward it
Gamma Flip Net GEX = 0 Regime boundary — above = dampened vol, below = amplified
$555 Put Wall --- $565 Gamma Flip --- $571 SPOT --- $580 Call Wall
support            regime boundary        current          resistance
Enter fullscreen mode Exit fullscreen mode

What Is a Call Wall?

The call wall is the strike with the largest call-side gamma exposure. It acts as resistance because of the mechanics of dealer hedging.

Most call options are sold by dealers (market makers) to customers. When you buy a call, the dealer is short that call. To stay delta-neutral, the dealer buys stock proportional to the option's delta.

As the underlying rises toward a high-gamma call strike:

  1. The delta of those calls increases (moving ITM)
  2. Gamma means the dealer's hedge adjustment accelerates
  3. The dealer must sell stock into the rally to re-balance
  4. This selling creates natural resistance at the call wall

The formula for identifying the call wall:

Call Wall = argmax_K [ Γ_call(K) × OI_call(K) × 100 × S² ]
Enter fullscreen mode Exit fullscreen mode

When the Call Wall Breaks

Call walls aren't impenetrable. When price pushes through, something important happens: deep ITM calls have low gamma, so the hedging pressure that was acting as resistance disappears. The result is often an acceleration above the old call wall — traders call this "gamma unclenching."

1. SPY @ $578 → Call Wall $580 → dealer selling slows the rally
2. SPY @ $580 → At the wall    → maximum hedging pressure, stall
3. SPY @ $582 → Break!         → gamma decays, selling vanishes
4. SPY @ $587 → New Call Wall $590 → acceleration above old wall
Enter fullscreen mode Exit fullscreen mode

What Is a Put Wall?

The mirror image. The put wall is the strike with the largest put-side gamma exposure, acting as support.

Dealers short put options to customers (protective puts). As price falls toward a high-gamma put strike, those puts gain delta, and dealers must buy stock to hedge — creating a natural floor.

When the Put Wall Breaks

A put wall breach is one of the most dangerous signals in options-driven analysis. The buying pressure that was supporting price vanishes, and the decline accelerates.

Put wall breaks often coincide with negative gamma territory. Once the support is gone and dealers are amplifying moves instead of dampening them, you get a cascading selloff — the "elevator down" effect.

1. SPY @ $558 → Put Wall $555 → dealer buying provides a floor
2. SPY @ $555 → At the wall    → max hedging support, bounce expected
3. SPY @ $553 → BREAK          → gamma decays, buying vanishes
4. SPY @ $545 → Cascade        → negative gamma amplifies selloff
Enter fullscreen mode Exit fullscreen mode

Put wall breaks are asymmetric. Call wall breakouts are usually orderly (grind higher). Put wall breakdowns are often violent because they push price into negative gamma, where dealer hedging amplifies the move.


What Is the Gamma Flip Point?

The gamma flip is the price where aggregate dealer gamma crosses from positive to negative. It's arguably the single most important number in GEX analysis because it defines the volatility regime.

Above the Flip (Positive Gamma)

  • Dealers buy dips and sell rallies — mean reversion dominates
  • Realized vol suppressed below implied vol
  • Premium selling has an edge
  • Call wall and put wall act as hard boundaries

Below the Flip (Negative Gamma)

  • Dealers sell into declines and buy into rallies — momentum dominates
  • Realized vol overshoots implied vol
  • Premium buying has an edge
  • Support and resistance levels break easily
  • Trend days, gaps, and cascading moves are common

Key stats:

  • 2–4× typical increase in intraday range when price crosses below the gamma flip
  • ~70% of sessions where SPY stays between call wall and put wall in positive gamma
  • $3–8B estimated daily dealer hedging flow in SPY from gamma alone

Pulling GEX Levels from the API

FlashAlpha returns call wall, put wall, and gamma flip in every GEX response. Here's how to pull them:

Python

import requests

API_KEY = "YOUR_API_KEY"
BASE    = "https://lab.flashalpha.com"
HEADERS = {"X-Api-Key": API_KEY}

r = requests.get(f"{BASE}/v1/exposure/gex/SPY", headers=HEADERS)
data = r.json()

print(f"SPY @ ${data['underlying_price']:.2f}")
print(f"Call Wall:   ${data['call_wall']}")
print(f"Put Wall:    ${data['put_wall']}")
print(f"Gamma Flip:  ${data['gamma_flip']}")
print(f"Net GEX:     {data['net_gex']:,.0f}  ({data['net_gex_label']})")

spot = data['underlying_price']
flip = data['gamma_flip']
regime = "POSITIVE GAMMA" if spot > flip else "NEGATIVE GAMMA"
print(f"Regime:      {regime}")
print(f"Distance to flip: {((spot - flip) / spot) * 100:.1f}%")
Enter fullscreen mode Exit fullscreen mode

JavaScript

const res = await fetch("https://lab.flashalpha.com/v1/exposure/gex/SPY", {
    headers: { "X-Api-Key": "YOUR_API_KEY" }
});
const data = await res.json();

console.log(`SPY @ $${data.underlying_price}`);
console.log(`Call Wall:  $${data.call_wall}`);
console.log(`Put Wall:   $${data.put_wall}`);
console.log(`Gamma Flip: $${data.gamma_flip}`);

const regime = data.underlying_price > data.gamma_flip
    ? "POSITIVE GAMMA" : "NEGATIVE GAMMA";
console.log(`Regime:     ${regime}`);
Enter fullscreen mode Exit fullscreen mode

cURL

curl -s "https://lab.flashalpha.com/v1/exposure/gex/SPY" \
  -H "X-Api-Key: YOUR_API_KEY" | jq '{
    symbol, underlying_price, call_wall, put_wall,
    gamma_flip, net_gex, net_gex_label
  }'
Enter fullscreen mode Exit fullscreen mode

Sample output:

SPY @ $571.23
Call Wall:   $580.00
Put Wall:    $555.00
Gamma Flip:  $565.00
Net GEX:     +2,847,391,200 (strongly positive)
Regime:      POSITIVE GAMMA
Distance to flip: 1.1% ⚠ close to regime boundary
Enter fullscreen mode Exit fullscreen mode

Free tier gives you 5 requests/day with single-expiry GEX. Growth ($299/mo) unlocks full-chain aggregation and 2,500 req/day. Alpha ($1,499/mo) adds VRP, vanna, charm, and unlimited requests.


How the Three Levels Work Together

Scenario Market Behavior Strategy
Between put wall and call wall, above flip Tight range, low vol, mean reversion Sell premium, fade extremes
Approaching call wall from below Rally slows, dealer selling increases Take profits on longs
Approaching put wall from above Decline slows, dealer buying increases Look for bounce setups
Breaks below gamma flip Volatility expands, trending moves Switch to momentum, buy protection
Breaks below put wall in negative gamma Cascading selloff, no dealer support Don't catch knives — wait for OPEX reset
Breaks above call wall Resistance removed, gamma unclenching Trail stops, new call wall is next target

Common Mistakes

  1. Treating levels as exact prices. The call wall at $580 doesn't mean price stops at $580.00. These are zones of influence ($2–5 range).

  2. Ignoring expiration context. GEX levels are strongest near OPEX because gamma peaks as time-to-expiry shrinks. A call wall from options expiring in 3 days is far more powerful than one from 45-DTE options.

  3. Using stale data. GEX levels shift as new trades execute. EOD data from last night may not reflect morning activity.

  4. Trading levels without regime context. A put wall in positive gamma is strong support. The same put wall in negative gamma is a speed bump. Always check the gamma flip first.

  5. Forgetting GEX is one input. Earnings, FOMC, geopolitical events can all overwhelm dealer hedging. Use GEX alongside price action, volume, and macro context.


Get Started

  • Visual: Free GEX tool — no account required
  • Programmatic: GEX API — 5 free requests/day, no credit card
  • Full stack: Pricing page — Growth and Alpha plans

For the full deep-dive with LaTeX formulas, interactive diagrams, and per-strike breakdowns, read the complete article on FlashAlpha.


Originally published at flashalpha.com

Top comments (0)