Sign up with our partner broker and get free XAU/USD signals. JOIN US
LIVE MT5 BUILD 5830 LAST REV 2026-05-23
SESSION -- UTC --:--
SESSIONS
SYDNEY22:00–07:00 UTC
TOKYO00:00–09:00 UTC
LONDON07:00–16:00 UTC
NEW YORK12:00–21:00 UTC

How to read your MT5 trade history for execution quality

Your MT5 trade history contains everything you need to audit your broker's execution quality. Here is how to extract it, analyse it, and what the numbers actually mean.

PUBLISHED 2026-05-23 READING TIME 9 MIN MT5 BUILD 5830 CATEGORY BROKERS
Key points:
  • MT5's Trade History tab and the History tab in Toolbox contain everything needed for execution analysis.
  • Export to CSV (Tools menu, or right-click in History) for proper statistical analysis.
  • Three key metrics: slippage distribution, fill latency, and rejection/requote rates.
  • 100+ trades minimum for meaningful statistics. A few cherry-picked screenshots are not analysis.

1. What MT5 records about each trade

For every executed trade, MT5 stores:

  • Order placed timestamp: when you clicked Buy/Sell
  • Order arrived timestamp: when the broker server received your order
  • Order executed timestamp: when the fill happened
  • Requested price: what you saw when you clicked
  • Fill price: what you actually got
  • Slippage: difference between requested and fill
  • Volume: the lot size
  • Commission: if applicable
  • Swap: overnight cost/credit
  • Comment: broker-added metadata, sometimes including LP name

The granularity is millisecond on timestamps and full price precision on prices. This is enough for solid execution analysis.

2. Accessing the data

The Trade History tab

In MT5 toolbox (Ctrl+T), the History tab shows all closed deals. By default it shows the last week. Right-click to select a custom range (last month, last quarter, custom dates, all history).

Detailed trade view

Double-click any trade in History. You see full details including timestamps and slippage.

Export to CSV

Right-click in the History tab, choose Report > Save as CSV or HTML. CSV is preferable for analysis (open in Excel, Python, R, whatever you use).

The CSV columns map directly to the on-screen fields. Some brokers strip the order-placed timestamp from the export, leaving only the executed timestamp. If your CSV is missing that column, check Tools > Options > Trade > Show order timestamps.

3. Building a slippage histogram

The most useful single analysis. Take all market orders (skip pending orders), calculate the slippage for each:

slippage_pips = (fill_price - requested_price) / point_size * direction_multiplier

where direction_multiplier is +1 for buy orders and -1 for sell orders (so that "negative slippage" always means "worse fill").

Plot the distribution. A healthy execution profile looks like this:

  • Sharp peak at 0 pips slippage (most trades fill exactly at request)
  • Symmetric distribution: tails to the left and right are roughly equal
  • Mean close to 0
  • Median exactly 0

Concerning patterns:

  • Distribution skewed left (negative slippage tail bigger than positive): you are getting worse fills more often than better fills. B-book signal.
  • Mean significantly below 0: systematic negative slippage. Broker is profiting from execution discretion.
  • Bimodal distribution: clusters of slippage near 0 and clusters at -3 to -5 pips. Often indicates two execution paths (some orders fast-routed, some slow-routed).

4. Fill latency analysis

The time between order placed and order executed:

fill_latency_ms = executed_timestamp - placed_timestamp

Typical ranges:

  • 10 to 50 ms: excellent. Indicates VPS or co-located client and fast broker server.
  • 50 to 200 ms: normal. Home internet to broker in nearby region.
  • 200 to 500 ms: slow but acceptable. Far from broker server, or wifi congestion.
  • 500 ms+: concerning. Either your network or the broker server is slow.

If latency varies wildly across trades, the issue is your network (likely wifi or ISP congestion).

If latency is consistently high but stable, the issue is geographic distance to broker. Consider a VPS closer to their server.

5. Reading the Comment field

Many brokers leave informative strings in the Comment field. Look at 50 of your recent trades and tabulate the patterns:

Comment patternWhat it likely means
LP name (LMAX, CITI, UBS, etc.)A-book, this specific LP filled the trade
Empty / blankInconclusive, often B-book
"order #123456"Generic, inconclusive
"sl" or "tp"This trade closed at SL or TP, not a market order
"so" or "stop out"Forced close due to margin call
"split"Order was filled across multiple LPs/prices

If most of your comments are LP names, that is a strong A-book signal. If they are mostly blank, the broker is not voluntarily disclosing LP information, which suggests B-book or hybrid.

6. Rejection and requote rates

MT5 logs failed order attempts in the Journal tab (Toolbox, Journal tab). Filter for "Order error" or "Requote" entries.

For a sample of 100 attempted orders:

  • 0-1 rejections: excellent. Modern A-book or well-run B-book.
  • 2-5 rejections: normal during volatile conditions.
  • 5-10 rejections: concerning. Your fill rate is being suppressed.
  • 10+ rejections: serious problem. Switch brokers or escalate to support.

Requote rate is similar. Modern Market Execution accounts essentially never requote. If you are seeing requotes, you are on Instant Execution, which is much more common on B-book setups.

7. Spread variance over time

Plot the spread on a high-frequency symbol (EUR/USD or USD/JPY) over 24 hours. Most easily done by saving spread snapshots via an EA or using MT5's Spread chart indicator.

Look for:

  • Visible widening during news events (real LP behaviour)
  • Lower spreads during London/NY overlap, higher overnight
  • Spike widening during Asia open (genuinely low liquidity time)

If spread is suspiciously stable across all hours, your broker is setting prices manually rather than relaying LP quotes. B-book indicator.

8. Volume-weighted analysis

If you trade different lot sizes, weight your statistics by volume. A broker might give you good fills on 0.01 lots and terrible fills on 1.0 lots, because the 1.0 lots actually need to go to LPs while 0.01 lots stay internal.

Group your trades by lot size buckets (0.01-0.05, 0.06-0.20, 0.21-1.00, 1.01+) and calculate slippage stats per bucket. Significant degradation as size increases is a sign of execution-quality limits that may matter for your strategy.

9. Building a simple Python audit script

For traders comfortable with code, a 30-line Python script using pandas can produce all the above analyses. Rough structure:

import pandas as pd
df = pd.read_csv('trades.csv')
df['slippage'] = (df.fill_price - df.req_price) / df.point * df.direction
df['latency_ms'] = (df.executed - df.placed).dt.total_seconds() * 1000

print('Slippage statistics:')
print(df.slippage.describe())
print('Skewness:', df.slippage.skew())

print('\nLatency statistics:')
print(df.latency_ms.describe())

The point is to make broker quality measurable rather than vibe-based.

10. Comparing brokers

If you have accounts at multiple brokers, run identical analyses on each. This is the most informative comparison you can do, because it controls for your trading style.

Useful pattern: run the same EA on demo accounts at three brokers for one month. Compare execution statistics. The broker with best slippage profile, lowest latency, fewest rejections is empirically the best for your style.

FAQ

How many trades do I need for valid statistics?

100 trades minimum for slippage analysis. 300+ for confident detection of systematic patterns. Below 50, you are looking at noise.

What is a normal mean slippage?

Zero is ideal. -0.1 to +0.1 pips is normal. Beyond -0.5 pips mean slippage on majors, something is wrong.

How do I get the order placed timestamp if my broker hides it?

You can log it yourself via an EA that records the millisecond timestamp on every order send. Alternatively, ask broker support for raw execution logs.

Should I switch brokers if statistics look bad?

One bad analysis is not enough. Look at multiple weeks and multiple market conditions. If the pattern persists, yes - the broker is costing you measurable money.

// OUR PARTNER BROKERS

Looking for a partner broker?

We have an introducing broker relationship with VT Markets. Clients who sign up with VT Markets through us get free access to our signal channel. Full disclosure on the affiliate disclosure page.

Sign up & get signals → Disclosure →