Skip to content
Algo Trade Analytics Docs

Investigate Alerts vs Fills metrics

The summary is an index into the underlying records. Use it to decide where to look, then confirm the pattern in the comparison rows.

Match rate = matched alert events / alert events in scope × 100

Report the numerator and denominator with the percentage. Ten matches out of ten and one thousand matches out of one thousand have different evidentiary weight, even though both display 100%.

Unmatched alerts and unmatched fills answer different questions:

  • An unmatched alert has no compatible broker fill under the current rules.
  • An unmatched fill has no compatible alert event under the current rules.

Neither label identifies the cause. Scope, symbol, direction, partial fills, duplicates, rejected orders, and timestamp selection can all affect pairing.

Latency = broker-reported fill time - alert time

Read the median, range, and outliers—not only the average. Segment by symbol, session, order type, and market condition when the distribution changes. Confirm which alert and fill timestamps the report uses before comparing the value with another system.

Price difference = fill price - alert price

Interpret the sign from the trade side, then normalize by symbol price when comparing different instruments. Price difference can reflect spread, volatility, order type, partial fills, timestamp choice, or market movement between the two records.

Compare alert quantity with the broker-reported filled quantity. A difference can come from partial fills, multiple fill records, rejected remainder, or an alert payload that described position intent rather than submitted order size.

  1. Confirm alert and fill counts, symbol, direction, and time window.
  2. Turn on Show only problems and group rows by match type.
  3. Sort by time difference, then price difference, to find the largest outliers.
  4. Check whether outliers cluster by session, order type, or volatility.
  5. Exclude a record only when you can state why it is outside the question being analyzed. Record that decision with the snapshot.
  6. Compare the same definitions and scope with a prior window.

Broad latency shift

Check timestamp definitions, network or broker-reporting changes, and whether the scope crosses different sessions.

Only some symbols drift

Compare liquidity, tick size, order type, entitlement, and market hours for those symbols.

Quantity mismatches cluster

Inspect partial-fill grouping and whether the alert quantity expresses order size or target position size.

One outlier dominates the average

Keep the row visible, explain it, and compare robust statistics. Do not silently remove it to improve the summary.