Skip to main content

Filters — Wildcard Masks Now Match the Way You Expect

Group, login, and symbol filters now correctly match contains-style and multi-segment wildcards (*text*, prefix*suffix, *A*B*). Previously some of these patterns silently returned no results.

A small but high-impact fix to how filter masks are matched across the app.

What was wrong

Wildcard masks handled simple shapes (text* / *text) correctly but quietly failed on:

  • Contains patterns: *demo* against a real group demo-1k returned no matches.
  • Multi-segment patterns: real*CHF (start with real, end with CHF, anything between) was treated as a literal string and matched nothing.

The same shape affected Login filters (*123* would not pick up 91234).

The other mask shapes — single-anchor (text*, *text), exact match, numeric ranges (1000-2000), comma/semicolon lists — were always fine.

What changed

Masks are now matched by the same proven matcher the rest of Toolbox already relies on — Trades Copier, Rollover and other modules. It supports the full MetaQuotes mask syntax:

  • *text* → matches anywhere (e.g. demo-1k, real_demo_eu)
  • text* → starts-with
  • *text → ends-with
  • prefix*suffix → starts-with + ends-with, anything between (e.g. real*CHF matches real\ABCEURCHF)
  • *A*B* → multi-segment contains (must contain A THEN B)
  • 1000-2000 → numeric range (login masks)
  • Lists separated by , or ;

Group matching remains case-insensitive. Login matching is numeric / exact as before.

Where you'll see it

Any screen that uses MetaQuotes-style masks: Trades Copier filters, OTR / CTR (Open / Closed Trades Reconciliation) reports, and any module exposing a Login / Group / Symbol filter.

If you have a saved filter using *text* or a multi-segment pattern that previously felt "too narrow", re-run the report — it should now return what you expect.

Bonus fix in the same area: CTR Symbol filter

We also fixed a separate, older issue with the Symbol filter in Closed Trades Reconciliation (and MatchTrader's OTR). It handled one common shape (EUR*) correctly but silently misbehaved for everything else: *USD, *USD*, multi-segment patterns and comma-separated lists.

It now uses the same matcher, so all the patterns above work consistently for Symbol filters too — across MT4, MT5, and MatchTrader, in both OTR and CTR reports.