Options spreadsheet in Excel - if that is what brought you here, you already know the problem. Brokerage platforms show you one strategy at a time. Screenshotting greeks into a notebook does not scale. And the moment you try to track more than three or four positions, the trading platform tabs stop being a system and start being noise.
This guide gives you a working options spreadsheet in Excel, and more importantly it shows you how it is built so you can shape it to your own approach. The workbook tracks an underlying watchlist, builds option contract symbols on the fly, pulls live greeks, prices entire strategies with Black-Scholes, and spills full option chains directly into cells. Every data cell is a MarketXLS formula. Nothing in this article is investment advice; everything here is educational and uses tickers only as examples of how the formulas behave.
Two files are linked below. The first is a static sample so you can see exactly what the workbook produces. The second is the live template that updates whenever MarketXLS refreshes.
Why an Options Spreadsheet in Excel Beats Broker Screens
Most retail options interfaces are optimised for placing one trade. They are not optimised for managing twelve open positions across six tickers with different expiries and overlapping greeks. A spreadsheet flips that. One row per leg. One column per metric. Net delta, net theta, and net vega in a single cell each.
| What a broker screen gives you | What a spreadsheet gives you |
|---|---|
| One trade ticket at a time | All open legs in one grid |
| Greeks per position | Net portfolio greeks |
| Static option chain snapshot | Live spill that refreshes |
| Pre-set strategy templates | Anything you can model with formulas |
| Bound to one broker login | Portable workbook you own |
The trade-off is real: a spreadsheet does not place orders. It is not meant to. It is the layer above order entry where you decide what is worth opening, what is worth rolling, and what is bleeding theta without justification.
Download the templates:
- - Pre-filled with sample values so you can preview the structure
- - Live-updating formulas, open with the MarketXLS Add-In active
What the Workbook Contains
The spreadsheet has six sheets. Each one answers a different question.
| Sheet | Question it answers |
|---|---|
| How To Use | Where do I start and how do I customise the template? |
| Main Dashboard | Which underlyings am I watching and what does volatility look like? |
| Option Positions | What do I currently have on and what are my net greeks? |
| Strategy Scenarios | What would these legs be worth at different spot prices? |
| Option Chain | What strikes and expiries are even available right now? |
| Greeks Reference | What is the delta, gamma, theta, vega for a specific contract? |
Each sheet has a "MarketXLS Functions Used" footer that lists the exact formulas powering that sheet. That is intentional. If you want to extend a column or rebuild a calculation, you can copy the formula from the footer and adapt it.
Sheet 1: The Main Dashboard
The Main Dashboard is the underlying watchlist. It is the first sheet you should edit because every other sheet pulls from it.
Input cells, highlighted yellow, sit at the top:
- Portfolio size (drives position sizing on every other sheet)
- Maximum risk per trade as a percent of portfolio
- Target days to expiry (a personal default)
- Profit target and stop loss as percentages of premium
- Default expiry date for any new contract you wire up
Below the inputs is the underlying table. The template ships with eight starter tickers covering large-cap tech, broad-market ETFs, and high-IV single names, but you can replace any cell in column A and the entire row re-anchors to the new symbol.
Real formulas in the template:
=QM_Last(A11)
=SimpleMovingAverage(A11, "50")
=SimpleMovingAverage(A11, "200")
=RelativeStrengthIndex(A11, "14")
=Beta(A11)
=DividendYield(A11)
=ImpliedVolatility(A11)
=FiftyTwoWeekLow(A11) & " - " & FiftyTwoWeekHigh(A11)
=ISOPTIONABLE(A11)
The ISOPTIONABLE column is small but underrated. If you accidentally drop in a ticker that does not have listed options, that column tells you so before you waste time building a strategy around it.
ImpliedVolatility on the underlying gives you a quick read on whether the symbol is sitting in cheap, normal, or expensive volatility relative to its own history. It is not a per-contract IV (that lives on the chain), but it is the right number to scan when you are screening for premium-selling candidates vs. premium-buying candidates.
Sheet 2: Option Positions
The Option Positions sheet is where the spreadsheet earns its keep. Each row is one option leg. You enter the underlying, side (Long or Short), type (Call or Put), quantity, strike, and expiry. Excel does the rest.
The clever piece is the OPTIONSYMBOL function. Brokerages identify options by OCC symbols like AAPL260619C00245000. Memorising the format is pointless. MarketXLS will build it for you:
=OPTIONSYMBOL(C4, H4, G4, E4)
Where the cells hold ticker, expiry date, strike, and Call/Put. The output is the contract symbol that every greek function expects. Once you have that symbol, the rest of the row is mechanical:
=QM_Last(C4) -> last price on the underlying
=OPT_DELTA(I4) -> delta of that specific contract
=OPT_GAMMA(I4) -> gamma
=OPT_THETA(I4) -> theta per day
=OPT_VEGA(I4) -> vega per 1% IV
=ImpliedVolatility(C4) -> underlying IV for context
=H4 - TODAY() -> days to expiry
Below the position grid is a Portfolio Greeks block. It is a single SUMPRODUCT per greek, weighted by quantity and side:
Net Delta = SUMPRODUCT(F4:F9, K4:K9, IF(D4:D9="Long", 1, -1))
Net Theta = SUMPRODUCT(F4:F9, M4:M9, IF(D4:D9="Long", 1, -1))
Net Vega = SUMPRODUCT(F4:F9, N4:N9, IF(D4:D9="Long", 1, -1))
Net Gamma = SUMPRODUCT(F4:F9, L4:L9, IF(D4:D9="Long", 1, -1))
That gives you, in one cell, the answer to "if the market opens up 1%, how does my book feel about it" (net delta times 100 dollars per point). The same block also tells you how much theta you are paying or collecting every calendar day.
That second number is the one most retail traders fail to look at. If your net theta is heavily negative, you are paying real money for the optionality. If it is meaningfully positive, you are collecting premium and your job is to manage the days you are wrong, not the average days. Knowing which side of zero you are on is the whole point of having the spreadsheet open.
Sheet 3: Strategy Scenarios
Strategy Scenarios is where you stress-test. You list each leg of a position, give it a strike and a type, and the sheet uses BLACKSCHOLESOPTIONVALUE to compute the theoretical price at the current spot, at -5%, and at +5%.
=BLACKSCHOLESOPTIONVALUE(B5, C5, D5, $B$2)
=BLACKSCHOLESOPTIONVALUE(B5, C5*1.05, D5, $B$2)
=BLACKSCHOLESOPTIONVALUE(B5, C5*0.95, D5, $B$2)
$B$2 is the days-to-expiry input cell. Drop it from 35 to 7 and the same grid recomputes how each leg is supposed to behave with the time decay collapsed. Drop it to 1 and you are simulating the final day theta crush. Raise it to 60 and you are simulating an earlier entry.
The BLACKSCHOLESOPTIONVALUE function is a theoretical model, not a quote. It is the right tool for "what would this strategy be worth if the world looks like X". For actual current bid/ask, the Option Chain sheet pulls live numbers.
A few practical uses for this grid:
- Before opening a new strategy, plug it in and look at the -5% column. If the loss is bigger than your risk-per-trade limit on the Dashboard, the strategy is too large.
- After opening a position, use the grid as your "if this then that" map. You can decide in advance what you would do if the underlying gaps 5% in either direction, instead of deciding under pressure.
- For credit spreads and iron condors, compare the +5% and -5% columns. A balanced range-bound trade should look symmetric. If it does not, your strikes are not where you think they are.
Educational only. Nothing here implies the strategy will be profitable.
Sheet 4: The Option Chain
The Option Chain sheet uses MarketXLS spill functions. You change one input cell, the ticker, and the entire chain rebuilds.
=QM_GetOptionChainActive(B2) -> active chain (calls + puts, multiple expiries)
=QM_GetOptionChainAtTheMoney(B2) -> ATM strikes only
=QM_GetOptionChainNearTerm(B2) -> the closest expiry chain
=QM_GetOptionExpireMinimum(B2) -> soonest available expiry date
=QM_GetOptionExpireMaximum(B2) -> latest available expiry date
=QM_GetRecentOptionStats(B2) -> recent volume and open interest summary
The spill functions populate cells below and to the right of the formula cell automatically. If you want to compare two underlyings side by side, put the second formula in column J or K with enough horizontal room for it to expand.
A quick playbook for using the chain sheet:
- Type your candidate ticker into the input cell.
- Look at
QM_GetOptionExpireMinimumandQM_GetOptionExpireMaximumto confirm the date range that exists. - Use
QM_GetOptionChainNearTermif you want to scan only the front-month, orQM_GetOptionChainAtTheMoneyif you want a tight strike window. - Pull liquidity stats from
QM_GetRecentOptionStatsbefore sizing anything in low-volume names.
The chain is where the spreadsheet replaces what people normally do inside their broker: scanning for liquidity, spotting unusual skew, sanity-checking spreads before pricing them.
Sheet 5: Greeks Reference
Greeks Reference is a focused sheet for individual contracts. You list a small set of options you care about - say, four candidates you are choosing between - and Excel returns delta, gamma, theta, and vega for each.
=OPTIONSYMBOL(A4, B4, C4, D4) -> build the OCC symbol
=OPT_DELTA(E4)
=OPT_GAMMA(E4)
=OPT_THETA(E4)
=OPT_VEGA(E4)
This sheet is useful for two specific decisions. First, choosing between strikes when you have already decided on a direction and an expiry. Same ticker, same expiry, different strikes - you can see immediately which gives you the delta exposure you want for the lowest theta drag. Second, sizing across positions. A high-vega trade and a high-gamma trade are very different risk profiles even if their dollar premium is identical.
If you want even more detail per contract, including bid/ask, QM_GetOptionQuotesAndGreeks spills a richer block for one option symbol:
=QM_GetOptionQuotesAndGreeks(E4)
That single formula returns quotes plus the full greek set in adjacent cells. Use it for individual deep-dives; use the column-by-column OPT_DELTA style for clean tabular layouts.
How to Adapt the Template to Your Own Style
The template is not opinionated about your strategy. It is opinionated about structure. Some adaptations that take less than a minute each:
- Income-focused traders can hide the Strategy Scenarios sheet and add a column on Option Positions for "Credit Collected" and "Profit Target Trigger" (compare current premium to your input target).
- Hedgers can repurpose the Net Delta cell at the bottom of Option Positions to a "Net Dollar Delta" by multiplying by 100 and by the average underlying price.
- Earnings traders can add an
EarningsDate(A11)column on Main Dashboard so you can avoid being long premium into a known event with high implied volatility crush risk. - Swing-style options buyers can add a "Trigger" column on Strategy Scenarios marking the spot price where you would close.
The spreadsheet stays simple if you resist the temptation to wire every possible MarketXLS function into a single cell. Pick the four or five metrics that drive your decisions and let the rest sit on the chain sheet for when you need them.
A Word on Volatility, IV, and Why the Spreadsheet Helps
Implied volatility is the part of the options world that hides from beginners and humbles experienced traders. The Main Dashboard's ImpliedVolatility column gives you a single number per ticker, but the real signal is comparing it across the watchlist.
If AAPL and MSFT are both in the low 20s but NVDA is in the mid 40s, an options buyer is paying very different prices for the same nominal exposure. A premium seller is also being paid very differently for the same nominal width. The spreadsheet does not tell you whether 22% is cheap or 45% is expensive - that requires history and context. But it tells you instantly, on every refresh, whether your watchlist is in a regime where buying premium or selling premium is the more expensive starting decision.
For per-contract IV, the chain sheet is the place. Each row in QM_GetOptionChainActive carries the implied volatility of that specific strike and expiry. That is where skew lives. Skew across strikes is often the most useful information on an option chain, and being able to spill the whole chain into Excel makes it visible without manual click-throughs.
Common Mistakes the Spreadsheet Helps Avoid
Three patterns that show up over and over in retail options trading, all of which the workbook catches by accident if you actually look at it:
- Ignoring net theta on a portfolio basis. A trader can be net long four "small" positions and still be paying meaningful theta every day. The Portfolio Greeks block on Option Positions makes that explicit.
- Sizing each position individually. Three uncorrelated calls on three tech names are not three uncorrelated bets - they are roughly the same bet wearing different costumes. Net Delta on the same block exposes that.
- Confusing theoretical value with current bid/ask. Black-Scholes prices in the Strategy Scenarios sheet are model values. The chain sheet shows what people are actually willing to pay. The gap between the two is real and matters most in illiquid contracts.
Spreadsheets do not magically fix any of this. They make the underlying numbers hard to ignore.
Building It Yourself From Scratch (If You Prefer)
If you want to start from a blank workbook instead of the template, the minimum viable options spreadsheet in Excel needs five things:
- A ticker column. One row per underlying or per option leg.
- Live price.
=QM_Last(ticker)is the workhorse. - A contract symbol builder.
=OPTIONSYMBOL(ticker, expiry, strike, call_or_put)so you never type OCC symbols by hand. - At least delta and theta per leg.
=OPT_DELTA(symbol)and=OPT_THETA(symbol). Gamma and vega come next. - A
SUMPRODUCTto roll up. Net greeks across all rows.
That is it. Five formulas, repeated. Everything else, including the scenario grid and the chain spill, is convenience built on top of those primitives. The downloadable template is a worked example of that pattern, not a magic black box.
FAQ
How do I make an options tracker in Excel?
Start with one row per option leg. Each row should hold the underlying ticker, side (Long or Short), type (Call or Put), quantity, strike, and expiry. Use =OPTIONSYMBOL(ticker, expiry, strike, type) to build the OCC contract symbol, then =OPT_DELTA(symbol), =OPT_THETA(symbol), =OPT_VEGA(symbol), and =OPT_GAMMA(symbol) to populate greeks. Roll up net greeks with SUMPRODUCT across the rows. That is the entire core of any options tracker.
Can Excel pull live option chain data?
Yes, with the MarketXLS Add-In. =QM_GetOptionChainActive("AAPL") spills the active chain into adjacent cells. There are variants for at-the-money only, near-term expiry only, monthlies, weeklies, and quarterlies. The chain refreshes every time MarketXLS refreshes.
What MarketXLS function gives me option greeks?
Per-leg greeks come from OPT_DELTA, OPT_GAMMA, OPT_THETA, OPT_VEGA, and OPT_RHO, each taking the option symbol as the argument. QM_GetOptionQuotesAndGreeks(symbol) spills bid, ask, and the full greek set in one block. For the implied volatility on the underlying itself, use =ImpliedVolatility(ticker).
How do I price a theoretical option in Excel?
Use =BLACKSCHOLESOPTIONVALUE(ticker, strike, "Call" or "Put", days_to_expiry). The function applies the standard Black-Scholes model using the live underlying price and an implied volatility input. For a version where you can override the volatility or interest rate assumptions, use BLACKSCHOLESOPTIONVALUEWITHUSERINPUTS.
Does this spreadsheet work for spreads and condors, not just single legs?
Yes. Each leg is one row on Option Positions. A vertical spread is two rows with the same expiry and different strikes. An iron condor is four rows. The Portfolio Greeks block at the bottom uses SUMPRODUCT with an IF on the side column, so longs and shorts net correctly. Strategy Scenarios values each leg with BLACKSCHOLESOPTIONVALUE; the spread P&L is just the sum of leg values with the right sign.
Is it safe to trade options based on a spreadsheet alone?
No. A spreadsheet is a measurement tool, not a recommendation engine. Use it to see what you have, what it is worth, and where the risks are. The decision to open, close, roll, or hedge is yours and depends on your risk tolerance, objectives, and time horizon. Nothing in this template or this article is investment advice.
The Bottom Line
An options spreadsheet in Excel pays for itself the first time it surfaces a number you would have missed - a net theta drain across four positions, a net delta that does not match the directional view you thought you had, a strike sitting in an illiquid chain you had not noticed. MarketXLS makes the formulas trivial. The discipline of looking at the workbook every morning is where the value compounds.
The two downloadable files at the top of this article are a fully working starting point. The sample shows the structure; the live template wires up the formulas. Replace the tickers with your own watchlist, edit the Option Positions sheet with your actual legs, and you have a portfolio dashboard that updates with the market.
If you want to go further - portfolio-level scenario analysis, automatic alerts when net delta drifts outside a band, or a historical journal of past trades - those are natural next steps. The MarketXLS function library has the building blocks. Explore them at https://marketxls.com, and if you would like a walkthrough of how to wire it into your specific workflow, book a demo.
This article is educational. It does not recommend any specific security, strategy, or position. Options trading involves substantial risk and is not suitable for every investor.