Hi all,
Setup
- LSEG Data Library for Python (lseg-data 2.1.1), Python 3.13
- Workspace desktop session (localhost:9000)
- Daily job; the session's quota is 10,000 requests/day and 5 requests/second
Use case
Once a day I need the price at exactly 12:00 UTC for about 1,800 equities and futures across European, US, Latin American and other exchanges. For each instrument I need the first 1-minute bar at or after 12:00:00 UTC (BID, ASK, TRDPRC_1).
What I do now
df = ld.get_history(
universe=batch, # 50 RICs per call
fields=["BID", "ASK", "TRDPRC_1"],
interval="1min",
start="2026-10-06T12:00:00Z",
end="2026-10-06T12:05:00Z",
)
The problem
On a desktop session, get_history sends one HTTP request per instrument (GET .../historical-pricing/v1/views/intraday-summaries/<RIC>?interval=PT1M&...). Each one counts against the daily quota, so this step alone uses ~1,800 of the 10,000 daily requests.
For daily data I've already switched to ld.get_data with TR fields (TR.PriceClose, TR.BidPrice, TR.AskPrice with SDate/EDate). That is batched and costs 1 request per call.
Questions
- Is there a supported way to get a 1-minute intraday bar (or the price as of a given timestamp) for many instruments in a single counted request? For example, an intraday-capable TR field or parameter for ld.get_data, or a multi-instrument intraday endpoint.
- If the job runs at 12:00 UTC, would a real-time snapshot via ld.get_data (e.g. CF_BID, CF_ASK, CF_LAST) be a reliable, supported alternative? Does it count as 1 request per call, and are there any per-call instrument limits I should respect?
- If neither is possible within the Data Library, is DataScope Select the recommended route for a daily intraday snapshot of this size?
Any pointers or examples would be much appreciated.
Thanks so much.