Draw the dealer-gamma levels and the gamma-by-strike profile inside the charting platform you already trade on. Install, API keys, and what each line means.
The same dealer-gamma levels the terminal draws, rendered inside the charting platform you already trade on — call and put walls, the gamma flip, max pain, the expected-move band, the top gamma strikes, plus the full gamma-by-strike profile.
It is included with a paid plan. There is no separate purchase, and one key works across every platform.
The API serves levels in index points (SPX or NDX) together with a reference price derived from the option chain. The study then computes a basis from your own chart's last price and draws every level shifted by it.
Two consequences worth understanding:
ES and MES map to SPX; NQ and MNQ map to NDX. On anything else the study draws nothing and says so, rather than shifting SPX levels onto an unrelated chart where they would look entirely plausible and mean nothing.NEW KEY.Five active keys per account. The key carries your subscription, so it stops working the moment the subscription lapses — no action needed from either of us.
SharpnelGammaLevels_64.dll from Settings → Platform Studies.C:\SierraChart\Data.Analysis → Studies → Add Custom Study → Sharpnel Gamma Levels → Add.Settings and Inputs → Text Input and paste your API key.Levels, the profile and a status line appear within a few seconds.
If you want to confirm the file is the one I published, compare the checksum shown next to the download:
SharpnelGammaLevels.cs from Settings → Platform Studies.Documents\NinjaTrader 8\bin\Custom\Indicators\.New → NinjaScript Editor, then press F5 to compile.Indicators… → Sharpnel Gamma Levels → Add.API Key field, then OK.Same key, same levels, same behaviour as the Sierra build.
SharpnelGammaLevels.dll from Settings → Platform Studies.Settings\Scripts\Indicators\SharpnelGammaLevels\ — create that folder if it isn't there.Starter process, then reopen it.Indicators → Sharpnel → Sharpnel Gamma Levels → Add.API Key field.MotiveWave and ATAS follow.
| Call / Put Wall | The strikes carrying the largest call and put gamma — where dealer hedging tends to slow price down. |
| Gamma Flip | Where net dealer gamma crosses zero. Above it hedging typically dampens moves; below it, it tends to amplify them. |
| Max Pain | The strike where the most option value expires worthless. |
| EM High / EM Low | The expected-move band implied by the at-the-money straddle. |
| GEX 1–5 | The five strikes carrying the most gamma, marked in the profile gutter too. |
| High Gamma / Vanna / Charm | Second-order concentrations. Off by default — turn them on once the main lines make sense. |
| Profile bars | Gamma by strike. Open-interest gamma is the darker bar; volume gamma is the brighter bar nested inside it. Blue is positive gamma, red is negative. |
| Ghost dots | Where that strike's gamma sat 1, 5, 10, 15 and 30 minutes ago. Dots left of the bar tip mean gamma is building there; dots to the right mean it is draining. |
This matters more than any feature, so it is worth being explicit. The study will not show you a line it cannot stand behind.
| Status line | Always shows the real age of the data — the server's own timestamp plus locally elapsed time, so a frozen clock cannot make old levels look fresh. |
| Stale data | Past 15 minutes the status line reads *** STALE *** in bold. The levels stay drawn, clearly labelled as old. |
| Auth failure | Levels are CLEARED and the status says why. Same for a lapsed subscription, an unreachable server, or a payload it cannot parse. |
| Wrong instrument | If the chart is nowhere near the chain being drawn, levels are cleared rather than shifted onto it. |
| Expected-move band | Absent whenever there is no qualifying at-the-money straddle quote that cycle. Index chains often carry none. It reappears when the data supports it — that is honest absence, not a bug. |
| Ghost dots | A lookback with no honestly matched cycle is omitted. Right after a restart you will see fewer dots, filling in as history accumulates. Never back-filled with zeros. |
| NO API KEY | The key field is empty. Paste one from Settings → API Keys. |
| AUTH FAILED | The key is wrong, or was revoked. Mint a new one. |
| SUBSCRIPTION INACTIVE | The plan behind the key lapsed. Levels resume as soon as it is active again. |
| CHART DOES NOT MATCH | The chart is not the index being drawn. Use an ES/MES or NQ/MNQ chart, or set the Underlying input manually. |
| RATE LIMITED | 120 requests a minute per key. Raise the refresh interval, or use fewer charts on one key. |
| Levels but no profile | The profile needs the strikes array; if levels draw and bars do not, tell me — that is a real bug, not a data outage. |
| Nothing at all | Check the status line first. It always says which of these it is. |
Anything the status line does not explain, open a ticket — I answer them myself.