Option Trades
Filter the full option trades tape.
This endpoint returns the same data and supports the same filter params as on the unusualwhales website https://unusualwhales.com/live-options-flow.
This endpoint only returns data for the latest trading day. To retrieve historical option trades,
use the /api/option-trades/full-tape/:date endpoint to download the full market file for a trading day.
List parameters may be supplied using repeated bracket notation, for example
tags[]=ask_side&tags[]=bid_side. Unix timestamps may be supplied in seconds or milliseconds.
Pagination uses the older_than and newer_than cursors, which accept Unix seconds, Unix milliseconds
or ISO 8601 values. page and offset are not supported. limit defaults to 50 and has a maximum of
500. A cursor earlier than the latest trading day returns HTTP 400. Use
/api/option-trades/full-tape/{date} for older history.
The side-volume fields (ask_vol, bid_vol, mid_vol and no_side_vol) sum to volume.
multi_vol and stock_multi_vol are overlapping subsets of volume, not separate amounts to subtract.
On this REST endpoint, executed_at, nbbo_bid_time and nbbo_ask_time are ISO 8601 timestamps in UTC.
On the WebSocket option_trades channel, the same fields are Unix epoch timestamps in milliseconds.
For CBOE index tickers such as SPX or VIX the index price is returned as null and the row is marked missing_periscope. If the request filters with min_underlying_price, max_underlying_price, min_stock_price, max_stock_price, min_diff, max_diff, min_implied_move, max_implied_move, min_return_on_capital, max_return_on_capital, min_return_on_capital_perc or max_return_on_capital_perc, rows for these index tickers are left out of the response. CBOE index prices require provisioned access and CBOE approval. Contact [email protected], [email protected] or [email protected] to request access.
Authorizations
Query Parameters
Query language expression combined with the other filters using and. Use it to compare fields with each other and to filter on calculations, such as strike > spot. Get the supported fields, operators and functions from /api/alerts/query/grammar?target=option_trade. An expression that does not parse, or that uses prev_iv, iv_change, ticker_vol or ticker_vol_mult, returns HTTP 400.
"where premium > 100k and strike > spot"
Whether to roll up related option transactions executed at the same time into a single transaction in the response. This allows filters to apply to their combined premium and size. For example, if one $25,000 order is reported as ten $2,500 transactions, it will only match min_premium=20000 when include_agg_trades=true.
true
Minimum value of (contract_expiry_date - underlying_next_earnings_date) in days. Negative = contract expires BEFORE earnings; zero = same day; positive = AFTER earnings. Use together with max_days_between_expiry_and_earnings to target a window around the next earnings announcement. Examples: to exclude contracts that expire after the next earnings, set max_days_between_expiry_and_earnings=-1. To target contracts that expire the same week as (and after) earnings, set min_days_between_expiry_and_earnings=1&max_days_between_expiry_and_earnings=6. Contracts whose underlying has no known next earnings date are excluded whenever this filter is used.
1
Maximum value of (contract_expiry_date - underlying_next_earnings_date) in days. Negative = contract expires BEFORE earnings; zero = same day; positive = AFTER earnings. Use together with min_days_between_expiry_and_earnings to target a window around the next earnings announcement. Examples: to exclude contracts that expire after the next earnings, set max_days_between_expiry_and_earnings=-1. To target contracts that expire the same week as (and after) earnings, set min_days_between_expiry_and_earnings=1&max_days_between_expiry_and_earnings=6. Contracts whose underlying has no known next earnings date are excluded whenever this filter is used.
6
The minimum ratio of contract volume to contract open interest. If the open interest of a contract is zero, then this ratio is evaluated as if the open interest of the contract was one (to avoid divide by zero errors). For example, if you set this ratio to 10, then a contract with zero open interest and 7 volume will NOT be included in your results.
x >= 00.32
The maximum ratio of contract volume to contract open interest. If the open interest of a contract is zero, then this ratio is evaluated as if the open interest of the contract was one (to avoid divide by zero errors). For example, if you set this ratio to 50, then a contract with zero open interest and 75 volume will NOT be included in your results.
x >= 01.58
Minimum trade premium in dollars.
"25000"
Maximum trade premium in dollars.
"25000"
