Home/Learn/Rolling options

Learn · Rolling options

How to calculate profit when rolling an option

You sold a covered call for $440, rolled it for another $190, then bought it back for $250. Did you make $440? $630? $380? Your broker shows four separate trades — the answer lives in the chain.

Oct 7, 2026 6 min read ThetaIQ Learn

The short answer

A roll is two trades dressed as one: you buy back the option you're short (a debit) and sell a new one (a credit). So the profit on a rolled position isn't any single fill — it's the running total of every credit and debit from the first sale to the final close:

Realized profit = (every premium collected) − (every buyback paid) Per share, × 100 per contract. Credits are positive, debits negative — the signs do the work.

That's the whole formula. Everything confusing about roll accounting comes from the pieces being scattered across separate trades, often weeks apart.

Worked example: a rolled covered call

You own 100 shares of XYZ and run a covered call campaign. The chain:

DateActionCash (per share)Cash (1 contract)
Aug 19Sell Sep $50 call+$4.40+$440
Sep 12Buy back Sep $50 call (roll, leg 1)−$5.20−$520
Sep 12Sell Oct $55 call (roll, leg 2)+$7.10+$710
Oct 3Buy back Oct $55 call (final close)−$2.50−$250
Realized option profit+$3.80+$380

Four fills, one number: $380. Not $440 (that ignores the buybacks), and not $630 (that's credits only).

Try it with your own fills

Roll chain calculator

Per-share prices, exactly as filled. Roll credits are positive if you collected, negative if you paid.

Realized option profit: $380

The net-credit trap

When you place a roll, the broker quotes it as a single net credit: "$1.90 credit." That number is real, but it already hides a buyback — the $5.20 you paid to escape the Sep call is netted against the $7.10 you collected for the Oct call. Two mental errors follow:

The discipline is simple: evaluate the chain's running total, never the leg. A roll that collects $1.90 while the chain sits at +$380 is a win. The same $1.90 collected while the chain sits at −$200 is digging.

What changes when the chain ends early

The final call expires worthless

There's no last buyback — every credit is kept. In the example, if the Oct $55 call had expired out of the money, realized option profit is $630 ($440 + $190), and you keep the shares to sell the next call.

The shares get called away

Assignment ends the option chain and starts the stock math. You keep all option premium collected to that point ($630), and your shares sell at the strike ($55). The full campaign result is option premium + (strike − your real cost basis) × shares. This is where most sellers' spreadsheets break: the premium you've collected should reduce what the shares "really" cost you, so the called-away sale at $55 is measured against basis after premium — not the price on your original fill.

You roll a cash-secured put instead

Identical math. Credits minus debits across the chain. The only difference is what sits underneath: collateral instead of shares, and assignment means buying stock at the strike — at which point the put premium you banked along the way lowers your cost basis in the shares.

Why this is hard in practice

None of the arithmetic is hard. What's hard is that your broker fragments the chain into separate trades — different dates, different rows, sometimes different accounts — and asks you to reconstruct it. Three rolls into a busy month, across a dozen tickers, "what did I actually make on XYZ?" becomes an archaeology project with a spreadsheet and a headache.

ThetaIQ exists because of exactly this. Log the original trade and each roll against it, and the app keeps the chain together: the opening premium, every roll credit or debit, the closing cost, and one realized P&L number for the whole campaign. If the shares are assigned mid-chain, the premium folds into the lot's cost basis automatically — so the called-away math above is already done when you get there.

Stop reconstructing chains.
Track the roll, keep the number.

Free plan, any broker, sixty seconds to set up.

Track your rolls free →