EA Performance Monitor
- Utilities
-
Khac Thanh Bui
👨💻 MQL5 Developer & Algorithmic Trading Specialist
📍 Hanoi, Vietnam | Active Trader since 2018
Turning trading logic into algorithmic precision. I develop professional-grade tools for FX and Gold, bridging the gap between practical trading needs and high-end software development. - Version: 2.20
- Updated: 12 November 2025
EA Performance Monitor
A utility for MetaTrader 5 that automatically detects all active Expert Advisors across open charts, maps each EA to its trading data, and displays real-time drawdown, profit, win rate, and open position metrics in a single panel.
EA Performance Monitor is an automated tracking utility for MetaTrader 5. It scans all open charts at a configurable interval, identifies each running Expert Advisor by magic number and symbol, and displays their performance data in a structured panel on the chart. The tool tracks both closed trade history and live floating positions, giving a consolidated view of all EA activity on the account from a single attachment point.
Overview
On initialization, the utility reads the account's trade history starting from the moment it was attached. It scans all open positions for active magic numbers and maps each one to a corresponding chart where an Expert Advisor is running. This mapping is maintained continuously: when a new chart is opened or closed, the utility detects the change and updates its internal registry within the next refresh cycle.
For each detected EA, the utility computes total closed profit, total lots traded, number of completed trades, number of open positions, floating profit and loss, current drawdown as a percentage of account balance, and maximum drawdown recorded since tracking began. Win rate is calculated from closed deals and displayed as a percentage. When no active chart is found for a magic number that still has open positions, the entry is retained and labeled accordingly. Manual trades with no magic number are grouped by symbol under a dedicated entry.
A rolling balance chart is maintained across trading sessions, recording the account balance at the start of each day and plotting it as a line graph below the main table. The chart scales automatically when the balance moves outside the initial display range. Account-level summary information including total balance, equity, and the highest drawdown recorded across all tracked EAs is shown in the panel header.
Key Features
- Automatic EA detection across charts: The utility scans all open MetaTrader 5 charts and pairs each Expert Advisor with its corresponding trade data using symbol and magic number matching. No manual configuration is required when adding or removing EAs from the account.
- Real-time drawdown tracking: Current drawdown is calculated on every refresh as a percentage of account balance based on open floating loss. Maximum drawdown is tracked continuously from startup and displayed alongside the date it was recorded.
- Win rate and trade statistics: Closed trade history is analyzed from the startup timestamp to compute win rate, total profit, and total lots for each EA. Statistics update automatically as trades close.
- Manual trade grouping: Open positions with no magic number are automatically identified and grouped by symbol under a separate entry, keeping the panel complete for accounts where manual trades run alongside automated ones.
- Daily balance chart: Account balance is recorded once per day and plotted as a line graph below the EA table. The chart rescales dynamically when balance moves outside the visible range, and each data point shows its balance value.
- Multi-language panel: The panel header and column labels can be switched between eight languages using buttons at the bottom of the panel. Supported languages are English, Russian, German, French, Spanish, Portuguese, Chinese, and Vietnamese.
- Sortable data table: EA entries are sorted by selected column. The sort order can be changed at runtime to compare EAs by drawdown, profit, win rate, or other metrics.
- Panel reset and manual scan: A reset button clears all recorded drawdown data and restarts tracking from the current state. A scan button forces an immediate re-detection of all charts and active magic numbers without waiting for the next scheduled refresh.
How It Works
On each timer tick, the utility refreshes its internal state by scanning all open positions and comparing them against the registry of known EA entries. Chart count is monitored continuously; when a change is detected, the chart mapping routine runs immediately to pair unmatched magic numbers with newly opened or modified charts. Trade history is loaded from the startup timestamp and cached with a configurable refresh interval to reduce load during periods with large trade histories. Metrics for each EA are recalculated on every timer cycle and written to the display panel. The panel redraws only when data changes, keeping CPU usage low during quiet market periods.
Recommended Use
EA Performance Monitor is designed to run on a dedicated chart that remains open throughout the trading session. It can be attached to any symbol and timeframe since it does not interact with that chart's price data. The utility is suitable for accounts running multiple Expert Advisors simultaneously, where monitoring individual performance from separate chart windows is impractical. A virtual private server is recommended to maintain continuous tracking across sessions.
Input Parameters
Display Settings:
- Panel refresh interval — Seconds between each panel update — Default: 3
- Show panel — Enable or disable the monitoring panel — Default: true
- Text size — Font size used in the panel table — Default: 9
Performance Settings:
- Cache refresh interval — Seconds between trade history cache reloads — Default: 10
- Maximum tracked EAs — Maximum number of EA entries the utility will track simultaneously — Default: 100
General Settings:
- Debug logging — Enable extended logging to the Experts terminal tab — Default: false
This utility reads trade history and open position data from the account to compute its metrics. It does not place, modify, or close any orders. All drawdown and profit figures are informational only and reflect the period from the utility's startup time. Resetting the panel clears recorded maximum drawdown data and restarts all calculations from the current account state.

User didn't leave any comment to the rating