Skip to content
All library documents

Streaming Interactive Brokers Market Data and Resampling Quotes

Article Systematic trading blog (Rob Carver)

Summary

This tutorial outlines a workflow for requesting live futures data through Interactive Brokers’ native Python API. It resolves a contract, starts a market data subscription, stores incoming ticks in a queue, and later cancels the subscription and retrieves collected observations. The example uses a German bond futures contract and shows tick fields such as bid, ask, trade price, and size.

The tutorial then converts the collected ticks into a tabular time series and resamples them at different intervals: one-second snapshots for quotes and 10-millisecond bins for trades. Its sample output illustrates that resampled rows can contain missing values when a field did not update during an interval. This is an implementation example rather than a trading strategy or performance study. It does not discuss data-feed entitlements, reconnect handling, timestamp precision, or how to handle stale quotes and missing observations in analysis.

Key ideas

  • Resolve the futures contract before requesting a live market data stream.
  • Queue callbacks can collect incoming ticks for later retrieval and analysis.
  • Cancel the subscription before draining remaining observations from the queue.
  • Resampling quote and trade fields at different intervals can produce sparse rows with missing values.

Tags

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.