DeepWatch is a real-time order flow tool for NinjaTrader 8. It shows you what is happening at every price level: who is buying, who is selling, where liquidity sits, and where it moves.
If you are new to order flow trading, start with the first three sections in order. If you already know the concepts and just want a reference, jump straight to the topic you need.
Overview
What DeepWatch shows
A standard chart shows you price. DeepWatch shows you the order book behind the price: how much size sits at each level, how that size changes over time, where trades actually print, and which side is being aggressive.
Every column of pixels you see is a one-moment-in-time snapshot of the order book. Read left to right and you are watching the book evolve. Read top to bottom and you are looking at a single point in time, price by price.
On top of that snapshot grid, DeepWatch overlays:
- Executed trades as bubbles, bars, pies, or other markers, sized by volume
- Volume Profile showing where volume accumulated by price
- Footprint showing buy-side and sell-side volume at each price for each bar
- Trading Band highlighting your current orders and position
- Live Depth strip showing the current resting book
- Signals for imbalances, absorption, sweeps, divergences, and large trades
- Sub-panels below the main chart for CVD, book imbalance, volume rate, and more
Who it is for
- Scalpers and short-term traders working ES, NQ, CL, GC, or any futures contract with active depth
- Tape readers who want a visual representation of resting size and absorption rather than scrolling text
- Order flow traders who use Volume Profile, footprint, and CVD as part of their decision making
- Traders learning order flow who want a single tool that puts all the pieces in one window
You do not need to be an expert in order flow to use DeepWatch. The defaults are configured to be readable on day one. As you get comfortable, you can turn on more layers.
What you need
- NinjaTrader 8
- A real-time data subscription that includes market depth (Level 2)
- A futures instrument is recommended. Stocks and forex work but were not the primary design target
How DeepWatch fits into your workflow
DeepWatch is a separate window. It is not a chart indicator and it does not replace your usual chart. Most traders run it alongside their main NinjaTrader chart, on a second monitor or a dedicated screen region.
You can run multiple DeepWatch windows at the same time, one per instrument.
Quick Start
This page walks you through your first DeepWatch session: open the window, pick an instrument, and start reading the heatmap.
Open DeepWatch
From the NinjaTrader Control Center:
- Click the New menu
- Click DeepWatch
A new DeepWatch window opens. The first time you launch it, a license check runs in the background. On future launches the window opens immediately.
Pick an instrument
In the top-left of the DeepWatch window, click the instrument selector and pick a futures contract. ES, NQ, CL, and GC are good starting choices because they have deep, active books that show off the tool well.
DeepWatch subscribes to:
- Market data (last trade, bid, ask)
- Market depth (Level 2 order book)
- Historical bars to backfill the chart so you do not start with a blank screen
Wait for live data
The heatmap is built one column at a time, every 50 milliseconds. After a few seconds you will start to see the resting book light up in color across the chart. Trades begin printing as bubbles or other markers.
- Confirm your data feed includes Level 2 / market depth
- Confirm the market is open for that instrument
- Try a more active instrument (ES, NQ)
Read the chart
The defaults you see first:
- X-axis: time, newest data on the right
- Y-axis: price, with the current price line in the middle
- Heatmap colors: brighter colors mean larger resting orders at that price
- Trade bubbles: circles printed at the price where each trade executed, sized by volume
- Right side: a sidebar showing the Volume Profile for the session
A vertical crosshair follows your mouse. The chip in the top-right corner shows price, time, bid, ask, CVD, volume, book size, and trade count for the column under your cursor.
Try the essentials
- Press R to reset the view
- Press S to open the Settings window
- Press ? to see the in-app keyboard help
- Scroll wheel to zoom in and out
- Right-click drag to draw a zoom rectangle on a specific area
- Middle-click drag (or left-drag in empty area) to pan
Save your layout
DeepWatch is workspace-aware. When you save your NinjaTrader workspace, your DeepWatch window, its instrument, and all its settings are saved with it. Open the workspace again later and the window comes back exactly as you left it.
You can also save your visual setup as a reusable template - see Themes & Templates.
Where to go next
- Learn the core vocabulary in Core Concepts
- See what every button does in Toolbar Reference
- Learn to read the heatmap in The Heatmap
- Add a Volume Profile or Footprint column in Data Columns
Core Concepts
The vocabulary you will see throughout DeepWatch. None of these terms are DeepWatch-specific - they are the standard concepts of order flow trading. If you are already comfortable with order flow, skim this section for the DeepWatch-specific bits (sampling modes, bucketing).
The order book
At any moment, the market for an instrument has two sides:
- Bid: prices and quantities people are willing to buy at
- Ask (or Offer): prices and quantities people are willing to sell at
The highest bid is the best bid. The lowest ask is the best ask. The gap between them is the spread. The full ladder of bid and ask sizes at each price is the order book, or Depth of Market (DOM).
DeepWatch shows this book as a horizontal stripe of color at each moment in time, then stacks those stripes left-to-right to show how the book is evolving.
Trades versus depth
The order book is passive liquidity - resting orders waiting to be filled. A trade happens when someone crosses the spread and consumes that liquidity.
- A trade that prints at the ask means an aggressive buyer took offered liquidity. We call this a buy trade.
- A trade that prints at the bid means an aggressive seller hit a resting bid. We call this a sell trade.
Delta and CVD
For any time period, you can count:
- Buy volume (sum of all trades that printed at the ask)
- Sell volume (sum of all trades that printed at the bid)
- Delta = buy volume minus sell volume
Positive delta means aggressive buyers dominated. Negative delta means aggressive sellers did.
Cumulative Volume Delta (CVD) is the running sum of delta over the session. CVD lets you see whether buyers or sellers are winning over a longer window, not just a single bar.
Value Area and POC
When you accumulate volume over a session and split it by price, you get a Volume Profile. Inside that profile:
- POC (Point of Control): the single price with the highest volume
- Value Area: the price range that contains 70% of the session volume (the default; you can change this)
- VAH / VAL: the high and low boundaries of the Value Area
Price tends to revisit the POC and the Value Area edges. They are heavily used reference levels.
Footprint
A footprint chart is a bar chart where each bar is split price-by-price, showing the buy volume and sell volume at every price level inside that bar. It tells you exactly where inside the bar the aggression happened.
Imbalance and absorption
Two of the most important order flow patterns DeepWatch will mark for you.
At a given price, one side has much larger trade volume than the other. If buyers traded 200 contracts at price X and sellers only traded 50, that is a buying imbalance. Three or more stacked imbalances in the same direction is a strong signal.
A large amount of aggressive volume hits a resting order, but the price does not move. Someone is absorbing the aggression with passive liquidity. Often a sign of a reversal.
DeepWatch detects both automatically and marks them with colored borders and arrows. See Signals.
Sampling modes
DeepWatch supports several sampling modes that change what each column on the chart represents:
| Mode | What each column represents |
|---|---|
| TimeAllChanges default | A new column every fixed time interval, capturing every book change. Smooth and continuous. |
| TradeOnly | A new column only when a trade prints. Compresses dead time. |
| PriceRun | A new column starts each time the trade price changes. Great for very active markets where price moves drive the action. |
You can switch sampling mode from the toolbar Sampling button. The display redraws using your historical data, so switching does not lose context.
Bucketing
When the tick size of an instrument is very small (think ZN, ZB), looking at every single tick can be too noisy. DeepWatch lets you bucket prices together - 2 ticks, 4 ticks, 8 ticks per row.
Bucketing is price-stable: a given price always lands in the same bucket regardless of zoom level. Two DeepWatch windows at different bucket sizes will agree on where the POC is.
Bucketing applies consistently to all columns (Volume Profile, Footprint, Trading Band, Live Depth), so what you see in one column always lines up with the others.
Sessions and timeframes
A session is the trading day for that instrument (the times defined in your NinjaTrader Trading Hours template). Most DeepWatch views default to Session scope, which means everything you see is summed from the open of the current trading session.
For Volume Profile and Footprint, you can change scope to other timeframes (e.g. last hour, today, yesterday). See Data Columns.
Toolbar Reference
The DeepWatch toolbar sits at the top of the window. It is organized as a ribbon with labeled groups: VIEW · LAYERS · LINES · SIGNALS · INDICATORS · TRADING · SYSTEM.
Buttons that toggle something show a different state when active.
VIEW
| Button | What it does |
|---|---|
| Reset | Reset the view to fit all data on screen. Same as pressing R. |
LAYERS
Visual layers on the main chart.
| Button | What it does |
|---|---|
| Trades | Toggle the trade markers (bubbles, pies, etc.). Hotkey T. |
| Profile | Add a Volume Profile column. See Data Columns. |
| FP | Add a Footprint column. See Data Columns. |
| LD | Add a Live Depth column. See Data Columns. |
LINES
Horizontal reference lines drawn over the chart.
| Button | What it does |
|---|---|
| Last | Toggle the last-traded-price line. Hotkey L. |
| Bid/Ask | Toggle the current best bid and best ask lines. Hotkey B. |
SIGNALS
Order flow signal detectors.
| Button | What it does |
|---|---|
| Div | Toggle Price / CVD divergence markers. Hotkey D. See Signals. |
| Swp | Toggle Sweep / Stop-Hunt markers. Hotkey W. See Signals. |
| Strip | Toggle signal display location: OFF = overlaid on heatmap; ON = bottom strip. Hotkey G. |
INDICATORS
Sub-panels that share the X-axis with the main heatmap. Toggle them on or off.
| Button | What it does |
|---|---|
| CVD | Cumulative Volume Delta panel. Hotkey C. |
| Imb | Book Imbalance panel. Hotkey I. |
| Rate | Volume Rate panel. Hotkey U. |
| Avg | Average Trade Size panel. Hotkey A. |
| Abs | Absorption panel. Hotkey O. |
| ZΔ | Delta Z-score panel. Hotkey Z. |
| Split | Volume Split panel (up volume vs down volume histogram). |
| Activity | Open the Market Activity Log popup (modeless feed of signals, sweeps, big trades). |
TRADING
Live order placement and visualization.
| Button | What it does |
|---|---|
| TB | Add a Trading Band column for visualizing your orders and position. See Data Columns. |
| Trade | Toggle the trading panel docked inside the window. |
| Buy | Drag this button onto the chart to place a BUY limit order at that price. |
| Sell | Drag this button onto the chart to place a SELL limit order at that price. |
SYSTEM
Settings, presets, sampling, and visual style.
| Button | What it does |
|---|---|
| Presets | Open the Presets popup. Pick a built-in chart profile or one of your saved templates. See Themes & Templates. |
| Settings | Open the full Settings window. Hotkey S. |
| Sampling | Pick a sampling mode: TimeAllChanges, TradeOnly, or PriceRun. See Sampling modes. |
| Trade style | Pick how trades are drawn (Bubbles, Bolts, Bars, Diamonds, Streaks, Pies). Also lets you resize markers and toggle labels. |
| Axis | Switch the price axis side (left or right). |
| Help | Open the in-app keyboard help overlay. Same as pressing ?. |
Themes & Templates
DeepWatch has two separate concepts for personalizing your view:
- Theme - the color palette of the window chrome (toolbar, menus, axes, background)
- UI Style - the visual treatment of buttons and panels (flat, classic, terminal, etc.)
- Template - a saved full configuration (theme, layout, columns, settings) you can re-apply
You change them all from the Settings window (S) or from the Presets popup in the toolbar.
Themes
DeepWatch ships with four themes. They are all dark and tuned for long sessions in front of the screen.
Deep black background, neutral accents. Best for screens with high brightness or HDR monitors.
Cool slate background, blue-leaning accents. Lower contrast than Obsidian.
Navy background with bright cyan accents. Punchier, terminal-style feel.
Warm dark background, orange and red accents. Reduces blue-light exposure during long sessions.
Themes change the toolbar, menus, axes, gridlines, and panel chrome. They do not change the heatmap color palette (that is the Color Mode, see The Heatmap).
UI Styles
UI Styles change the look of buttons, toggles, and panels. They are independent of theme.
| UI Style | Feel |
|---|---|
| Minimal default | Flat buttons, subtle borders, plenty of whitespace. |
| Office365 | Lightly raised buttons with rounded corners, more affordance. |
| Terminal | Sharp corners, monospaced labels, dense layout. Power user feel. |
| Aurora | Glowing accent borders on active controls, slightly playful. |
Presets
Presets are built-in templates that pair a theme, a UI style, a color palette, and a layout in one click. They give you a fast way to try different looks without configuring everything individually.
The Presets popup is accessed from the toolbar Presets button. It is split into two sections:
- System Presets - curated by FlowMatriX, cannot be deleted or renamed
- My Templates - your own saved configurations
The active template is marked with a checkmark.
Templates (your own)
A template captures everything:
- Theme and UI style
- Color mode and gamma
- Which columns are added (VP, FP, TB, LD) and their settings
- Which sub-panels are visible (CVD, Imbalance, etc.)
- Visual toggles (trade markers, lines, signal strip)
- Trade style and bucketing
- Annotations are not part of templates (they are per-window state)
Save a template
- Configure the window the way you want
- Open Settings (S)
- Find the Templates section
- Click Save as..., enter a name
Apply a template
Two ways:
- Open the Presets popup from the toolbar, click your template under "My Templates"
- Open Settings (S), find the Templates section, click the template name
Rename or delete a template
In Settings, right-click a template in the list to rename or delete it.
Auto-save
DeepWatch auto-saves your current settings to a fallback template on a timer so you do not lose work after a crash. The next time you launch, your previous state is restored unless a workspace template overrides it.
Workspace vs Template
A NinjaTrader concept. Saves the entire layout of every window. When you save your workspace, your DeepWatch state is saved along with it. Use for: "this is my full trading layout for today".
A DeepWatch concept. Saves only DeepWatch settings, separate from any window position or instrument, and you can apply it to any DeepWatch window. Use for: "this is my ES heatmap configuration to apply to a new window".
The Heatmap
The heatmap is the central feature of DeepWatch. This section explains what each color means, how to control the palette, and how to adjust contrast for your eyes and your market.
What the colors mean
Every column on the chart is one snapshot of the order book. Inside that column, each row corresponds to one price level. The color of that cell tells you something about the resting order at that price.
What "something" means depends on the Color Mode you have selected. There are four modes.
Color modes
Depth default
The cell color encodes the size of the resting order at that price. More size = brighter / hotter color. Empty levels are black.
Use Depth when you want to spot liquidity walls - rows of bright color where someone is sitting on big size.
Side
The cell color encodes which side is dominating at that price. Bid-side dominance is one color, ask-side dominance is another. Typical convention: green for bid, red for ask.
Use Side when you want to see where the book is leaning at a glance. Useful for spotting iceberg behavior and one-sided pulls.
Delta
The cell color encodes the change in resting size since the last snapshot. Green means liquidity was added, red means it was pulled. Static levels appear neutral.
Use Delta when you want to see who is moving liquidity in real time. Critical for spotting refill patterns, spoofing, and last-second pulls into price.
Custom
A two-color gradient between two colors of your choice. Useful if you have a specific visual identity you prefer, or if you are colorblind and the built-in palettes do not work for you.
You switch color mode from the Settings window (S) under the Heatmap section.
Palettes
In Depth mode, the brightness mapping uses one of three palettes:
| Palette | Description |
|---|---|
| Inferno default | Black to purple to red to orange to cream. High contrast, easy to spot outliers. |
| Jet | Classic rainbow: blue to green to yellow to red. High-contrast hues, familiar look. Not colorblind-safe. |
| Sequential | Viridis-like: dark purple to green to yellow. Colorblind-safe. Easier on the eyes for long sessions. |
The same palettes are used for auto-generated thresholds when you click Auto-thresholds in the Settings window.
Contrast: gamma
The relationship between order size and brightness is not linear. A few enormous orders would otherwise wash everything else out. DeepWatch applies a gamma correction so smaller orders are still visible.
- Heatmap too dim? Lower gamma (more contrast, smaller orders brighter).
- Big orders overwhelming the screen? Raise gamma (less contrast).
The gamma slider is in the Settings window. The current gamma value is shown in the bottom-right info chip on the chart (look for γ). If you do not see the info chip, press H to toggle it.
Auto-thresholds
Manually picking color thresholds is fiddly. The Auto-thresholds button samples your recent data, computes sensible quantile-based breakpoints, and rounds them to readable numbers. It works well on instruments you have never tuned before.
Re-run auto-thresholds whenever you switch instruments or whenever volatility changes significantly during the session.
Trade-only mode
If you only care about price points where trades actually printed, you can switch the heatmap to Trade-only mode in Settings. Levels with no recent trade activity are dimmed or hidden. This makes the chart less busy on quiet markets.
By default Trade-only mode is on. Turn it off if you want to see all resting liquidity, even at levels where no trade has happened recently.
Bucketing
For instruments with tight tick sizes, you can group multiple ticks into one row. See Bucketing in Core Concepts. The Settings window has a "Bucket size" or "Aggregation" slider.
Visible levels per side
In OrderBook mode (default), the chart limits how many levels above and below the best bid/ask are shown. This is the Visible Levels per Side setting. Default is 30.
Increase it to see deeper into the book. Decrease it if you find the chart visually crowded.
- Start in Depth + Inferno with default gamma. It is the most readable combination for beginners.
- Switch to Delta mode for 30 seconds during a fast move. Watching liquidity disappear or refill in real time is one of the most powerful uses of DeepWatch.
- Use Side mode on quiet markets to see which way the book is leaning.
- Toggle H to hide the info chips on the bottom for a cleaner screenshot.
- Toggle J to hide the hover data box if it gets in the way.
Trades
The heatmap shows you the resting book. Trades show you execution. Every time a trade prints on the tape, DeepWatch draws a marker on the chart at the price where it happened.
Trade markers
Each trade is one marker.
- Its vertical position is the trade price.
- Its horizontal position is the time the trade printed.
- Its size scales with the trade volume (a 50-lot trade is much bigger than a 1-lot).
- Its color tells you which side initiated the trade:
- Bullish color (default green-tinted) = trade at the ask = aggressive buyer
- Bearish color (default red-tinted) = trade at the bid = aggressive seller
Trade styles
You pick how trades are drawn from the toolbar Trade style button. There are six styles:
| Style | Best for |
|---|---|
| Bubbles default | Circles sized by volume. Easy to read at a glance, classic order flow look. |
| Bolts | Vertical lightning-bolt-like markers. Less visual noise on fast tape. |
| Bars | Horizontal bars. Good when you have many trades at the same price (stacked bars compress nicely). |
| Diamonds | Diamond shapes. Distinctive look, slightly more visible than bubbles on dark backgrounds. |
| Streaks | Long horizontal streaks emphasizing the price level where trade activity is concentrated. |
| Pies | Per-column pies showing the buy-vs-sell split inside each column with a glow outline. See below. |
Pies in detail
The Pies style is different from the others. Instead of marking every individual trade, it summarizes each column as a single pie chart at the price the trades happened.
- The size of the pie scales with total volume in that column
- The sectors show the buy-vs-sell split (one sector per side)
- A glow outline draws attention to high-volume pies
- An info card above the pie shows two lines: total volume / delta on the first line, and buy and sell volume on the second
Use Pies when you want to see at a glance which columns were dominated by one side.
You can resize the pies with the Pie Size slider in the toolbar Trade style popup. Default is 100%, range is 15% to 200%.
Trade filters (visibility, not aggregation)
You can filter which trades show on the chart with a minimum volume slider in Settings (under Trades). This is a display filter only. Filtered trades still count toward:
- Volume Profile and Footprint totals
- CVD and Delta
- Footprint imbalances and absorptions
- Indicator panels
Big trades
A separate setting lets you flag big trades as their own signal. When a trade exceeds your big-trade threshold, it gets a distinct marker and (optionally) an entry in the Activity Log. See Signals.
Trade labels
You can optionally show the volume number next to each marker via a toggle in the toolbar Trade style popup. Labels become hard to read on fast markets, so they are off by default.
Price-run sampling
When sampling mode is set to PriceRun, each column represents a run of trades at the same price. The trade marker for the column reflects the cumulative activity in that run. This is a powerful mode for very active markets where the action is driven by price changes more than by time. See Sampling modes.
- Beginners: start with Bubbles. Once you can read those, try Pies for a more aggregated view.
- For news-driven fast moves where tape explodes, switch to Bolts or Streaks to reduce visual noise.
- Press T to toggle trade markers on and off without changing your settings.
- If a single huge trade is dominating the screen sizing, lower the Trade marker max-size in Settings instead of hiding the trade.
Data Columns
The main heatmap is one view of order flow. DeepWatch lets you add side-by-side data columns that show complementary views. You can add as many as you like, in any order, and each one has its own settings.
There are four column types:
Volume Profile
A vertical histogram of traded volume by price for a chosen timeframe.
Footprint
Bar-by-bar buy vs sell volume sliced price-by-price.
Trading Band
Visualization of your own orders and position at each price.
Live Depth
Real-time view of the current order book at each price.
Add a column from the toolbar (the Profile, FP, LD, TB buttons). Resize a column by dragging its splitter. Right-click a column header for instance-specific options (settings, remove, rename).
VP - Volume Profile
A vertical histogram of traded volume by price for a chosen timeframe. Bars on the left or right side of the column show how much volume traded at each price.
Main settings
- Timeframe - what period the profile covers (Session, Today, Yesterday, Last Hour, Minute, Composite, etc.)
- Session Template - which trading-hours definition to use per VP instance (you can have a 24h profile and an RTH-only profile side by side)
- Aggregation / bucket size - group multiple ticks per row
- Value Area % - default 70%
- POC color, VAH/VAL colors, value area fill color
- Auto-fit - automatically scale the bars to the column width
Reading it
- The longest bar is the POC (Point of Control), the most-traded price
- The Value Area is shaded; VAH (top edge) and VAL (bottom edge) are reference levels
- Splits in the histogram mark price zones where volume concentrated. These often act as support and resistance
Multiple VPs
You can add several VP columns each with a different timeframe. A typical setup is: one Session VP, one Today VP, and one Yesterday VP side by side.
FP - Footprint
A bar-by-bar view where each bar is sliced price-by-price, showing buy volume and sell volume at every price level inside that bar. Footprint is the most detailed view of order flow available.
Main settings
- Bar duration - how much time / volume / range each footprint bar covers
- Number style - show raw volume, delta, ratio, or split (e.g.
12x8) - Imbalance ratio - threshold for marking diagonal imbalances (default 3.0, meaning 3-to-1)
- Stacked imbalance threshold - how many consecutive imbalances mark a "stacked" pattern (default 3)
- Show absorption - toggle absorption detection
- Fill style - solid color, dimmed, or bar-style (proportional fill from one side)
- Bar Color - per-side colors for buys and sells
- Timeframe / session template - same as VP
Reading it
- Each cell shows volume traded at that price inside that bar
- Bullish (buy) volume and bearish (sell) volume are shown on opposite sides
- Cells with solid borders and an arrow are imbalances. Three or more stacked is a strong signal
- Cells with dashed borders are absorption (large aggression, no price move). See Signals
TB - Trading Band
A visualization of your own trading activity at each price level:
- Your buy orders and sell orders (limits and stops)
- Your position entry price highlighted with a band
- Bracket TP/SL orders if you have them
The TB column lets you see your orders in the context of the live book. You can spot, for example, that your stop is sitting right where a wall of liquidity has been pulled.
Main settings
- Show entry band - highlight your position entry price
- Show TP / SL - render bracket orders distinctly
- Account selector (in the trading panel, not the column itself) - which account's orders are shown
- Hover overlay - WYSIWYG preview of where a click would place an order
Interaction
- Right-click on the column at a price to cancel orders at that price
- Drag your existing orders up or down to move them
- Use the trading panel and the toolbar Buy / Sell drag handles to place new orders
LD - Live Depth
A real-time view of the current order book size at each price level. Unlike the heatmap (which shows history left-to-right), Live Depth shows you only right now.
Three modes
| Mode | Behavior |
|---|---|
| Window | Show the size that has been resting in the visible time window only |
| Cumulative | Sum over the visible buffer |
| Persistent | Keep showing the last non-zero value, so empty levels still have a reference number |
Main settings
- Mode - one of the three above
- Show grid - row separators
- Backdrop on dark background
- Fill style - solid, gradient, or outline
- Max levels per side - default 30
- Iceberg detection - mark prices that keep getting refilled (Liquidity Refill, currently hidden behind a feature flag in 0.9.0-beta)
Reading it
LD is best read as a decision tool right now: at the current best ask, is there 200 lots resting or 20? If it is 200, your aggressive buy is likely to fill there. If it is 20, the next move is probably a level higher.
The strip is sized so you can spot walls (very large prices) immediately.
Show Grid
Every column supports a Show Grid toggle that adds horizontal row separators. When grid is on across multiple columns, the rows align perfectly so you can read price-by-price across all of them.
Right-click menus
Each column type has its own right-click menu. Common items:
- Settings... - open the settings window for that column instance
- Remove column - delete this instance
- Rename - give it a custom name
- Move left / Move right - reorder
- Show grid, Show labels, etc.
Templates capture columns
When you save a template (see Themes & Templates), the full set of columns - count, order, types, and per-column settings - is captured. Apply the template to a new window and your column layout comes back exactly.
Signals
DeepWatch detects several order flow patterns automatically and marks them on the chart. This section covers what each signal means, how it is computed, and how to tune the thresholds.
If a term here is unfamiliar, check Core Concepts first.
Where signals appear
Two display options, controlled by the toolbar Strip button (hotkey G):
- Overlay (default): signals are drawn directly on the heatmap at the price and time they fire
- Strip: signals are listed on a dedicated bottom strip, time-aligned with the chart
Strip view is cleaner if you have many signals firing. Overlay is more intuitive when you are learning to read them.
All signals also appear in the Activity Log popup (toolbar Activity button), which is a scrolling text feed you can click to pan the chart to that moment.
Imbalance
Solid border + arrowWhat it means: at a single price level, one side traded much more volume than the other.
How it is computed: inside each footprint bar, the algorithm compares Sells at price X to Buys at price X+1 (diagonally). If the ratio exceeds the Imbalance Ratio setting (default 3.0, meaning 3-to-1), the cell is marked as an imbalance.
Stacked imbalance: when three or more imbalances in the same direction stack vertically, they are marked as a stacked imbalance. Stacked imbalances are a much stronger signal than a single one.
Settings:
- Imbalance Ratio - default 3.0
- Imbalance Stack Min - default 3
- Imbalance Color - default cyan
How to use: stacked imbalances above the current price suggest aggressive buyers running through resting sells; expect continuation up. Stacked imbalances below suggest aggressive sellers; expect continuation down. The first opposite-direction stack often marks the turn.
Absorption
Dashed borderWhat it means: a large amount of aggressive volume hit a single price level and failed to move it.
How it is computed: same diagonal comparison as imbalance, but the price position relative to current matters. When aggression is buying at or below the current price (i.e. lifting offers but not pushing through), or selling at or above (hitting bids but not pushing through), the pattern is flagged as absorption rather than imbalance.
Settings:
- Show Absorption - on / off
- Absorption Color - default orange
How to use: absorption near a swing high or swing low is one of the best reversal signals in order flow. Someone is willing to take all the aggression coming in and not let price move. Once the aggressors give up, price often snaps back hard.
Sweep / Stop-Hunt
Hotkey WWhat it means: price pokes through a recent extreme, takes out stops, then immediately reverses.
How it is computed: DeepWatch tracks recent swing highs and lows, watches for price to overshoot them, and confirms reversal by looking at delta and volume in the bars right after. When the pattern fires, a marker is placed at the poke.
How to use: sweeps are powerful entry signals if you can fade the move. A confirmed sweep often gives you 5 to 10 ticks of mean reversion.
Divergence (Price vs CVD)
Hotkey DWhat it means: price makes a new high or low, but CVD does not confirm.
How it is computed: when a swing high prints with lower CVD than the previous swing high, that is a bearish divergence (buyers are weakening even though price went higher). Same logic mirrored for lows.
How to use: divergences are early warning signs. They are most reliable when they appear at known reference levels (POC, VAH, VAL, prior session high/low).
Liquidity Refill (Iceberg)
Hidden in 0.9.0-betaWhat it means: at a single price level, resting size keeps getting refilled every time it is consumed. A large hidden order is sitting there.
How it is computed: a tracker watches for repeated consumption-and-refill cycles at the same price within a short window.
Status: this feature is hidden behind a feature flag in 0.9.0-beta. It is shipped but not enabled by default while we tune the detector. It will be on by default in a future release.
How to use (once enabled): an iceberg at a price is a major support or resistance level. Trading into it is usually a bad idea. Trading away from it once it absorbs is often a good one.
Big Trades
What it means: a single trade larger than a configured threshold.
Settings: Big Trade Threshold - the minimum volume to qualify.
How to use: big trades are conviction. Watch where they print and what happens to price afterwards. Big trades into walls of opposing liquidity are sometimes the start of a reversal (the wall absorbed).
The Info Bar
The bottom-right of the heatmap shows a row of chips:
grid / max / smp / γ / IMB / ABS / Trade-only
grid- current bucket / aggregationmax- max levels per sidesmp- sampling modeγ- gamma valueIMB- number of imbalances visibleABS- number of absorptions visibleTrade-only- whether trade-only mode is on
Toggle with H. Hiding the chips also skips the scan that produces the counts, which is a small performance win on busy machines.
Keyboard Shortcuts
Every keyboard shortcut available in DeepWatch. The in-app help overlay (press ?) shows the same list inside the window.
Shortcuts work whenever the DeepWatch window has focus and the cursor is over the chart area. They do not fire when you are typing in a settings field.
View
| Key | Action |
|---|---|
| T | Toggle trade markers (bubbles, pies, etc.) |
| V | Toggle the Volume Profile sidebar |
| F | Toggle the Footprint column |
| L | Toggle the last-price line |
| B | Toggle the bid / ask lines |
| Y | Toggle the session high / low lines |
| N | Toggle cell depth values (numbers inside heatmap cells) |
| H | Toggle the bottom info bar chips |
| J | Toggle the hover data box |
Signals
| Key | Action |
|---|---|
| D | Toggle divergence markers |
| W | Toggle sweep / stop-hunt markers |
| G | Toggle signal display: overlay on heatmap vs bottom strip |
Indicators
Sub-panels below the main chart.
| Key | Action |
|---|---|
| C | Toggle CVD panel |
| I | Toggle Book Imbalance panel |
| U | Toggle Volume Rate panel |
| A | Toggle Average Trade Size panel |
| O | Toggle Absorption panel |
| Z | Toggle Delta Z-score panel |
Behavior
| Key | Action |
|---|---|
| K | Lock the crosshair at the current cursor position |
| [ / ] | Decrease / increase grid opacity |
| Q | Toggle smooth pan |
| P | Toggle performance HUD (for debug) |
Actions
| Key | Action |
|---|---|
| R | Reset the view (fit all data) |
| S | Open the Settings window |
| ? | Toggle this help overlay |
| Esc | Close help overlay |
Mouse
| Input | Action |
|---|---|
| Scroll wheel | Zoom in / out |
| Left-click drag (empty area) | Pan the chart |
| Middle-click drag | Pan the chart |
| Right-click drag | Draw a zoom rectangle |
| Ctrl + click | Pin a horizontal line annotation at that price, or delete an annotation if you click on one |
| Ctrl + drag | Draw a price-zone annotation |
| Alt + drag | Draw an analytics rectangle (VWAP, range, volume in box, delta, time) |
| Shift + drag | Anchored stats for the duration of the drag |
| Double-click on empty chart | Reset the view |
| Right-click on chart | Open context menu (chart options) |
| Right-click on column | Open context menu (column-specific options) |
| Right-click on annotation | Edit annotation |
Glossary
One-line definitions of every term used in this guide.
- Absorption
- Large aggressive volume hits a price but the price does not move; sign that someone is absorbing the aggression.
- Aggressor
- The side that crossed the spread on a trade. Buying aggressor lifts the offer; selling aggressor hits the bid.
- Ask
- The lowest price someone is willing to sell at. Also called "offer".
- Best bid / Best ask
- The highest bid and lowest ask currently posted.
- Bid
- The highest price someone is willing to buy at.
- Big trade
- A single trade above your configured volume threshold; flagged as a separate signal.
- Book
- Synonym for order book / depth of market.
- Bucketing
- Grouping multiple ticks into one row on the chart to reduce noise. Price-stable: the same price always lands in the same bucket.
- CVD
- Cumulative Volume Delta. Running sum of buy volume minus sell volume over the session.
- Delta
- Buy volume minus sell volume over a given window.
- Depth
- Resting (passive) liquidity in the order book.
- Divergence
- Price makes a new extreme but CVD does not confirm. Early warning of weakness.
- DOM
- Depth of Market. The full ladder of bids and asks at each price.
- Footprint (FP)
- A bar-by-bar view splitting each bar by price, showing buy and sell volume at every price inside the bar.
- Gamma
- A correction factor that controls how large orders compare to small ones in heatmap brightness.
- Iceberg
- A hidden large order that keeps getting refilled at the same price as it is consumed.
- Imbalance
- At a single price, one side's volume is much larger than the other's (default 3-to-1). Stacked imbalances are a strong signal.
- Inferno
- The default heatmap palette: black to purple to red to orange to cream.
- Jet
- A rainbow heatmap palette: blue to green to yellow to red.
- Last price
- The price at which the most recent trade printed.
- Liquidity Refill
- Iceberg detection: repeated refills at the same price within a short window.
- Live Depth (LD)
- A column showing the current resting order book size at each price, right now.
- POC
- Point of Control. The single price with the highest volume in a Volume Profile.
- PriceRun
- A sampling mode where each column is one run of trades at the same price.
- Sampling mode
- What each chart column represents: time (continuous), trade-only, or price-run.
- Sequential
- A colorblind-safe heatmap palette: dark purple to green to yellow (Viridis-like).
- Session
- The trading day for that instrument, defined by your NinjaTrader Trading Hours template.
- Spread
- The gap between the best bid and the best ask.
- Stacked imbalance
- Three or more consecutive imbalances in the same direction stacked vertically.
- Stop-hunt
- A market move that pokes through a known stop level and then immediately reverses. See "sweep".
- Sweep
- Another name for stop-hunt: price overshoots a swing extreme and reverses.
- Template
- A saved DeepWatch configuration you can re-apply to any window. Separate from a NinjaTrader workspace.
- Theme
- The color palette of the window chrome. Four built-in themes: Obsidian, Arctic, Cobalt, Ember.
- Trade-only mode
- Heatmap mode that hides or dims levels with no recent trade activity.
- Trading Band (TB)
- A column showing your own orders and position entry at each price.
- UI Style
- The visual treatment of buttons and panels. Four built-in styles: Minimal, Office365, Terminal, Aurora.
- VAH / VAL
- Value Area High and Value Area Low. The upper and lower edges of the Value Area.
- Value Area
- The price range containing a configurable percentage (default 70%) of session volume.
- VPOC
- Virgin POC. A POC that has not been revisited since it formed.
- Volume Profile (VP)
- A histogram of traded volume by price for a chosen timeframe.
- Workspace
- A NinjaTrader concept: the full layout of every window. Saves DeepWatch state alongside everything else.
Feedback
Found something wrong or unclear? Use the in-app feedback option in the Settings window, or reach out on our Discord.
Join Discord