Options trade side (at the ask, at the bid, mid)

The side of an option trade is inferred by comparing its price with the quotes in force when it printed: at or above the ask it is read as buyer-initiated, at or below the bid as seller-initiated, and between the two as mid, with no reliable side. Labels such as bought or sold on a flow tape are this inference, not a report from the exchange.

Senzoukria · Glossary · Updated September 2026


At a glance

At or above ask
Buyer-initiated (BUY)
At or below bid
Seller-initiated (SELL)
Between bid and ask
Mid: side not inferable from quotes

The quote rule

Most option trade reports contain a price, a size, a time and a venue, but not which party crossed the spread. Flow tools infer it from the quote: a buyer who pays the offer is the aggressor on a print at the ask, a seller who hits the bid on a print at the bid. Prints above the ask or below the bid are usually treated like their nearest side. A print inside the spread may be a negotiated price, a price improvement or a leg of a complex order, and the quote alone cannot say who initiated it.

Worked example

A contract is quoted 1.20 bid, 1.30 ask. Prints at 1.30 and 1.32 are labelled buys, at 1.20 a sell, at 1.25 mid. If the quote had moved to 1.25 by 1.35 just before the 1.30 print, the correct label for that print would be mid, not buy: comparing a print with a quote taken at another moment can change its classification.

Classification against a 1.20 × 1.30 quote
Print priceLabelReading
1.32BuyAbove the ask: buyer paid up
1.30BuyAt the ask
1.25MidInside the spread: not attributable
1.20SellAt the bid

Why labels mislead

  • Quote timing: the quote must be the one in force at the trade's timestamp. A quote taken seconds later is an approximation.
  • Complex orders: legs of a spread are often priced as a package and can print at or outside the individual quotes, producing a buy on one leg and a sell on the other that together express one view.
  • Direction is a second inference: buying a put is bearish, selling a put is bullish, so the side label must be combined with the option type before reading direction.
  • Opening or closing is unknown: a buy at the ask may close a short position rather than open a long one.

In Senzoukria

Option Flow labels each print BUY, SELL, MID or leaves it without side. On the Alpaca and Tradier paths, the app compares the print price with the latest bid and ask obtained when it polls, not the quote at the instant of each trade, a limitation stated in its source; on the Tradier path, one side is inferred per contract for each poll. On the Databento path the side comes from the aggressor field of the OPRA record. A missing or crossed quote leaves the side unknown. Prints without a side are excluded from the Buy / Sell flow totals, which state the excluded premium, and from the net premium and hedging pressure measures, instead of being split between the two sides.

In the same section

This page in other languages

Frequently asked questions

Does a trade at the ask mean someone is bullish?
Only for calls, and only as a first reading. A buy at the ask on a put is bearish; a buy at the ask may also close a short position or be one leg of a spread whose overall direction differs. Side is one input among several.
Why do two flow services label the same trade differently?
They may use different quote snapshots, different rules for prints inside the spread, and different handling of complex-order trades. The underlying trade report is the same; the side is each vendor's inference.

Keep reading