Whispertrades

Execution Quality

Updated Sep 16, 2026

Execution Quality measures how your orders actually filled against the market that existed around them. Every filled order a bot places is measured, automatically, with no setup.

Where to find it

  • Execution Quality in the main menu is the account view: every bot together, with a per-bot breakdown.

  • A bot's Execution tab is the same figures for that bot alone.

  • An order's page carries an Execution Quality card for that single fill, with a chart of the market around it.

  • A position's page lists each of its orders and how each one filled.

What the numbers mean

  • Fill rate — of the orders your bot submitted, how many filled. An order that was canceled or expired counts against this.

  • Spread capture — where in the bid-ask spread your order filled. 50% is the midpoint. Above 50% means you did better than mid; 100% is the favorable edge of the market and 0% is the unfavorable edge. It can fall outside that range when a fill lands outside the quoted market entirely.

  • Slippage vs mid — the same thing in dollars per contract, signed so that positive is a cost and negative means the fill beat the midpoint.

  • Time to fill — how long from the first submission to the fill.

  • Avg submissions — how many times the order was priced before it filled. A bot working an order walks its limit price, and each step is a submission.

  • Fill vs print — your fill price against what the contract actually traded at around the same moment, rather than against the quoted market. This is the closest thing to "what everyone else paid". It is blank on symbols where trade data is not available.

What each fill is compared against

Which market a fill is judged against depends on how the order behaved, and this matters more than it sounds:

  • An order the bot worked — submitted, then re-priced until it filled — is measured against the market at submission. Drift while the bot works an order is part of the cost of getting filled, so it belongs in the number.

  • An order that rested until the market came to it — a profit target waiting for hours, or any broker stop order — is measured against the market at the moment it filled. Its submission quote is stale by definition, so comparing to it would produce a number that says nothing about execution.

The order page names which basis it used, so you never have to guess.

Provisional and final numbers

A fill is measured twice. Within a couple of minutes it is measured from live market data and marked Provisional. Overnight it is measured again against the exchange's own cleaned trade data, which can correct or cancel individual prints, and the Provisional badge comes off.

Numbers changing overnight is the system working, not a bug. The overnight figure is the one to rely on.

Paper accounts

Paper trading fills are simulated, so there is no real execution to measure. Paper bots are excluded from every execution quality surface. This is deliberate: showing a spread capture figure for a fill that never happened would be worse than showing nothing.

Small samples

Every figure shows how many fills it is drawn from. A median over a handful of fills moves on one bad print, so treat a small sample as a hint rather than a verdict, and give a bot a few weeks before drawing conclusions about it.

A note on the trade data

The "Fill vs print" comparison and the market chart are built from real exchange trade data that Whispertrades licenses. You will always see it summarized — an average, a range, a count — and never as a list of individual trades, which our licence does not permit us to redistribute.

Was this page helpful?