PND GexBot

Gamma exposure levels from GEXBot overlaid directly on your ATAS X futures chart — Zero GEX, call walls, put walls, confluence zones, and a live bias summary box. Join discord to get the indicator 💰  ·  ▶ See walkthrough on YouTube  ·  Get GEXBot  ·  Download ATAS/X  ·  ← See all indicators
PND GexBot — ATAS X Custom Indicator  ·  by profitnotiondaily  ·  discord.gg/profitnotiondaily  ·  gexbot.com  ·  Download ATAS/X
PND GexBot on an NQ chart — GEX levels overlaid with info box

What it does 📊

🎯
Draws GEX levels on your chart
Fetches live gamma exposure data from the GEXBot Classic API and plots Zero GEX, call walls, and put walls as horizontal price lines directly on your NQ, ES, or GC futures chart — no TradingView tab switching required.
📡
Live polling — auto-refreshes
Polls the GEXBot API on a configurable interval (default 30 s). The change-detection endpoint is checked first — the full data fetch only fires when the levels actually update, keeping API usage minimal.
🔀
Two sources per chart (NQ & ES)
For NQ and ES, the indicator overlays both the index and the ETF (NQ_NDX + QQQ, ES_SPX + SPY). Levels that agree across both sources are highlighted as confluence zones.
📋
Live info box
An on-chart overlay shows Zero GEX price, aggregate GEX reading, Vol/OI divergence warnings, and delta bias — updated every poll. Choose Detailed or Summary mode depending on how much space you want.

The three indicators

NQ PND GexBot NQ
Sources: NQ_NDX Index  +  QQQ ETF
Overlays Nasdaq 100 GEX levels on your NQ futures chart. The index source (NQ_NDX) shows the full options complex on NDX. The ETF source (QQQ) reflects retail options flow, which often clusters at different strikes.

Confluence tolerance: 50 NQ points. When an NQ_NDX level and a QQQ level (converted to NQ price space) land within 50 pts of each other, the zone is highlighted — these tend to be the stickiest levels.
50 pts
Confluence tol.
30 s
Default refresh
2
Sources
ES PND GexBot ES
Sources: ES_SPX Index  +  SPY ETF
Overlays S&P 500 GEX levels on your ES futures chart. ES_SPX captures the institutional-dominated SPX options market. SPY reflects the more liquid retail ETF options, which can diverge meaningfully at expiration.

Confluence tolerance: 10 ES points. ES is a tighter instrument — levels that agree across SPX and SPY within 10 pts are high-confidence zones.
10 pts
Confluence tol.
30 s
Default refresh
2
Sources
GC PND GexBot GC
Source: GLD Ratio-converted → GC
GEXBot has no GC futures ticker, so GLD (SPDR Gold ETF) is used as a proxy. Levels are converted to GC price space in real time using the live ratio between the chart's GC price and GLD's spot. Single-source — no ETF second layer.

Confluence tolerance: 5 GC points. See the GLD→GC conversion section below.
5 pts
Confluence tol.
30 s
Default refresh
1
Source

Setup — first time

You need a GEXBot API key. Sign up at gexbot.com, generate a custom API key from your account dashboard, then paste it into the indicator's Group 1 → API Key setting in ATAS X. The indicator will start populating within one refresh cycle (30 s default).
Step 1
Install DLL
Copy PNDGexBot.dll to
ATAS/Indicators folder
Step 2
Add indicator
Search "PND GexBot NQ"
in ATAS indicator list
Step 3
Enter API Key
Group 1 → API Key
in indicator settings
Step 4
Levels appear
Within 30 s — info box
shows data timestamp
Optional
Customize colors
Groups 2 & 3 in settings
per source independently

Level lines — what each line means

── NQ Major+2 ─────── 21,600 Call Wall (2nd)
── NQ Major+1 ─────── 21,450 Call Wall (1st / strongest)
────────────────────── 21,380 ← current price
── NQ Zero GEX ────── 21,300 Flip point
── NQ Major-1 ─────── 21,150 Put Wall (1st / strongest)
── NQ Major-2 ─────── 21,000 Put Wall (2nd)
LineWhat it marks
Zero GEX The gamma flip point. Above it, dealers are long gamma — they buy dips and sell rips, suppressing volatility (range-bound behavior). Below it, dealers are short gamma — they chase moves, amplifying volatility (trending behavior).
Call Wall 1 Strongest positive GEX strike above Zero GEX. Heavy call open interest creates dealer short-gamma concentration here — tends to act as resistance or magnet depending on GEX regime.
Call Wall 2 The second-largest call GEX concentration above Zero GEX. Useful for setting targets or identifying where a rally may slow.
Put Wall 1 Strongest negative GEX strike below Zero GEX. Heavy put concentration — acts as a support floor in positive GEX regime, or accelerant in negative GEX regime.
Put Wall 2 The second-largest put GEX concentration below Zero GEX. Watch for bounces or breakdown acceleration near this level.

Confluence zones

When a level from Source A (index) and a level from Source B (ETF) land within the confluence tolerance of each other, a shaded band is drawn between them. These zones represent agreement between two independent options markets and tend to offer stronger support/resistance than either level alone. The tolerance is instrument-specific: 50 pts for NQ, 10 pts for ES, 5 pts for GC.

Info box — reading the overlay

The info box sits in a corner of the chart (configurable). It shows two source blocks — one per data source — each updated on every API refresh. Choose Detailed mode for the full breakdown, or Summary mode for a 2-line-per-source compact view.

Detailed mode (NQ example)
── NQ_NDX [09:47:22] ──
  Zero GEX : 21,312.50
  Vol GEX : +48,231.4  ↓ dampens
  OI GEX : +31,007.2  ↓ dampens
  Delta Bias: ▲ 1.2361  calls favored
── QQQ ×22.0841 [09:47:28] ──
  Zero GEX : 484.22 → NQ 21,290
  Vol GEX : +57,182.0  ↓ dampens
  OI GEX : +12,401.6  ↓ dampens
  Delta Bias: ▲ 0.8812  calls favored
Summary mode (NQ example)
── NQ_NDX [09:47:22] ──
  Zero GEX: 21,312.50 | Distance: +67.5 pts
  GEX: +Positive (Stable) | Vol: ↓ dampens / OI: ↓ dampens | Bias: ▲ calls favored
── QQQ ×22.0841 [09:47:28] ──
  Zero GEX: 484.22 → NQ 21,290 | Distance: +90.0 pts
  GEX: +Positive (Stable) | Vol: ↓ dampens / OI: ↓ dampens | Bias: ▲ calls favored
FieldWhat it means
Zero GEX The gamma flip price from the API. In Summary mode, Distance shows how far the current chart price is from Zero GEX, signed (+ = above, − = below).
Vol GEX / OI GEX Aggregate gamma exposure by volume and by open interest.
Positive (+) → ↓ dampens — dealers are long gamma, hedging suppresses moves.
Negative (−) → ↑ amplifies — dealers are short gamma, hedging accelerates moves.
⚡ VOL/OI DIVERGENCE Shown in Detailed mode when Vol GEX and OI GEX disagree in sign. Means the market is in transition — positioning is mixed and the regime is less reliable as a directional filter.
Stable / Unstable Summary mode only. Stable = Vol and OI GEX agree in sign (consistent regime). Unstable = they diverge (mixed signal). Line color: green (positive+stable), red (negative+stable), yellow (unstable).
Delta Bias / Bias Derived from the options delta risk reversal. ▲ calls favored = call skew is higher, market leans bullish. ▼ puts favored = put skew dominant, market leans bearish.
×22.0841 The live ratio used to convert QQQ/SPY/GLD prices into futures price space. Shown on the source B header line. Updates every refresh cycle.
[09:47:22] Local time of the last successful data fetch for that source. If this timestamp stops updating, the API connection has stalled — check your API key and internet connection.

GC — GLD to GC futures conversion

GEXBot does not publish a GC futures ticker. Instead, GLD (SPDR Gold Shares ETF) data is used as a proxy, and every level is converted into GC futures price space using a live ratio:

ratio = GC chart price ÷ GLD spot price
GC level = GLD level × ratio

Why this works: GLD tracks ~0.0919 troy oz of gold per share (slightly less than the original 0.10 oz due to annual expense-ratio accrual). The ratio automatically accounts for this drift and for the GC futures basis (contango or backwardation vs. spot gold) — because the GC chart price already reflects the current front-month basis. This is the same methodology used by professional TradingView gold converters.

Important: The ratio is recalculated on every rendered frame using the most recent bar close — not just on API polls. This keeps GC levels pinned to their correct price even as GC moves intraday.

Detailed vs Summary mode

📄 Detailed mode
Shows 5–6 lines per source: Zero GEX price, Vol GEX with hint, OI GEX with hint, a divergence warning when Vol and OI disagree, and the Delta Bias line. Best for a dedicated GEX analysis panel or a second monitor where you have room.
⚡ Summary mode
Condenses each source to 2 lines: Zero GEX + distance from current price on line 1, and a single color-coded status line (GEX sign, stability, Vol/OI hints, and bias) on line 2. Best for a tight corner overlay on a primary trading chart. Line 2 color: green = positive+stable, red = negative+stable, yellow = unstable.

All settings — quick reference

Setting Default What it controls
1. Connection
API Key Your GEXBot custom API key. Required — the indicator shows "Enter API Key" until this is populated. Get yours at gexbot.com.
Refresh Interval (secs) 30 How often the indicator polls GEXBot for updated levels. Minimum 10 s, maximum 300 s. GEX levels typically update every few minutes during market hours — 30 s is a good balance.
Expiry Period Zero Which options expiration window GEX data is aggregated across:

Zero — 0DTE only. Options expiring today. Most reactive to intraday price movement. Best for scalping and intraday sessions.
Next Expiry — The following expiration date. Broader positioning than 0DTE, less noise.
Full — All expirations combined. Represents the entire options complex. Levels tend to be stickier and move less intraday — better for swing-level context.
PND Combined — Polls all three periods simultaneously and draws only levels that are confirmed across two or more expiry windows. Confirmed strikes are displayed as bold lines with a ✦ prefix and a label showing which periods agreed — e.g. ✦ 0DTE+NXT Major+1 or ✦ 0DTE+NXT+FULL Zero. If a strike only appears in one period it is ignored; the chart stays clean and only high-conviction confluences are shown. The info box displays a per-period poll status (0DTE:✓ NXT:✓ FULL:…) while data loads.
Max Major Levels Per Side 2 How many call walls and put walls to draw. 1 = only the strongest level each side. 2 = top two. Max 5. More levels = more lines on the chart; start with 2 to keep it readable.
Documentation read-only Displays the URL for this reference page directly in the indicator settings panel — indicators.profitnotiondaily.com/pnd-gexbot
2. Source A (index) — NQ_NDX / ES_SPX / GLD
Enabled true Toggle the index source lines on/off without disconnecting the data feed. Useful for temporarily hiding one layer.
Zero Line Color varies Color of the Zero GEX line for Source A. Default is a semi-transparent white for all instruments.
Call Wall 1–3 Color greens Colors for the first, second, and third call wall lines. Call Wall 1 is the strongest. Default palette uses progressively darker greens.
Put Wall 1–3 Color reds Colors for put wall lines. Put Wall 1 is the strongest. Default palette uses progressively darker reds.
3. Source B (ETF) — QQQ / SPY  [NQ & ES only]
Enabled true Toggle the ETF source lines on/off. The GC indicator has no Source B — this group is hidden.
Zero / Call / Put Colors varies Same structure as Source A but for the ETF layer. Source B lines use slightly different alpha values to visually distinguish them from the index layer at a glance.
4. Display
Zero Line Width 1 Pixel width of the Zero GEX line. Range 1–8. The Zero line is the most important — some traders prefer 2–3 px to make it stand out from the major walls.
Major Level Line Width 1 Pixel width of call and put wall lines. Range 1–4.
Show Labels true Toggle price labels on each level line (e.g., "NQ Major+1", "QQQ Zero").
Show Info Box true Toggle the on-chart GEX summary overlay entirely.
Highlight Confluence Zones true Draw a shaded band between Source A and Source B levels that fall within the confluence tolerance. Disable to reduce visual clutter.
Confluence Tolerance (points) NQ 50 / ES 10 / GC 5 Maximum price distance between a Source A and Source B level for them to count as a confluence zone. Pre-set by instrument — adjust if you want tighter or looser zones.
Show Ratio Debug in Info Box false When enabled, appends raw ratio components to the info box (e.g., "Chart px: 3,450.1 / GLD spot: 315.22"). Useful for verifying the GC conversion is correct.
Info Box Mode Detailed Switch between Detailed (5–6 lines per source) and Summary (2 lines per source). See the mode section above.
Info Box Position TopRight Corner of the chart where the info box is anchored. Options: TopLeft, TopRight, BottomLeft, BottomRight.
5. Alerts
Alert on Index Zero Gamma Cross false Fire an ATAS alert when price crosses the Source A Zero GEX level. Useful for catching gamma flip events without watching the chart.
Alert on ETF Zero Gamma Cross false Same as above but for the Source B (ETF) Zero GEX. On NQ, this alerts on QQQ's Zero crossing projected into NQ price space.

NQ vs ES vs GC — nuances at a glance

Characteristic NQ ES GC
Index source NQ_NDX (Nasdaq 100) ES_SPX (S&P 500) GLD proxy (Gold ETF)
ETF source QQQ SPY None — single source
Price conversion QQQ × ratio → NQ pts SPY × ratio → ES pts GLD × (GC/GLD) → GC pts
Ratio updates On each API poll On each API poll Every render frame — GC price changes tick-by-tick
Confluence tolerance 50 pts 10 pts 5 pts
Confluence zones Index vs ETF levels Index vs ETF levels N/A — single source
Best used on chart NQ1! / NQ futures ES1! / ES futures GC1! / GC futures

How the data pipeline works

Why two endpoints? The indicator hits a lightweight maxchange endpoint on every refresh tick first. Only if that token has changed does it fetch the full data snapshot. This keeps API requests minimal during quiet periods when GEX levels aren't moving.
Every 30 s
Timer fires
Per source
(NQ_NDX & QQQ)
Check
maxchange token
Lightweight GET —
same? skip fetch
If changed
Fetch /zero
Full JSON snapshot
with all levels
Parse
Build levels
Zero GEX, top N
call & put walls
Render
Draw on chart
Lines + info box
on every frame

All requests are serialized through a shared gate with a 400 ms gap between calls — preventing the GEXBot API rate limiter from triggering when multiple indicators (NQ + ES + GC) are all on the same chart and their timers fire simultaneously.