Next free-source hunt
We check for new free data every weekday.
Datasets / Market Data
dmd.lseg.com/

LSEG Delayed Market Data (London Stock Exchange, Turquoise, TRADEcho)

Freeauth: noneCustom#market-data#delayed-data#stocks✓ verified Nov 5, 2026

LSEG Delayed Market Data (London Stock Exchange, Turquoise, TRADEcho)

London Stock Exchange Group's free MiFID II / MiFIR delayed-data portal: semicolon-delimited CSV files, one per minute, of pre- and post-trade data published 15 minutes after initial publication for London Stock Exchange (XLON), Turquoise (TGHL) and Turquoise Europe (TGHE), plus post-trade files for the TRADEcho UK and EU APAs. No registration or key; you accept on-page terms.

Coverage

Pre- and post-trade files for London Stock Exchange (MIC XLON), Turquoise (TGHL) and Turquoise Europe (TGHE); post-trade only for TRADEcho UK (ECHO) and TRADEcho EU (ECEU) APAs. A new file every minute with the preceding minute's activity, 15 minutes after initial publication; end-of-session consolidated gz files for TGHE and ECEU only. Timestamps and file names in UTC. Only the most recent days are listed (about 1,000 to 1,600 files per venue list on Nov 5, 2026). Regulatory 15-minute delayed transparency data, not a real-time feed and not a consolidated tape; not RNS company announcements.

Verdict

This is the official free 15-minute delayed trade and quote record for the London Stock Exchange and Turquoise, useful for agents that need venue-level UK and EU equity transparency data without a market-data contract. It is delayed MiFID II data, not a real-time or consolidated feed, and covers only LSEG venues and APAs. Use is free on LSEG's terms; charging for onward distribution or building charged value-added services on it needs an LSEG licence.

Get the free weekly email

Free weekly email of newly verified free data. Unsubscribe by emailing us.

Use in your agent

Pull an LSE delayed post-trade minute file into pandas and Parquet. Checked against the provider's documentation on Nov 5, 2026.

Raw skill file (/skills/lseg-delayed-market-data.md)Also in our MCP server: call get_ingestion_skill with {"slug": "lseg-delayed-market-data"}.

Access

  • No account or key; the dmd.lseg.com portal shows Terms & Conditions you accept by using the data.
  • The portal page lists files from https://dmd.lseg.com/api/web/files and hands out short-lived signed download links from https://dmd.lseg.com/api/web/download?fileName=<fileKey>. These are the JSON calls the portal itself makes, not a documented API, so they can change.

Request

bash
curl 'https://dmd.lseg.com/api/web/files'

Format

File list: JSON with result.initialPayloadResponse.fileDetails keyed by venue list (for example "LSE Post-Trade Documents"), each item with fileName, fileKey, type and fileDate. Each file is a semicolon-delimited CSV for one minute (for example XLON-post-2026-11-05T12_00.csv) with UTC timestamps.

Load into pandas and Parquet

Needs Python 3 with requests, pandas and pyarrow.

python
"""LSEG Delayed Market Data: one LSE (XLON) post-trade minute file -> pandas -> Parquet. No key."""
import io
import requests
import pandas as pd

API = "https://dmd.lseg.com/api/web/"
files = requests.get(API + "files", timeout=60).json()["result"]["initialPayloadResponse"]["fileDetails"]
item = next(f for f in files["LSE Post-Trade Documents"] if "T12_00" in f["fileName"])
signed = requests.get(API + "download", params={"fileName": requests.utils.unquote(item["fileKey"])}, timeout=60).json()["result"]["preSignedUrl"]
r = requests.get(signed, timeout=120)
r.raise_for_status()
df = pd.read_csv(io.StringIO(r.text), sep=";", dtype=str)  # semicolon-delimited, UTC timestamps
df.to_parquet("lseg_xlon_posttrade.parquet", index=False)
print(item["fileName"], len(df), "trades;", ", ".join(df.columns[:5]))

Run by us on 2026-11-05 (python 3.13 | pandas | pyarrow | requests (box probe)). Result: XLON-post-2026-11-05T12_00.csv 6279 trades; distributionTime, sourceVenue, instrumentId, transactionIdentificationCode, mifidPrice

Limits

  • Data is published 15 minutes after initial publication; one file per minute per venue and flow.
  • Only recent days are listed (about 1,000 to 1,600 files per venue list on Nov 5, 2026), so collect files yourself for history.
  • No request or download limit stated.

Quirks

  • Files are semicolon-delimited, not comma-delimited.
  • File names and timestamps are in UTC; the snippet picks the 12:00 UTC file, which exists only on trading days.
  • Consolidated end-of-session gz files exist only for Turquoise Europe (TGHE) and TRADEcho EU (ECEU).
  • Signed S3 download links expire quickly; request a fresh one per file.

Terms and attribution

  • Free use of the Delayed Data on LSEG's on-page terms; provided as is, for information purposes only.
  • Onward distribution for a fee, or use in charged value-added services, needs an LSEG licence (marketdata@lseg.com).

Sources

  • https://dmd.lseg.com/: “Files are produced every minute. The times in the names of these files, and the timestamps on the messages within the files, are all in UTC.”
  • https://dmd.lseg.com/: “Users will be required to enter into a licence agreement and should contact marketdata@lseg.com to discuss licencing requirements before using the Delayed Data.”
  • https://dmd.lseg.com/: “All files are semicolon delimited.”

Information and education only. Not financial, investment, legal or tax advice. Listings can be inaccurate, incomplete or out of date and are provided "as is". Free tiers, limits and licenses belong to each provider and can change, so check the provider's own terms before you rely on them. Terms & Disclaimer