Skip to content
English
  • There are no suggestions because the search field is empty.

Matching Engine

When matching runs, how results are organized, and what affects the outcome.

 

Quick Summary

Theorem's matching engine is an background process designed to silently match data incrementally throughout the day as new data arrives. Match results are enriched into the portal's Data Viewer tool and match report artifacts can be generated on demand or automated. The engine is optimized to reduce noise by accepting client directed tolerances and highlights probable reasons for discrepancies.

When Matching Runs

Theorem’s matching engine runs as new trade data arrives.

When a new file is detected and imported into Data Viewer, incremental matching is triggered. The matching engine evaluates the new data against relevant unmatched activity and updates match results when new matches or discrepancies are found.

Matching can also be affected by manual actions, including rematching selected trades or affirming trades outside the matching process.

How Matching Results Are Organized

Matching results are organized into Match Groups.

A Match Group is the matching engine’s working unit for organizing matched and unmatched trade activity. Match Groups allow Theorem to summarize related activity across reports and app views without requiring every individual trade to appear separately in every context.

Matched activity remains stable once assigned to a Match Group. Unmatched activity may continue to change as new data arrives and unresolved activity is re-evaluated.

What Affects Matching Results

Matching results depend on the compared sources, the available trade data, and the settings applied to the matching process.

Common factors include:

  • the two sources being compared
  • price and notional tolerances
  • rounding rules
  • percent of tick value tolerance
  • affirmed trades
  • manual rematching
  • source data corrections or late-arriving files

These settings and actions can affect whether activity matches, remains unmatched, or receives a discrepancy label.

How Users Can Intervene

Users can affect matching results by adjusting matching settings, affirming trades, correcting source data, or using rematching tools.

Affirmed trades are removed from the matching engine’s active scope and are not included in the denominator for match scoring. Rematching allows users to select specific trades and ask the matching engine to evaluate them together.

Matching controls should be used carefully because they can affect reports, scores, and downstream exception review.