Skip to content

Bulk Quote At Time

StandardPro

REQUIRED

The Theta Terminal must be running to access data.

Behavior

Returns the data for all contracts that share the same provided root and expiration.
Returns the last NBBO quote reported by OPRA at
a specified millisecond of the day. The ivlparameter represents the milliseconds since
00:00:00.000 ET that the quote should be provided for. Set exp to 0 if you want
to retrieve data for every option that shares the same root.

Sample URL & Code

Paste the URL below into your browser while the Theta Terminal is running.
You can use the "request sample" box to the right of this box obtain sample
code in any programming language.

http://127.0.0.1:25510/v2/bulk_at_time/option/quote?root=SPY&exp=20240119&start_date=20240116&end_date=20240116&ivl=44100000

Output Descriptions

Field Description
ms_of_day Milliseconds since 00:00:00.000 (midnight) ET.
bid_size The last NBBO bid size.
bid_exchange The last NBBO bid exchange.
bid The last NBBO bid price.
bid_condition The last NBBO bid condition.
ask_size The last NBBO ask size.
ask_exchange The last NBBO ask exchange.
ask The last NBBO ask price.
ask_condition The last NBBO ask condition.
date The date formated as YYYYMMDD.

Parameters

Query Parameters

rootRequired  -

The symbol of the security. Option underlyings for indices might have special tickers.

Type: string (Default: SPX)
expRequired  -

The expiration date of the option contract formatted as YYYYMMDD.

Type: integer (Default: 20231103)
strikeRequired  -

The strike price in 1/10ths of a cent. A $170.00 strike price would be 170000.

Type: integer (Default: 170000)
rightRequired  -

The right of the option. 'C' for call; 'P' for put.

Type: string (Default: C)
EnumC, P
start_dateRequired  -

The start date (inclusive) of the request formatted as YYYYMMDD.

Type: integer (Default: 20230915)
end_dateRequired  -

The end date (inclusive) of the request formatted as YYYYMMDD.

Type: integer (Default: 20230915)
use_csvRequired  -

Uses CSV if true, legacy JSON if false.

Type: boolean (Default: false)
ivlRequired  -

The interval size in milliseconds. 1 minute intervals is 60000. Omitting this value or setting it to 0will provide tick-level data instead of aggregated / intervalized data.

Type: integer (Default: 900000)
rth  -

If this value is set to false and the request is for aggregated / intervalized data, the response will contain intervals from 00:00:000 ET to 23:59:999 ET. If the ivl is 0 or is unspecified, then rth will be forced to false. This means that all data for the day, even if it was outside regular trading hours would be returned. The default behavior is to only return data during regular trading hours (09:30:00.000 ET to 16:00.000 ET).

Type: boolean (Default: true)

Sample Code