NeuraGex is real-time quantitative analytics of options positioning (GEX) for SPX⇒ES, with empirical memory of past sessions.
Every 60 seconds, the system takes a snapshot of SPX options positioning — where dealer gamma exposure concentrates, which strikes act as walls, where zero gamma crosses — and turns it into a three-dimensional terrain you can walk, question and compare against its own history. It is not one more indicator on a chart: it is the map of the force field the price moves across.
That boundary is not a technical limitation: it is the founding doctrine of the product, wired into the code. A deterministic verifier reads every text the system generates and removes any claim that is not anchored to a persisted data point — including any sentence that sounds like a forecast. The result is a rare instrument in this market: one that would rather say "this cannot be claimed" than fill the silence with manufactured confidence.
Every color in the Terrain has a fixed, public, non-negotiable meaning. None of them has an opinion about your position.
| Reading key · permanent at the foot of the scene | |
|---|---|
| ELECTRIC BLUE | Relief · the ceilings (GEX+) side. Height = magnitude of the exposure. |
| COPPER | Relief · the floors (GEX−) side. Relief is a physical channel, not a doctrinal one. |
| GREEN | Confirmed event: the structure gained ground. Events only, never decoration. |
| RED | Confirmed event: the structure gave up ground. Events only, never decoration. |
| AMBER | Unresolved · beacons · flips · zero gamma · dispute. It burns only where there is conflict. |
| CYAN | Spot — the price trace. A single use, across the whole application. |
"COLOR TELLS YOU WHICH SIDE MOVED.
THE DECISION IS ALWAYS YOURS."
Green does not mean "buy". Red does not mean "sell". They mean a wall gained or gave up ground — a structural fact that is identical for a buyer and a seller. If you are short, a green event may be your worst news. The system is neutral by design: it reports the structure, and the decision is yours. When there is no confirmed event, there is no doctrinal color — an unconfirmed regime is shown in neutral ink, never a "provisional" green or red. And if the feed exceeds its freshness threshold, the terrain lowers its opacity and STALE DATA · ALERTS SUSPENDED appears: an outdated map that looks fresh is dangerous; this one declares itself old.
A strike × time terrain where height is GEX magnitude and color is doctrine. Everything else is chassis at its service.
| Zone | What it is | How to read it |
|---|---|---|
| HEADER | Regime banner + live metrics | Regime in doctrinal color only if confirmed · SPOT · ZERO GAMMA · NET GEX VOL · SERIES (captured / expected). |
| LAYERS | Left-hand toggle panel | Events and states · Δ5m lens · walls · zero gamma valley · spot trace · L1–L4 beacons · OI base range. |
| CAMERA | PILOT · OVERHEAD · RANGE · ORBIT | OVERHEAD = strike × time heatmap. Double-click centers; 1–4 save your views; E switches the scene mode. |
| SCRUBBER | Bottom timeline | Drag to travel through the session. The amber marks are events. LIVE returns to the present; ARCHIVE opens any historical session. |
| STATUS | Bottom health bar | GAPS · active LEVELS · ALERTS issued · RENDER fps. If it says GAPS: NONE, the session is intact. |
Each vertical column of the terrain is an instant — one snapshot every ~60 s. Each horizontal row is a strike. The blue slope is the half of the book where dealers are long gamma; the copper slope, where they are short. Between them runs the zero gamma valley, and over all of it winds the cyan spot trace: the price walking through the force field.
Everything measured is drawn solid. Any visual projection would be translucent. The distinction is visual and systematic: you will never confuse a data point with an estimate.
The terrain is for understanding. There are moments —with the market open and your hand on the order— when you don't need to understand: you need the number. That is what the Panel is for.
The Panel is the text reading of the same data: no relief, no 3D, no GPU. A single screen that runs on any machine and reads in two seconds from your second monitor. It is included in both plans — it is not a separate product, it is the same measurement read another way.
| Block | What it shows |
|---|---|
| 1 · REGIME | Gamma regime with its duration, distance to zero gamma, net GEX and hedging pressure. |
| 2 · ZONE MAP | The strikes that matter in vertical order: ceilings, zero gamma, floors and the price between them, with their state. |
| 3 · EVENTS | The session feed with its time and beacon level — the same one that feeds the Terrain. |
| 4 · MEASUREMENT | The system's indicators, collapsible, for when you want the detail without leaving the screen. |
The Terrain is the main product and the front door. The Panel lives one click away, in the scene header. The same doctrine governs both: same structural color, same stale data, same gaps in plain sight. The only thing that changes is how much time you have to read.
A wall is not a line: it is a story. NeuraGex tracks every level from birth to death — and remembers every transition.
| State | What it means | How to treat it in the reading |
|---|---|---|
| BUILDING | The level is accumulating GEX; it is being built. | Young structure. Its strength is not yet proven; look at how long it has lasted and with what strength (f1–f3). |
| HOLDING | The level holds: the exposure is sustained over time. | The "solid" state of the map. Duration matters: "HOLDING for 2 h 56 min (176 cycles)" weighs more than 6 minutes. |
| DECAYING | The exposure is withdrawing; the wall is losing mass. | A sign of erosion. A DECAYING floor with spot right above it deserves immediate attention. |
| BROKEN | The level was crossed or unwound. | The event happened. A recent BROKEN redraws the map: the neighboring levels inherit the spotlight. |
How much GEX mass the level concentrates, relative to the session. f3 is a dominant wall; f1 is weak structure.
Always "4 h 16 min (256 cycles)": human time first, cycles in parentheses. The system does the conversion with the real cadence.
In points. An f3 wall 3 points away and an f3 wall 40 points away are different stories.
Transition alerts at four severity levels, with no repeats: they sound when the event is issued, never twice for the same fact.
State is not a sentence. On 08/11 a floor was marked BROKEN while the flow kept building right there — 13 minutes later the wall was recaptured. The Terrain keeps the full life of every level, so the archive shows you that story without erasing it. Systems that only keep "the current state" erase exactly what teaches the most.
The gamma regime defines the physics of the session: whether dealers, as they hedge, slow the price down or push it along.
Spot trades above zero gamma. Dealers, long gamma, sell rallies and buy dips to hedge: their flow dampens. Ranges tend to compress and walls tend to be respected more.
Spot trades below zero gamma. Dealers, short gamma, buy rallies and sell dips: their flow amplifies. Moves extend and breaks meet less resistance.
The header banner shows the regime in doctrinal color only when the RegimeTracker confirms it as a sustained state — and notes since when: "NEGATIVE GAMMA · HEDGING ACCELERATES · SINCE 11:40". Without confirmation, neutral ink and NO REGIME. Never a provisional color. Flips are marked in amber on the scene: FLIP CONFIRMED → POSITIVE.
The header's Net GEX (vol) carries sign and magnitude: it is the sum of exposure by volume in the snapshot. The normalized net GEX the analyst cites is something else: the position of net GEX within the session's range (0 = day's minimum, 1 = maximum). The regime carries the sign; the normalized value, the position. The texts name it explicitly.
Quick reading rule: in positive gamma, walls are more credible by default; in negative gamma, every wall demands more evidence — and that is exactly where the Council earns its keep, because it checks the map against the real work of the flow.
A narrow rail lives on the right edge. Behind it, an analyst and a table of agents working on the moment you are looking at.
| Step | What you see | What it does |
|---|---|---|
| 1 · RAIL | A 48 px strip with ◊ and "ANALYSIS" written vertically. A dot ● in ink = there is an unread record. | Click to unfold the invocation panel. One satellite at a time: when it opens, the Ridge collapses and the scene yields width — the heatmap is never covered. |
| 2 · ENVELOPE | The contract row: NY clock to the second + SNAP + = SCRUBBER. | Declares exactly WHICH moment will be analyzed: the visible one. If you move the scrubber, the contract follows you. With no moment on screen, the buttons turn off: it does not analyze the void. |
| 3 · CHOOSE | Two cards with their declared time cost. | ANALYSIS — one reading, ~6 s. COUNCIL — the full table, 10–20 s. |
| 4 · READING | The skeleton appears with names from the first instant; the blocks fill in all at once. | Text in flight is dressed as DRAFT until the verified version replaces it. What stays on screen has passed the verifier. |
Every claim carries its anchor to a persisted fact. Local citations (solid underline) fly the camera to their coordinate on the terrain; precedent citations (dotted) refer to another session. The grammar is fixed: solid flies, dotted opens, plain doesn't touch.
At the foot of every analysis: removed · re-prompts · latency · prompt version · snapshot. It is the record's traceability: with that data, any analysis can be re-verified.
The analysis of an instant is generated only once and persisted. Whoever invokes it later on that same snapshot reads exactly the same record, with the same citations — not a new version. Two readers comparing screens see the same thing, and the served record arrives instantly.
The analyst describes structure and cites precedents. It never forecasts. Each block has a different job.
"In 7 similar episodes, at +15 minutes the wall held in 6 of 7 (86%) and expired untouched in 1 of 7 (14%). Mean similarity is 0.83 across 7 episodes, with a corpus of 17 sessions and 6,504 contexts."
The analogy engine finds the historical episodes most similar to the visible moment and reports what happened next — with the n always welded to the percentage. "86%" never travels without its "6 of 7": a percentage without a sample size is propaganda, not measurement.
The state of the map at this instant: regime and its duration in dual form, walls with state/strength/distance, ceiling–floor channel, normalized net GEX, vol/OI divergence, session health. This block puts the precedents in context — for example: "those episodes correspond to a HOLDING wall, and here the ceiling is BROKEN". When the present doesn't match history, the text says so.
The most important block — which is why it is framed, not in fine print. It declares the limits of the reading: that the precedents are past episodes and not a projection onto this particular wall; that the similarity is 0.83, not identity; which windows have no data. Epistemic limitation gets top billing.
The invisible checkpoint: before reaching your screen, every text passes through a deterministic verifier that validates (1) that every claim is anchored to a fact in the package; (2) that the numbers are consistent; (3) that no forbidden vocabulary appears (forecast, recommendation); (4) that no percentage travels without its n; (5) that construction hit-rates are never cited as predictive ability.
Two analysts that are partial by design, a deterministic cross-check that decides from the data, and a counselor who writes. There is a fourth seat at the table — and it is empty on purpose (ch. 14).
| Seat | What it receives | What it does |
|---|---|---|
| ◆ STRUCTURALIST | ONLY the static map: walls, states, strengths, regime, durations. | Reads the snapshot. It cannot speak to flow because it never receives it — the partiality is by data type, not by instruction. |
| ≈ FLOW READER | ONLY the derivatives: GEX changes per window, zero gamma migration, net GEX velocity, transitions. | Reads the recent work. It knows nothing of states or strengths: it cannot claim what it does not receive. |
| ● COUNSELOR | Both verified readings + the already settled cross-check. | Writes the verdict. Rule six: it does not invent, does not break ties, does not soften. If there is a dispute, it OPENS with the dispute. |
| ◊ EMPTY SEAT | Nothing, yet. | Reserved for the probabilistic dimension. It neither deliberates nor signs: it will be filled only when calibration proves, against real outcomes, that its numbers mean what they say. |
The dispute is not declared by a language model: it is declared by a deterministic algorithm that compares the two fact packages. To flag divergence it requires three things at once: a contradictory pair (the map says solid where the flow says withdrawal), persistence (the pattern holds across all three windows — 5, 15 and 30 minutes — same side, same sign, above threshold) and concentration (the flow's work sits ≤10 points from the disputed wall). If you change the prose without changing the data, the cross-check does not change — this is tested.
A single analyst with all the data averages out its own internal tensions and delivers a smooth synthesis. Two agents that cannot see each other's data produce truly independent readings — and when they clash, the clash is information. And a pause that is named: while the cross-check runs, the drawer says CROSS-CHECK IN PROGRESS · the verdict is not streamed letter by letter. The system does not disguise its silences.
Three axes are always evaluated, all at once: structural bias, near level and far level. The verdict sits at the top, always visible.
The map is reliable: what you see is what the flow backs. It is written in full ink, never in green — conviction without celebration. Careful: the readings converge, not your thesis. A CONVERGE on a broken floor means both voices agree it is broken.
Lowered confidence in the named level. It is not a directional signal: it means "the map and the real work contradict each other there". Amber burns only on the verdict and on the cell of the disputed axis — the converging ones dim so that the asymmetry is the reading. A dispute can resolve in the map's favor: honest noise is part of the instrument, not a defect.
Data coverage is not enough to judge — typically in the first minutes of the session, when the long windows do not exist yet. The system declares it, naming the windows, instead of fabricating a judgment on an empty base. An honest INSUFFICIENT is worth more than an invented CONVERGE.
If the service goes down: the deterministic part survives on its own — fact packages + cross-check + deterministic verdict, and the outage is declared in the record. Never a deliberation silently degraded.
Session of 2026-08-17, SPX, negative regime since 11:40. Three real Council records, in sequence. This is what the instrument looks like at work.
The Structuralist: floor 7770 HOLDING for 2 h 56 min, strength f3 — the most solid on the map. The Flow Reader: sustained withdrawal right on that wall, deepening from −0.078 to −0.227 of total GEX across the windows. The map says solid; the flow says it is being unwound. The Counselor opens with the dispute and does not break the tie.
↓ ~40 MINUTES LATER, FLOOR 7770 BREAKS. SPOT DROPS 13 POINTS.
Both walls ended up above spot — "somewhat atypical", says the record. 7770 has been BROKEN for 32 min and the flow no longer works there: the voices converge that the event happened. Convergence on the new structure, not on the old one.
Floor 7750 transitions to DECAYING — and the map and the flow report the same transition, at the same strike, in the same minute. The session ended giving up ground step by step; the Council narrated it at every stage.
It is the fourth episode in the record with this pattern — and even so, the correct reading is not "IN DISPUTE predicts breaks". The correct reading is the grammar's: when the map and the real work contradict each other about a level, that level does not deserve the confidence its label suggests. Sometimes the dispute resolves in the map's favor. The value is in learning about the contradiction while it happens — not afterwards.
The Flow Reader works with three lookback windows — 5, 15 and 30 minutes — and the pattern labels are computed by the system, not by the language model.
The windows are cumulative: w5 looks at the last 5 minutes, w30 at the last 30 — the long one contains the short one. Reading the raw sequence fools even experts. That is why the system breaks it into disjoint bands — the recent against the earlier — and the label comes out of a deterministic calculation with fixed thresholds.
| Label | What it means | Example |
|---|---|---|
| ACCELERATING | The recent band exceeds the earlier one by ≥1.5×, same sign. | GEX withdrawal intensified over the last 5 minutes. |
| DECELERATING | The earlier band exceeds the recent one by ≥1.5×, same sign. | The move continues but loses intensity. |
| WITH INTERNAL REVERSAL | The bands have opposite signs — there was a turn inside the window. | Zero gamma migrated +1.29/min in the earlier band and −3.27/min in the recent one: whipsaw, not trend. |
| STABLE | No band dominates; the pace holds. | The flow works evenly across the window. |
| UNAVAILABLE | The window has no valid base (young session or sentinel data). | "30-minute window without a useful reading" — it is declared, never computed against zero. |
The two-band decomposition does not distinguish a three-phase pattern (fast → still → fast): it averages it to STABLE. The raw numbers always accompany the label, so the fine structure stays visible even when the name doesn't name it.
Trust is not asked for: it is built with visible mechanisms. These are the ones at work in every reading.
| Mechanism | What it does | Where you see it |
|---|---|---|
| VERIFIER | Five deterministic rules validate every text against the persisted data. At most 1 re-prompt; if it fails, it degrades and says so — the rule is never softened. | In the fact that the text you read only claims what is anchored. |
| REMOVED | Claims the verifier took out are counted and declared. | A notice row above the metadata line, only if > 0. |
| DECLARED LIMITS | Each phase records its limits in writing BEFORE operating: proxies, thresholds, unknown rates. | In the WHAT CANNOT BE CLAIMED block. |
| STALE DATA | If the feed ages past the threshold, the terrain lowers its opacity and alerts are suspended. | STALE DATA · ALERTS SUSPENDED over the scene. |
| GAPS | Every intra-session capture gap is counted and shown; corpus integrity is verified on every startup. | Status bar: GAPS: NONE · and in the header series. |
| DUAL FORM | Every duration travels as time + cycles, computed by the system with the real cadence. | In every duration of every text. The two numbers always add up. |
Each phase's criteria are recorded before the evidence exists and are not relaxed afterwards; behavior changes are versioned and every record persists with the version that generated it. The code that could violate a rule directly does not exist. There is no need to trust that nobody breaks the rule: there is no rule to break, there is an impossibility.
In the drawer you will see a strip that reads PROBABILISTIC DIMENSION · UNAVAILABLE UNTIL CALIBRATION. It is not a half-built feature: it is a rule being kept in front of you.
A probability number without verified calibration is worse than no number at all: it is read as certainty and traded as certainty. That is why the rule was recorded before the evidence exists and will not be relaxed: the seat will be filled only when the model proves, on a sufficient corpus and against an honest baseline, that a "70%" really happens close to 7 times out of 10. Until then, no number from the prediction engine is citable or visible — and the system declares it on screen instead of hiding the gap.
The engine runs silently: it predicts, persists and compares itself against real outcomes, audited against temporal information leaks — so the model cannot see, even indirectly, anything after the instant it judges. That accumulated record is the exam. There is no promised date: there is a criterion, recorded before the evidence.
When the seat is filled, the doctrine will remain intact: a calibrated probability says how often an outcome happens in episodes like this one — it does not say what will happen in this one. The WHAT CANNOT BE CLAIMED block will keep closing every reading. Measurement, not prediction, remains the boundary.
On the phone, the Terrain reorganizes around the overhead heatmap — and a hard rule protects what matters.
The mobile view opens in overhead: the strike × time heatmap — the 2D projection of the same terrain data — with the regime banner, the metrics and the reading key on top, and the event feed peeking in at the bottom.
When you invoke an analysis, the drawer pushes the feed and the scrubber — never the heatmap. The map is the only thing that never gives up space, on any platform. The analysis exists to serve the scene, not to cover it.
Tapping a citation pans the overhead view to its coordinate — the answer is read on the map, not in the panel. ■ BACK restores the pan; × closes and brings back the feed and scrubber.
AA contrast verified per pair, touch targets ≥44 pt, text always legible. Legibility is not negotiated by screen size.
When the screen is small and time is short, the Panel is the fastest reading there is of the same data: one screen of text, no GPU.
Honest pricing for an honest product: you pay for measurement with memory, not for promises.
$29 /mo
$290/YR · 2 MONTHS FREE
$39 /mo
$390/YR · 2 MONTHS FREE
Card required. With no signals to sell, the trial is simple: use the instrument in your real sessions and decide whether the reading makes you a better reader of the market. If not, cancel before day 9 and you will have paid nothing.
A notice we prefer to repeat: NeuraGex is a positioning analysis tool. It is not financial advice, it does not issue investment recommendations and it guarantees no outcome whatsoever. Trading futures and options involves substantial risk of loss. The decision — and its risk — is always yours.
| GEX | Gamma Exposure: aggregate dealer gamma exposure by strike. Its sign and magnitude define how hedging reacts to the move. |
| ZERO GAMMA | The level where net exposure crosses zero. The boundary between positive and negative regime. |
| WALL | A strike with a dominant concentration of GEX. Ceiling or floor. It has a state, a strength and an age. |
| SNAPSHOT / CYCLE | One capture of positioning (~every 60 s). The header series counts captured / expected. |
| SPOT | The price of the underlying. In the Terrain, the cyan trace — the only use of cyan in the whole application. |
| 0DTE | Options that expire the same day. The bulk of the flow that moves intraday structure in SPX. |
| WINDOWS w5/w15/w30 | Lookbacks over the flow derivatives. Cumulative: the long one contains the short one. |
| MAX CHANGE | The strike with the largest GEX change in a window. It is a proxy: it reports the winner, not the whole board. |
| VOL/OI DIVERGENCE | Distance between the structure by volume and by open interest. Large asymmetries = short term under tension against the background. |
| PRECEDENT | A historical episode structurally similar to the visible moment, with its similarity and its outcome. |
| CORPUS | The empirical memory: complete sessions indexed as comparable vectors. Its integrity is verified on every startup. |
| RECORD | The persisted record of an analysis: verified text, citations, versions and metadata. Always auditable. |
| GAP | A capture gap inside a session. It is counted and shown; an intact session declares GAPS: NONE. |
| BEACON | A level transition alert (L1–L4). No repeats: it sounds when the event is issued, never twice. |
| DUAL FORM | Every duration as human time + cycles: "2 h 56 min (176 cycles)". Computed by the system, never estimated. |
| VERDICT BY AXIS | The Council's output: structural bias, near level and far level, always evaluated all at once. |
NEURAGEX · TERRAIN — neuragex.com · app.neuragex.com
MEASUREMENT, NOT PREDICTION. THE DECISION IS ALWAYS THE TRADER'S.