Indicator — Options GEX Heatmap
Options GEX Heatmap draws the option chain's estimated gamma exposure as horizontal bands behind the price candles. Each column uses that candle's option prices and open interest, so you can see how exposure at a strike changes over time.
Reading the heatmap
- Teal shows positive exposure; salmon shows negative exposure under the default call-positive, put-negative convention.
- Brighter bands have larger absolute exposure. Both signs share the same scale across the loaded history; panning does not rescale the colors.
- Faint bands to the right project the latest candle's exposure into empty chart space. They are a visual guide, not future observations.
- Hover a strike band to see its expiry, candle time, GEX, call/put contributions and chain coverage. Projected bands are labeled as projections. Known zero exposure is distinct from missing price/OI, and low-coverage values stay unavailable.
- Blank areas can mean weak exposure below your intensity threshold, zero net exposure, missing option history, or insufficient coverage. The status legend reports loading, errors and the latest candle's coverage.
Use an NSE/BSE underlying spot or futures chart on a time-based interval from 1 minute to 1 day. Option-premium charts are not supported. The strike axis uses the actual option strike prices; futures basis is not added to the displayed strikes.
Settings
| Setting | Purpose |
|---|---|
| Expiry | Auto selects the nearest listed expiry after the latest chart candle. Select an expiry to pin it. Each heatmap uses one expiry throughout its history. |
| Strikes around ATM | Loads 10–80 strikes around the reference price when the chain is loaded; default 40. |
| Exposure | Net GEX, calls, puts, or unsigned gamma concentration. |
| Open interest unit | Auto follows Gamma Exposure's unit detection. Unknown units default to quantity. Override with contracts if your feed requires multiplication by lot size. |
| Chart price | Detects spot/futures from the chart instrument, with manual overrides. Put-call parity takes precedence when available. |
| Show hover details | Shows strike exposure and modeled chain coverage at the crosshair without additional history requests. |
| Minimum intensity / exponent | Filter weak bands or increase their visibility. |
| Opacity / band height / colors | Adjust the bands while keeping candles readable. |
| History | Defaults to five calendar days and up to 1,500 candles; limits are 14 days and 3,000 candles. |
| Refresh | By default, checks every 60 seconds and refreshes after a new chart candle appears. Choose timed refresh for intrabar updates. Automatic refresh loads only the recent tail; manual refresh reloads the full requested window, including failed requests. |
Settings, visibility and expiry selection are saved with the chart's indicators. Option history is cached in memory and browser storage, so reopening a chart reuses downloaded bars and requests only missing or stale data. Closed history is reused for up to 24 hours; live results are shared for 55 seconds. Cached history is retained for up to 16 days with storage limits. Manual refresh bypasses the history cache. Where supported by the server, uncached option histories load in batches of up to 32 contracts.
Data and model
The indicator reuses the Gamma Exposure module's forward selection, implied-volatility solver, IV repair and GEX calculation. GEX is gamma × open interest × the applicable lot multiplier × forward² × 1%, expressed in rupee notional per 1% move. Dealer sign is an assumption; use Invert dealer sign to reverse it. Unsigned concentration does not require that sign assumption.
Historical calculations match option bars to the chart's candle timestamp exactly. They do not borrow later quotes, carry values across missing candles, or substitute today's open interest. Net and unsigned cells need both legs; columns below 60% modeled coverage stay blank. A reported zero OI remains distinct from unavailable OI. Expiry time is floored to 15 minutes for modeling, and bands stop at expiry cutoff.
Automatic refresh pauses on historical/replay charts and hidden tabs. The default mode updates once per new chart candle, within the configured check interval; timed mode updates at that interval. Neither mode streams every option tick. Available history and expiries depend on the existing market-data service; selecting an old chart date does not create an expired chain that the service no longer lists.