Skip to content

Price

FreeValueStandardPro

Fetch intraday price history for an index.

  • Retrieves historical indices price reports. Exchanges typically generate a price report every second for popular indices like SPX.
  • When the interval parameter is specified, the returned data represents the price at the exact time of each timestamp. If the timestamp in the response is 10:30:00, the price field represents the price at that exact time of the day.
  • A price update from the exchange is omitted if the price remained the same from the previous update.
  • Multi-day requests are limited to 1 month of data.
SPX
Client
Auth
Style
from thetadatadx import Client

client = Client.from_env()

rows = client.market_data.index_history_price(
    "SPX",
    interval="1m",
)
for t in rows:
    print(t.date, t.ms_of_day, t.price)
Sample response · JSON
[
  {
    "price": 0,
    "timestamp": "2024-11-04T09:30:00"
  },
  {
    "price": 5728.56,
    "timestamp": "2024-11-04T09:31:00"
  },
  {
    "price": 5725.48,
    "timestamp": "2024-11-04T09:32:00"
  }
]

Parameters

NameTypeRequiredDefaultDescription
symbolstringyesTicker symbol (e.g. AAPL)
datedatenoSingle date YYYYMMDD. Supply this for a single-day pull, or supply start_date/end_date for a range. When present, date takes precedence over the range.
intervalstringno1sInterval preset. Defaults to 1s when omitted — matching the upstream ThetaData Python library. Accepted values: tick, 10ms, 100ms, 500ms, 1s, 5s, 10s, 15s, 30s, 1m, 5m, 10m, 15m, 30m, 1h.
start_timestringno09:30:00Start time filter
end_timestringno16:00:00End time filter
start_datedatenoStart date YYYYMMDD
end_datedatenoEnd date YYYYMMDD
timeout_msintnoPer-request deadline in milliseconds. 0 means no deadline.

Response

Rows of PriceTick:

FieldTypeDescription
ms_of_dayi32Milliseconds since midnight Eastern Time.
pricef64Index value.
datei32Trading date as a YYYYMMDD integer.

Released under the Apache-2.0 License.