← All posts
LessonOctober 31, 2026 · 7 min

How to Read Options Flow: Bought or Sold?

How to tell if options were bought or sold, then read the premium, sweeps vs blocks and open interest, with a worked example and the common traps.

By The Oracle · For education, not financial advice.

Options flow is the stream of individual options trades as they print, read one trade at a time. The first question about any print is whether it was bought or sold, and the answer comes from where it filled: at or above the ask reads as bought, at or below the bid reads as sold, and near the middle is unclear. Then check the contract (call or put, strike and expiry), the premium, how it was executed (a sweep, a block or a split), and its size next to open interest. No exchange reports who started a trade, so the side is a best guess, and one print rarely shows what the trader really holds.

Using MomoEdge? The FLOW feed lesson shows where each of these sits on screen. This guide covers how to read any flow print.

How to tell if options were bought or sold

Every trade has a buyer and a seller, so “bought” really means the buyer was the side in a hurry. Flow tools work it out by comparing the fill price with the best bid and ask at that moment:

  • At or above the ask. The buyer paid the sellers’ price, or more, to get filled. Read as bought.
  • At or below the bid. The seller accepted the buyers’ price, or less. Read as sold.
  • Between the two. Unclear. Closer to the ask leans bought and closer to the bid leans sold; dead in the middle is often a negotiated trade or one leg of a spread.

Three things make the read harder:

  • Orders that fill in pieces. A large order can fill partly at the ask and partly at the middle. A careful read weighs where most of the premium traded, not just the first fill.
  • Spreads. A multi-leg order trades at one net price, so each leg can print at a price that looks odd against its own quote. A call that seems sold at the bid may be the short leg of a bullish spread.
  • Wide or stale quotes. In thin contracts, or right at the open, the side can be close to a coin toss.

Then combine the side with the contract type for a rough read:

  • Calls bought. Bullish, or someone closing a short call.
  • Puts bought. Bearish, or protection on shares the trader owns.
  • Calls sold. Neutral to bearish, or income against shares (a covered call).
  • Puts sold. Neutral to bullish, or a way to buy the stock lower.

A big call print that was sold is not bullish. That one distinction separates useful flow reading from noise.

What a flow print shows

US options trade on more than a dozen exchanges, and every trade is reported to one consolidated feed. Flow tools take that feed, filter it down to the larger trades and add context. A typical row carries:

  • Ticker, call or put, strike and expiry. What was traded. Days to expiry (DTE) tells you how much time the trader bought.
  • Size and price. The number of contracts, and the option’s price per share.
  • Premium. The dollars that changed hands: price × contracts × 100.
  • The quote at the time. The bid and ask the trade filled against, which is what the bought or sold read comes from.
  • Open interest. The contracts already open in that strike and expiry at the start of the day.

Premium: the size of the bet

Premium is the cleanest measure of how much money went in. 1,000 contracts at $0.20 is $20,000. 1,000 contracts at $8.00 is $800,000. The contract count alone hides that difference.

Judge premium against the stock, not in the abstract. $500,000 in SPY options is routine within minutes; $500,000 in a small company’s options may be more than it trades in a week.

Sweeps, blocks and splits

  • Sweep. One order that fills across several exchanges at once, taking what is offered at each. The trader chose speed over price, so sweeps are often read as urgency.
  • Block. One large trade, usually arranged between two parties at a set price. Blocks show size, but they are often hedges, rolls or parts of a bigger structure.
  • Split. One large order broken into several smaller fills on the same exchange. Less urgent than a sweep, but it adds up.
  • Multi-leg. A spread or other combination sent as one order. In a feed ranked by size, each leg can show up on its own.

Opening or closing?

A buy at the ask could be a new bet, or someone closing a short. Open interest helps you tell. If a single trade is bigger than the open interest at the start of the day, at least part of it must have opened new contracts. If the trade is small next to open interest, it could just as easily be a close. The next morning, the change in open interest shows whether contracts were added or removed overall, though not by whom.

A worked example

Illustration, not live data. XYZ trades at $50. At 10:14 a sweep prints: 2,000 XYZ 55 calls, 21 DTE, filled at $1.50 against a $1.40 × $1.50 quote. Open interest is 800. One second later: 2,000 XYZ 60 calls, same expiry, filled at $0.60 against a $0.60 × $0.70 quote.

Read the first print alone and it looks like $300,000 of calls bought in a hurry (2,000 × $1.50 × 100). It filled at the ask, it swept several exchanges, and at 2.5 times the open interest, at least 1,200 of the contracts must be new.

Now read the second print. Same size, same expiry, sold at the bid, one second later. Together they look like a call spread: buy the 55s, sell the 60s. The net cost is $0.90 per share, or $180,000, and the most the spread can be worth is $5 per share, or $1,000,000, if XYZ is above $60 at expiry. It is still a bullish position, but a capped one, with $180,000 at risk rather than $300,000 of open-ended calls. A feed sorted by premium would show the first leg near the top and the second far below it.

Common traps

  • Hedges. A large put buy can protect a stock holding. It says nothing about where the trader thinks the stock is going.
  • Rolls. Closing one expiry and opening a later one prints as two large trades that mostly cancel out.
  • Index and ETF flow. SPY, QQQ and index options carry huge hedging volume every day. Big prints there are normal.
  • Known events. Heavy trading into earnings is expected. Compare it with the ticker’s past earnings weeks, not with a quiet one.
  • Every trade has two sides. For every buyer there is a seller, and plenty of large trades lose money.

Flow is a way to decide what deserves a closer look. It is one input next to the chart, the levels and your own risk plan, not a reason to buy or sell on its own. Turning a print into a plan, with a size and an exit you will actually keep to, is more a discipline problem than a data one; our Trader Psychology Field Guide is written for that part, and Volume I is free.

Reading flow in MomoEdge

MomoEdge’s FLOW tab lists notable options trades as they print, each with its premium, strike and expiry, where it filled from At Ask to At Bid, its size next to open interest, and a SWEEP badge when it filled across exchanges. The FLOW feed lesson shows how to read and filter it, and the Terminal Field Guide shows where FLOW fits next to the rest of the terminal. Flow is what traded today; for how that differs from dealer positioning, see options flow vs GEX, and for telling routine prints from rare ones, what counts as unusual options activity. The $10K account shows every trade our team takes with real money, winners and losers, before commissions and fees. When you want to read flow on live data, you can see what the terminal includes.

FAQ

How can you tell if an option was bought or sold?

Compare the fill price with the bid and ask at that moment. At or above the ask reads as bought, at or below the bid as sold, and near the middle as unclear. No exchange reports who started the trade, so it is always an inference.

Is options flow a buy or sell signal?

No. It shows trades other people made, with an inferred side and no view of their full position. Use it to find names worth studying, then make your own decision.

What is the difference between a sweep and a block?

A sweep is one order filled across several exchanges at once, chosen for speed. A block is one large trade, usually arranged between two parties at a set price.

How can I tell if a trade opened a new position?

Compare its size with the open interest at the start of the day. A trade bigger than the open interest must have opened at least some new contracts, and the next day’s open interest shows the net change.