NinjaTrader 8 Suite
One installer, one authorization — Hermes options levels, order flow, structure levels, a standalone DOM trading window, a trade copier and prop-journal sync, all inside NinjaTrader 8. Installation, authorization, every component's usage and settings, and troubleshooting.
You shouldn't have to leave your execution platform to read GEX or order flow. The Hermes NinjaTrader suite brings the web terminal's options levels, order-flow analytics, structure levels and trade journal into NinjaTrader 8: read the levels on the chart, read the book and the tape on the DOM, place and copy orders in one click, and every closed trade lands in your web journal automatically.
One installer, one authorization. Every component is compiled into a single file — install once and everything is available; authorize once in the browser and all components share it.
What's in the suite
| Category | Components | In one line |
|---|---|---|
| Options levels | GEX · Levels & Distribution | Zero / Long / Short Gamma, Call · Put Walls and per-strike GEX drawn on your candles |
| Distribution panels | OI Level & Volume Level, GEX Level, Greek Level | Right-edge vertical distributions + Major lines, switchable 0 / 1 / 90DTE |
| Options-flow panes | Order Flow (DEX/GEX/CVR), Net Flow, Net Drift | Options money flow and dealer exposure over time |
| Order flow | Footprint, Volume Profile, Market Profile, Leg-to-Leg Profiles, MBO Depth Heatmap, Futures Toxicity, Delta Heatmap, Big Trades (3D), Liquidity Zones, Dominator / EAD, Control Panel | Trades, resting liquidity and aggressor imbalance |
| Structure | VWAP Pro, VRange, Pivot, Daily Market Info, Market Stats, Session Info, ETH RTH Session Split, Price Line | Opening range, IB, value areas, expected-move ranges, day-type statistics |
| Execution | Hermes DOM (standalone window), SuperDOM columns, Chart Link | Custom-drawn ladder + order-flow columns + drag-to-modify orders on charts |
| Accounts | Hermes Trade Copier, Prop Sync | Multi-account copying; closed trades and market context synced to the web prop journal |
Installation
Download
Get the NinjaTrader 8 package from the plugins page (Chinese-UI and English-UI packages have identical contents) and unzip it.
Fully exit NinjaTrader 8
Including the tray icon — files are locked while NinjaTrader is running and the install will fail.
Double-click install.bat
It copies Hermes.NinjaTrader.dll into Documents\NinjaTrader 8\bin\Custom\.
If you previously installed Hermes from .cs source files, the installer moves them to Documents\NinjaTrader 8\hermes\source-backup\ (nothing is deleted) so they don't clash with the new build.
If it fails, right-click install.bat → Run as administrator.
Start NinjaTrader 8
If the installer reported moving old source files: Control Center → New → NinjaScript Editor → press F5 once; an empty Errors tab means you're done.
Where to find each component:
| Component | Location |
|---|---|
| Chart indicators | Chart → right-click Indicators → search HermesGEX |
| Hermes DOM, Hermes Trade Copier, Prop Sync | Control Center → New menu |
| SuperDOM columns | SuperDOM → right-click Columns → search Hermes |
Updating: download the new package, exit NinjaTrader and run install.bat again — your settings are kept. If components fail to load after a major NinjaTrader upgrade, download the package that matches the new version.
Authorization and plans
- The first time you add any Hermes component (or open the DOM / Copier / Prop Sync), a browser authorization page opens with the code prefilled.
- Sign in to HermesGEX → click Authorize → back in NinjaTrader the status line turns to "Connected".
- Every component shares this one authorization, and NinjaTrader can run alongside Hermes plugins on other platforms on the same machine.
- The token lives in memory only, never on disk. It's discarded when NinjaTrader closes; approve once more on the next start. Recompiling with F5 during development does not ask again.
- One subscription, one trading machine. Authorizing on another computer signs the previous one out, and the status line tells you so.
- Plans: components that use options data (GEX levels, options-flow panes, options levels on the DOM…) need a paid subscription; Net Flow / Net Drift are Ultra-only; Chart Link needs no authorization. See pricing for what each plan includes.
Data requirements
| Needs | Components |
|---|---|
| Subscription only | GEX levels, VRange, Pivot, Order Flow / Net Flow / Net Drift |
| Real-time trades | Footprint, Volume Profile, Toxicity, Delta Heatmap, Big Trades, Dominator, DOM window |
| Level 2 depth | MBO Depth Heatmap, Liquidity Zones, DOM bid/ask / pull-stack / MBO, SuperDOM columns |
| Tick Replay (for history) | Footprint, Delta Heatmap, Dominator, Big Trades, Market Stats value areas |
Enable Tick Replay in the chart's Data Series settings. Without it the tools still work, accumulating from the moment they load; Delta Heatmap, Toxicity and Market Stats estimate history from bars and label it "estimated".
Suggested starting layout: three charts
Intraday options-level trading: a 1–5 minute chart with GEX · Levels & Distribution + Daily Market Info + VWAP Pro + Chart Link. Use the Gamma Flip for bias, Call / Put Walls as targets and stop references, and the opening range plus VWAP for rhythm.
Order-flow confirmation: a second chart of the same instrument with Footprint + Volume Profile + Futures Toxicity + Control Panel. When price reaches a wall, footprint imbalance and toxicity extremes tell you break vs. rejection.
Execution: Control Center → New → Hermes DOM. Turn on the Levels column (options levels and chart structure levels sync in automatically), read the impact in the momentum-tail column, and click to trade.
Options levels: GEX · Levels & Distribution
Real-time GEX levels and per-strike distribution on your candles. Futures (ES / NQ / RTY / YM / GC / CL…) are converted to the contract's own price scale automatically.
- Levels: Zero Gamma (Gamma Flip), Long / Short Gamma (incl. 0DTE), Call / Put Walls (volume and open-interest basis), HVL, Call / Put Transition, secondary walls C2–6 / P2–6. By default each level runs from the last bar to the price axis with a label box; nearby labels are staggered.
- Distribution slots: up to 4 floating slots, each with its own source (volume GEX / OI GEX / Gamma / Delta / Vanna / Charm), direction (one-sided / centered), bar style, and a "⇔" handle to drag it anywhere.
- Expiry switch: "Distribution / wall expiry" in
2 · Displaypicks 0DTE / 1DTE / 90DTE for both the distribution and the walls; when the chosen expiry has no data it falls back to 0DTE and the status line shows "DTE?". - Gamma heat bands: soft bands along +Γ / 0Γ / −Γ that breathe with strength; today's history is backfilled on load.
- Stats and GEX-change panels: net GEX, OI walls, 25Δ risk reversal; a per-minute log of build-ups / unwinds and level moves.
- Language: Chinese UI on Chinese Windows, English everywhere else; set the environment variable
HERMES_LANG=enorzhto force it.
Key settings: in 1 · Connection leave "Ticker override" blank for automatic mapping; polling interval 3–120 s; manual scale factor 0 = automatic. 2 · Display toggles each level family; 9 · Distribution slots configures the slots.
Gold / crude / Dow use the matching ETF's options and are rescaled to the live futures price. The Dow tracks tightest, gold is good with slow drift, crude has large tracking error — use it for direction and relative location only. A "· ×10.8"-style tag in the status line means conversion is active.
Three distribution panels (OI & Volume / GEX / Greek Level)
Vertical strips on the right edge of the price panel, sharing the price axis and moving with pan and zoom; several panels on one chart stack right to left automatically. They share the GEX indicator's data, so they add no extra requests.
| Panel | Draws |
|---|---|
| HermesGEX · OI Level & Volume Level | Open-interest or volume distribution ("Show OI / Volume" in 2 · Profile, one at a time) + Major Call / Put lines |
| HermesGEX · GEX Level | Volume GEX distribution + Major ±GEX lines |
| HermesGEX · Greek Level | Gamma distribution + Major ±Γ lines |
- Expiry: 0DTE / 1DTE / 90DTE; when the chosen expiry has no data the panel shows 0DTE and says so in its header.
- Profile style: left-aligned / right-aligned / mirrored; panel width, opacity and bar colors are adjustable.
- Major lines: lines and labels toggle separately; lines run from the last bar to the chart's left edge, labels sit on the price chart.
- Hover tooltip: hover a bar to see that strike's value and distance from price; the panel draws its own last-price line and a HermesGEX brand bar.
Options-flow panes
| Component | What it shows |
|---|---|
| Order Flow (DEX/GEX/CVR) | Bar-by-bar dealer delta / gamma exposure and volume ratio. Add one instance each for DEX, GEX and CVR |
| Net Flow (Ultra) | Call vs. put premium flow per bar, with an optional net line |
| Net Drift (Ultra) | Cumulative call − put flow for the day as a zero-line area — the day's money direction at a glance |
Order flow
| Component | What it does |
|---|---|
| Footprint | Each bar split by price into sell × buy aggressor columns, diagonal imbalance shading, per-bar delta / POC. Widen bar spacing if numbers are hidden |
| Volume Profile | Right-axis profile: session / multi-day composite / anchored, ETH / RTH buckets, POC and value area |
| Market Profile | TPO letters (30 min default), POC / value area / single-print highlight, multi-day |
| Leg-to-Leg Profiles | A volume + delta profile for every ZigZag leg — who drove each push |
| MBO Depth Heatmap | Resting liquidity rendered as a scrolling time × price heat field, with large-trade bubbles, reload icebergs and BBO lines (Level 2, live only) |
| Futures Toxicity | Sub-pane imbalance histogram + rolling toxicity HUD; a "breakout risk ↑ / ↓" badge when price hugs a wall with extreme toxicity in the break direction |
| Delta Heatmap | Candles colored by delta, with extreme / flip / exhaustion / auction detection |
| Big Trades (3D) | 3D bubbles for large prints, sized by volume, colored by aggressor; optional sound alerts (separate buy / sell / huge sounds, live only) |
| Liquidity Zones | Prices that absorbed far more than they displayed, reloaded and held → support / resistance zones (green bid / red ask), restored on reload |
| Dominator / EAD | Arrows when speed × average size × imbalance all exceed thresholds; E = exhaustion, A = absorption; solid + ★ near options levels. Evaluated once per bar close — never repaints |
| Control Panel | Floating panel in the chart's top-left: toggle heatmap / footprint / VP / MP and tune their key parameters in one place (shared across charts) |
Structure
| Component | What it does |
|---|---|
| VWAP Pro | Session / RTH / weekly / monthly VWAP with ±1/2/3σ; prior-period extension; rolling VWAP; anchored VWAP (manual / swing / last Gamma Flip cross); direction table |
| VRange | Expected-move range anchored at the Globex / RTH open (open × IV ÷ √252), two IV sources side by side, confluence with options levels |
| Pivot | Weighted pivot of prior-day RTH volume POC and the opening Gamma Flip; above = bullish, below = bearish; targets = prior VAH / VAL and walls; panel shows historical touch / hold rates |
| Daily Market Info | Auto-aligned to New York time: opening range (15 min default), IB (60 min) with 1x–4x extensions, prior RTH / overnight value areas, structure × options-level confluence |
| Market Stats | Three tiers of statistical levels + dashboard; daily structure and MGI (day type, open type, excess / poor highs-lows / single prints / failed auctions / gaps, DGPs) synced to the web trading calendar |
| Session Info | Daily / weekly / monthly OHLC + VWAP + opening range + IB |
| ETH RTH Session Split | Session shading, open / close lines, labels, overnight high / low |
| Price Line | Last-price line, full width or last bar to axis |
Hermes DOM: standalone trading window
Control Center → New → Hermes DOM. Independent of SuperDOM — ladder, order-flow columns and order entry are all custom-drawn, and the window width snaps to the columns.
Top controls (two rows)
- Row 1: instrument · cross-contract · account · ⚙ settings · position and status.
- Row 2: quantity · TIF · ATM template · OCO · center · auto-center · reset | Buy Mkt · Sell Mkt · Reverse · Flatten · Cancel All.
Order entry
| Action | Result |
|---|---|
| Left-click bid column | Buy: limit at or below the ask, stop above it |
| Left-click ask column | Sell: limit at or above the bid, stop below it |
| Drag your working order | Modify price; click in place = add another order at that price |
| Right-click your order | Cancel |
| Click price column / middle mouse | Recenter |
| Reverse | Flatten first (cancelling ATM brackets and working orders), then open the opposite side at market with the same size once flat |
- ATM strategies: pick a NinjaTrader ATM template and every entry gets its stop / target brackets, shown on the ladder and draggable; remembered per instrument.
- OCO: while checked, the next limit / stop orders share one OCO group.
- Cross-contract trading: click "Cross" and pick the routing contract, e.g. read the NQ book and trade MNQ. Orders, position and P&L follow the routing contract; book and order-flow data stay on the instrument you're reading.
- Numpad trading: enable in settings (NumLock on); bind each key to market / joined limit / stop / flatten / cancel / quantity ±1 / center.
- Duplicate protection: an identical order is sent at most once within 700 ms.
- Confirm orders: optional confirmation before every order.
Columns (drag headers to reorder, drag edges to resize, right-click a header for settings)
| Column | What it shows |
|---|---|
| Bid pull / Ask pull | Net resting-size change per price over the last N seconds (10 default), fills excluded; bid add green, bid pull orange, ask add red, ask pull blue |
| Recent buy / sell | Recent aggressor volume, brighter = newer; a faded cumulative trail shows prices that were hit repeatedly |
| Bid / Ask | Size bars with four thickness tiers; MBO queues (true per-order queues when your data feed provides an order-level book, otherwise estimated from size changes and labelled "≈MBO"), large orders highlighted |
| Price | Last price as a gold dashed line across the ladder |
| Momentum tail | Time × price: trade path and bubbles (adjacent prints merged, ≥15-print bursts get a gold dashed ring), sweep rings, over a liquidity heat background (filter by minimum size / relative threshold to keep only the big walls) |
| P&L | With a position, the P&L of exiting at each price (ticks or currency) |
| Volume / Delta | Session (RTH / ETH / full day) volume profile and delta, with historical ticks backfilled on open |
| Levels | Options levels (CW / PW / Flip / MP / LΓ / SΓ / 0DTE Γ / OI walls / VRange / Pivot), structure levels from charts of the same instrument (ONH, VAH, OR±1x…) and your hand-drawn lines / rectangles / text, plus per-strike gamma bars; the nearest off-screen levels are hinted on the first and last rows |
Two independent Time & Sales panes sit on the right (each with its own minimum size), sweeps marked » in gold. Colors, parameters and column order are saved per instrument — ES and NQ keep separate setups.
SuperDOM columns
Prefer NinjaTrader's own SuperDOM? Right-click Columns and add:
| Column | What it does |
|---|---|
| Hermes Pull/Stack | Resting-size adds / pulls per price; big changes near options levels highlight the row in gold |
| Hermes Recent | Recent aggressive buys / sells, brighter = newer |
| Hermes Tape | Scrolling time & sales; add two instances for two tapes |
| Hermes Delta Profile | Net aggressor volume per price |
| Hermes Volume Profile | Session volume split buy / sell, POC outlined |
| Hermes GEX | Options levels labelled on their rows |
Click a column header to reset it. SuperDOM columns accumulate in real time only — load them before the open to cover the whole session.
Chart Link: orders on the chart
Add HermesGEX · Chart Link to a chart (no authorization needed): working orders become draggable price pills — drag to modify, × to cancel — including orders on sibling contracts (ES ↔ MES, NQ ↔ MNQ); font, size, distance from the axis and background opacity are adjustable. Hand-drawn levels on charts are also mirrored into the Hermes DOM levels column.
Hermes Trade Copier
Control Center → New → Hermes Trade Copier. One leader drives many followers: fills are copied immediately, with periodic position reconciliation as a safety net.
Pick the leader, add followers
Each follower has its own ratio (e.g. 0.5 / 2), max size, contract mapping, daily target / loss limit, ATM and drift handling.
Map contracts (optional)
ES=MES;NQ=MNQ scales by contract multiplier (ES → MES = ×10, then the ratio); ES=MES:5 sets an explicit multiple; blank = same contract.
Start
Only simulation accounts (Sim / Playback) are allowed by default; live accounts require "Allow live accounts" plus a second confirmation. Positions the leader already holds at start are ignored unless you tick "Sync existing positions on start".
- Mirror working orders (on by default): the leader's limit / stop / stop-limit orders are placed on followers at the same price with scaled size, OCO kept, and price / size changes and cancels are synced — stops and targets you place by hand, and ATM brackets, all appear on the followers. When such an order fills, followers wait for their own copy instead of sending a market order; if a copy hasn't filled within "Mirror grace" (1500 ms default) after the leader's fill, the rest is cancelled and filled at market. Followers with an ATM template are not mirrored. Disarming cancels only entry-side mirrors and keeps protective stops / targets.
- Summary and per-row status: the top line shows leader balance, account / enabled counts, position mismatches, total follower working orders, and summed realized / unrealized P&L of enabled followers; each row shows its working orders, realized and unrealized P&L separately, and a "Flatten" button (while armed the account is locked until you unlock it). "Flatten all" disarms, then flattens every enabled follower and cancels its orders.
- Reconciliation: every cycle (1.5 s default) positions are checked; only after two consecutive mismatches does the follower's drift policy run — ignore / alert / auto-align / flatten and lock.
- ATM copying: entries and adds use the ATM template; partial exits by the leader are not copied (the ATM manages exits); leader flat → follower flattens; reversal → flatten, then re-enter.
- Risk: daily target / loss limit flattens and locks until the next New York day; max size; outside the session window positions can only shrink; per-minute order cap; lock after repeated rejections.
- Local risk controls (Risk tab + "Risk settings…"): pick a prop template by firm / type / size, "Load template into fields", review every value, then "Apply to N accounts". The template is only a starting point, and an optional daily loss limit is applied only when you tick it. Set an absolute equity floor, a trailing drawdown (intraday or end-of-day high-water, trail distance, stop level, and an editable observed high-water), a buffer, and consistency (best day, total profit, percentage — advisory, or flatten and lock for the day at the cap). Equity ≤ floor + buffer flattens and locks the account; the lock survives an NT restart and can only be reset while disarmed, with confirmation. High-water only rises and the baseline is never auto-reset. Everything is computed locally — the prop firm's dashboard is authoritative.
- Alias / group: give each account an alias and a group (e.g. Lucid-50K); the search box matches account name, alias and group.
- Bulk actions: filter → select all → set parameters or enable / disable / unlock / flatten in one go.
- Log: submit and fill latency for every copied order, reconciliation and risk events; export to CSV.
- Copier groups are synced to the "Platform accounts" panel of the web prop journal.
Check that your broker or prop-firm rules allow multi-account copying before you use it.
Prop Sync: trades straight into your journal
Control Center → New → Hermēs · Prop 同步 (Prop Sync; reuses the authorization if any Hermes indicator is already loaded).
- Create an account in the web prop journal with the account number set to the NinjaTrader account name — or wait for the platform accounts to report in and link / create directly from "Platform accounts".
- Trade normally: each time an instrument returns to flat a trade is recorded (side, size, average entry / exit, gross P&L, commission) and uploaded within 15 seconds.
- Every 5 minutes the cash balance is attached so the web shows the platform balance and the difference for reconciliation.
- Nothing lost offline: trades are queued locally first; trades for accounts not yet created are kept for 7 days and uploaded once the account exists; the server de-duplicates.
- Multiple machines merge: platform accounts and copier groups from all your computers appear under one web account.
- Market context on the calendar: with
Market Statson a chart ("Sync to trading calendar" is on by default), each day's structure and MGI appear on the calendar; click a day for the detail and that day's trades, and see monthly P&L by day type. - Commission comes from NinjaTrader's fills (set a commission template in NinjaTrader, otherwise it is 0). Missing trades can be imported from CSV on the web.
FAQ and troubleshooting
Hermes doesn't appear in the indicator list
Check that Documents\NinjaTrader 8\bin\Custom\Hermes.NinjaTrader.dll exists and that NinjaTrader was fully closed during install; restart and search HermesGEX.
Compile error about duplicate definitions
Old source files and the new package are both present. Run install.bat again (it moves old sources aside), then press F5 in the NinjaScript Editor.
Status says signed out by another device The subscription was authorized on another computer. Re-add an indicator here to authorize again (which signs the other one out).
Status says "Stale data" The data is more than 5 minutes old — usually market closed or weekend. The last valid trading day is shown and it resumes at the open.
Walls are offset from the web by a constant Usually futures-to-index basis drift. Check the contract month; if needed set a manual scale factor in the indicator.
Footprint / delta only show data since loading Enable Tick Replay in the chart's Data Series and reload.
DOM bid / ask, pull-stack or heatmap is empty Your connection has no Level 2 depth, or depth isn't subscribed for that contract.
Wrong UI language
The UI follows the Windows display language; set the environment variable HERMES_LANG=en or zh and restart NinjaTrader to force it.
Still stuck? Email support@hermesgex.com with your NinjaTrader version and a screenshot of the status line.
Next steps
Frequently asked questions
What does the NinjaTrader suite include?
One installer ships 30+ components — GEX levels and distribution, order-flow indicators (footprint, volume profile, TPO, depth heatmap and more), structure levels (VWAP Pro, VRange, Pivot, Market Stats…), options-flow sub-panes, the standalone Hermes DOM trading window, SuperDOM custom columns, a multi-account trade copier, and a sync add-on that pushes your trades into the web prop journal.
How do I install it? Do I need to compile?
Fully exit NinjaTrader 8, unzip the package, double-click install.bat and start NinjaTrader. The package is a single precompiled DLL, so normally there is nothing to compile; press F5 once in the NinjaScript Editor only if the installer says it moved old source files.
Does every component need its own authorization?
No. The first time you add any component a browser authorization page opens; sign in and approve once and every component shares it. After a NinjaTrader restart you approve once more.
What market data do the order-flow tools need?
Real-time data. The depth heatmap, Liquidity Zones and the DOM's pull/stack and MBO need Level 2 depth; footprint, delta and similar tools need Tick Replay on the data series to show history. GEX levels only need an active subscription, not Level 2.
Can the copier work across accounts and contracts?
Yes. One leader can drive many followers with ratios, contract mapping (ES to MES is scaled by the multiplier automatically), ATM brackets, daily target / loss limits and session windows. By default it only copies to simulation accounts.
Desktop Plugins
Draw GEX levels and per-strike distribution inside the terminal you already trade in — NinjaTrader 8, Sierra Chart, MotiveWave, Bookmap, ATAS and MetaTrader 5 — with one browser authorization, per-machine binding and tokens that are never written to disk.
ATAS Suite
One DLL, one authorization — Hermes GEX levels and distribution, standalone distribution panels, the Gamma Γ heatmap pane, options order flow, futures toxicity, delta / volume heatmaps and Market Stats projection inside ATAS. Covers version choice, installation, authorization, per-indicator usage and settings, troubleshooting, and a feature comparison with the NinjaTrader suite.
Hermēs Documentation