Option Chain Data Thinkorswim: Complete Excel Import Guide 2025

In this article

There are three ways to get option chain data from Thinkorswim into Excel. The Scan tab's "Export to Excel" gives a static snapshot. The RTD link (=RTD("tos.rtd",,"LAST",symbol)) streams live values but only on Windows, with Thinkorswim running on the same computer. The MarketXLS add-in's =QM_GetOptionChain("AAPL") returns a chain without Thinkorswim at all, from QuoteMedia data (end-of-day on the Standard plan, real-time on Advanced and Business).

See it in actionMarketXLS video

Try it in your own spreadsheet

Get the free MarketXLS sample workbook (.xlsx).

No account needed. MarketXLS live data requires a paid plan. Preview workbook

Explore more videos
Option Chain Data Thinkorswim export to Excel showing scan tab settings and option chain results

Thinkorswim (ToS) is Charles Schwab's trading platform (formerly TD Ameritrade's). Moving its option data into Excel lets you add custom screening logic, multi-leg P&L models, historical snapshots, and journaling. The sections below walk through each method and compare them.

Why Export Option Chain Data from Thinkorswim to Excel?

Traders move option chain data into Excel to filter, model, and log it in ways a trading platform does not:

  • Custom Filtering: Excel lets you filter by any combination of Greeks, volume, open interest, bid-ask spread, or implied volatility, including combinations ToS scan filters do not offer.
  • Strategy Modeling: Build multi-leg strategy P&L models with custom formulas, scenario analysis, and sensitivity tables.
  • Historical Tracking: Log option chain snapshots over time to analyze how implied volatility, open interest, and Greeks evolve.
  • Portfolio Integration: Combine option chain data with your portfolio positions, account balance, and risk metrics in a single dashboard.
  • Automation: Once data is in Excel, you can use VBA macros or Power Query to automate repetitive analysis tasks.
  • Sharing and Reporting: Excel files are easily shared with colleagues, mentors, or trading groups for collaborative analysis.

Method 1: Thinkorswim Scan Tab Export (Manual Method)

The Scan tab export is the simplest way to get Thinkorswim option data into Excel. It filters options with the built-in scanner, then copies the results for pasting into a workbook.

Step 1: Open the Scan Tab

Go to the Scan section in Thinkorswim (as shown in the navigation bar at the top of the platform). This is where you will configure your option filters and generate results that can be exported.

Step 2: Configure Your Scan Criteria

For this example, we'll scan for options on stocks that appear in both the S&P 100 and DOW Jones Industrial Average indices. Fill in the required fields:

  • Scan in: Select "S&P 100" (or your preferred index/watchlist)
  • Intersect with: Select "Dow Jones Industrial Average"
  • Instrument type: Options

This narrows your results to options on blue-chip stocks that are in both major indices.

Step 3: Set Filter Parameters

Continue refining your scan with specific option parameters. For example, to filter by delta:

  • Minimum Delta: -0.5
  • Maximum Delta: 0.5

These delta values focus on at-the-money and slightly out-of-the-money options, which are typically the most liquid and actively traded. You can also add filters for:

  • Days to Expiration (DTE): e.g., 20–60 days
  • Volume: Minimum daily volume threshold
  • Open Interest: Minimum open interest
  • Implied Volatility: IV range
  • Bid-Ask Spread: Maximum spread width

After entering your criteria, select "Options" in the dropdown and click the Scan button.

Step 4: Review and Export Results

The platform will display all options that satisfy your conditions. Each row shows the option symbol, strike price, expiration date, bid, ask, last price, volume, open interest, and Greeks (delta, gamma, theta, vega).

To export:

  1. Click the print/export icon (usually in the upper-right area of the results panel)
  2. Select Export to Excel from the dropdown menu
  3. A pop-up message will appear with instructions for pasting. Click OK

Step 5: Paste into Excel

Open a new Excel workbook and paste the copied content (Ctrl+V or Cmd+V). The data will populate with column headers and all the option data from your scan.

Tips for the Manual Export Method:

  • The export captures a snapshot; data does not update automatically
  • Re-run the scan and export process each time you need fresh data
  • Use Excel's Sort & Filter feature to further refine the exported results
  • Save the workbook with a date-stamped filename for historical tracking

The Thinkorswim RTD (Real-Time Data) link connects a running copy of Thinkorswim to Excel on Windows, so option values update live without re-exporting.

Thinkorswim provides an RTD server that Excel can connect to using the =RTD() function. This sends a request to the running ToS application, which returns live data directly into your spreadsheet cells.

Prerequisites

  • Thinkorswim desktop application must be running on the same computer
  • Excel must be open simultaneously
  • You need the correct RTD server name and topic strings for ToS

RTD Formula Syntax

The general syntax for pulling option data via RTD from Thinkorswim is:

=RTD("tos.rtd",, "LAST", ".AAPL250321C200")

Where:

  • "tos.rtd": the RTD server identifier for Thinkorswim
  • The second parameter is blank (empty string for local server)
  • "LAST": the data field (can also be "BID", "ASK", "VOLUME", "DELTA", "GAMMA", "THETA", "VEGA", "IMPL_VOL", etc.)
  • ".AAPL250321C200": the ToS option symbol

Common RTD Data Fields for Options

Field NameDescription
LASTLast traded price
BIDCurrent bid price
ASKCurrent ask price
VOLUMEDaily trading volume
OPEN_INTOpen interest
DELTAOption delta
GAMMAOption gamma
THETAOption theta (daily)
VEGAOption vega
IMPL_VOLImplied volatility
MARKMark price (mid of bid/ask)
HIGHDay's high
LOWDay's low

Understanding ToS Option Symbol Format

Thinkorswim uses a specific symbol format for options:

.TICKERYYMMDD[C/P]STRIKE

For example:

  • .AAPL250321C200: AAPL March 21, 2025, $200 Call
  • .SPY250620P500: SPY June 20, 2025, $500 Put

Setting Up an RTD-Based Option Chain Sheet

  1. Column A: List the option symbols you want to track
  2. Column B: =RTD("tos.rtd",,"LAST",A2) for last price
  3. Column C: =RTD("tos.rtd",,"BID",A2) for bid
  4. Column D: =RTD("tos.rtd",,"ASK",A2) for ask
  5. Column E: =RTD("tos.rtd",,"DELTA",A2) for delta
  6. Column F: =RTD("tos.rtd",,"IMPL_VOL",A2) for implied volatility
  7. Column G: =RTD("tos.rtd",,"VOLUME",A2) for volume

Advantages of RTD Link:

  • Live data: updates automatically while ToS is running
  • Customizable: pull exactly the data fields you need
  • No manual re-export: continuous feed

Limitations of RTD Link:

  • Requires ToS desktop application running on the same machine
  • Performance can degrade as the number of RTD cells grows
  • Only available on Windows (Mac users cannot use RTD)
  • Data stops when ToS is closed

The MarketXLS =QM_GetOptionChain() function pulls an option chain into Excel without Thinkorswim running, without manual exports, and without an RTD server. It requires a MarketXLS subscription.

How It Works

MarketXLS option data comes from QuoteMedia. Options data is end-of-day on the Standard plan and real-time streaming on the Advanced and Business plans. Streaming uses one live symbol subscription per option contract, and options tracking is limited to 300 symbols. See options data for details.

Key Formula: QM_GetOptionChain

=QM_GetOptionChain("AAPL")

Formula documentation: QM_GetOptionChain

This formula returns the option chain for Apple (AAPL): expirations, strikes, calls, and puts with bid, ask, last, volume, open interest, and Greeks.

Additional MarketXLS Option Functions

FunctionPurposeExample
=QM_GetOptionChain("AAPL")Full option chain for a stockReturns all strikes, expirations, Greeks
=OptionSymbol("AAPL", "2026-03-21", "C", 200)Generate the QuoteMedia option symbolReturns @AAPL 260321C00200000 (ticker padded to 6 characters)
=QM_Last("@AAPL 260321C00200000")Last price of specific optionReturns current option price
=QM_GetOptionQuotesAndGreeks("AAPL")Full quotes with all GreeksDelta, gamma, theta, vega, rho, IV
=QM_Stream_Last("@AAPL 260321C00200000")Streaming live option priceContinuously updating price
=QM_Stream_Bid("@AAPL 260321C00200000")Streaming bid priceLive bid updates
=QM_Stream_Ask("@AAPL 260321C00200000")Streaming ask priceLive ask updates
=QM_Stream_Delta("@AAPL 260321C00200000")Streaming deltaLive Greek updates
=QM_Stream_ImpliedVolatility("@AAPL 260321C00200000")Streaming IVLive implied volatility

Step-by-Step: Setting Up MarketXLS for Option Chain Data

  1. Install MarketXLS: On Windows, install the desktop add-in; on Mac or Excel for the web, install the Microsoft 365 add-in from Microsoft AppSource (see choose your version)
  2. Activate your license: On Windows, enter your license key from the MarketXLS ribbon; in the Microsoft 365 add-in, sign in with your MarketXLS account and prefix formulas with mxls.
  3. Open a new workbook and type in cell A1: =QM_GetOptionChain("AAPL")
  4. Press Enter. The option chain data populates across multiple rows and columns
  5. Use Excel filtering to narrow down by expiration date, strike range, or option type

Building an Options Screener with MarketXLS

An options screener in Excel combines the stock's price, context, and chain on one sheet:

Cell A1: "AAPL"                              (Stock symbol)
Cell B1: =QM_Last("AAPL")                   (Current stock price)
Cell C1: =PERatio("AAPL")                   (Fundamental context)
Cell D1: =RSI("AAPL")                       (Technical momentum)

Formula documentation: QM_Last, PERatio, RSI

Then in row 3 and below:

Cell A3: =QM_GetOptionChain(A1)             (Full option chain)

Formula documentation: QM_GetOptionChain

Apply Excel filters to the option chain output to find:

  • High implied volatility options (potential premium selling opportunities)
  • High volume / open interest strikes (most liquid contracts)
  • Specific delta ranges (e.g., 0.30 delta for covered call candidates)
  • Narrow bid-ask spreads (better execution)

Comparison: Three Methods for Getting Option Chain Data in Excel

FeatureToS Manual ExportToS RTD LinkMarketXLS
Real-time dataNo (snapshot)Yes (live)End-of-day on Standard; real-time streaming on Advanced and Business
Requires ToS runningOnly during exportYes (always)No
Operating systemWindows/MacWindows onlyWindows (desktop add-in); Mac and web (Microsoft 365 add-in)
Setup complexityEasyModerateEasy
Data freshnessManual refreshContinuousContinuous
Symbol limitsNone (static)Performance-boundOptions tracking limited to 300 symbols
Greeks includedYesYesYes
Historical dataNoNoYes (via GetHistory)
Multiple symbolsOne scan at a timeManual setup per symbolOne formula per symbol
CostFree (ToS account)Free (ToS account)MarketXLS subscription
Best forOccasional analysisLive tracking on Windows with ToS openChains without ToS, historical data, Mac

Working with Option Chain Data in Excel: Practical Techniques

Once you have option chain data in Excel (by any method), here are practical techniques for analysis.

Technique 1: Covered Call Screening

A covered call involves owning 100 shares and selling a call option against them. To screen covered call candidates from option chain data:

  1. Filter for call options only
  2. Set DTE filter to 30–45 days
  3. Sort by premium yield (option price / stock price × 100)
  4. Look for delta between 0.25–0.35 (out-of-the-money with reasonable premium)
  5. Verify bid-ask spread is narrow (less than 5% of option price)

Technique 2: Put Selling for Income

Selling cash-secured puts is a popular income strategy. Screen option chain data for:

  1. Filter for put options only
  2. Set DTE to 20–45 days
  3. Look for delta between -0.20 and -0.30
  4. Calculate annualized return: =(Premium / Strike Price) × (365 / DTE) × 100
  5. Verify adequate open interest (>100 contracts) for liquidity

Technique 3: Hedging with Protective Puts

For existing stock positions, use option chain data to find protective puts:

  1. Identify your stock's current price using =QM_Last("AAPL")
  2. Pull the put option chain with =QM_GetOptionChain("AAPL")
  3. Filter for puts with strike near or below current price
  4. Compare the cost of protection (put premium) vs. the downside you're hedging
  5. Evaluate different expirations for cost efficiency

Example from option chain data:

Suppose you own a stock trading at $50. You buy a put option at $5 premium with a $45 strike price for a 1-year period. At expiration:

  • If the stock rises to $55: You don't exercise the put. You gained $5 on the stock and paid $5 for the put, so you break even.
  • If the stock drops to $40: You exercise the put and sell at $45. Your loss is $10 per share ($5 from $50 to $45, plus the $5 premium), the same as the $10 loss without the put.
  • If the stock drops to $30: Your loss is still capped at $10 per share, versus $20 without the put. The put only pays off once the stock falls below $40 (strike minus premium).

Technique 4: Bear Put Spread Analysis

The bear put spread involves buying a higher-strike put and selling a lower-strike put with the same expiration. Use option chain data to model this:

Setup example (stock trading at $40):

  • Buy 1 put at $45 strike for $4.75
  • Sell 1 put at $40 strike for $1.75
  • Net debit: $3.00
Stock Price at ExpirationLong 45 Put P/LShort 40 Put P/LNet Spread P/L
$46-$4.75+$1.75-$3.00
$45-$4.75+$1.75-$3.00
$44-$3.75+$1.75-$2.00
$43-$2.75+$1.75-$1.00
$42-$1.75+$1.75$0.00
$41-$0.75+$1.75+$1.00
$40+$0.25+$1.75+$2.00
$39+$1.25+$0.75+$2.00
$38+$2.25-$0.25+$2.00
$37+$3.25-$1.25+$2.00

Key observations:

  • Maximum loss: $3.00 (net debit paid), which occurs when the stock stays above $45
  • Maximum profit: $2.00 (width of strikes minus debit), which occurs when the stock falls to $40 or below
  • Breakeven: $42.00 (higher strike minus net debit)

This analysis is easily done in Excel once you have option chain data with real bid/ask prices.

Technique 5: Implied Volatility Analysis

Use option chain data to analyze implied volatility patterns:

  1. Pull the full option chain with =QM_GetOptionChain("AAPL")
  2. Create a volatility smile/skew chart by plotting IV against strike price for a single expiration
  3. Compare IV across different expirations to build a term structure
  4. Identify IV crush opportunities around earnings by comparing pre-earnings IV to historical averages

Automating Option Chain Data Updates with VBA

For traders who use the manual Thinkorswim export or need to log data periodically, here's a simple VBA approach:

Sub LogOptionData()
    Dim ws As Worksheet
    Dim lastRow As Long
    
    Set ws = ThisWorkbook.Sheets("OptionLog")
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row + 1
    
    ' Log timestamp and current option prices
    ws.Cells(lastRow, 1).Value = Now()
    ws.Cells(lastRow, 2).Value = ws.Cells(1, 2).Value ' Option symbol
    ws.Cells(lastRow, 3).Value = ws.Cells(1, 3).Value ' Last price
    ws.Cells(lastRow, 4).Value = ws.Cells(1, 4).Value ' IV
    ws.Cells(lastRow, 5).Value = ws.Cells(1, 5).Value ' Delta
End Sub

Set this macro to run on a timer (every 5–15 minutes) to build a time series of option prices and Greeks throughout the trading day.

Troubleshooting Common Issues

ToS Export Shows Empty Data

  • Ensure your scan criteria aren't too restrictive
  • Verify you have real-time data enabled in your ToS account
  • Check that the market is open (options data may not be available outside trading hours)

RTD Formulas Show #N/A

  • Confirm Thinkorswim is running on the same computer
  • Verify the option symbol format is correct (.AAPL250321C200)
  • Check that RTD is enabled in Excel: File → Options → Add-ins → Enable RTD

MarketXLS Returns Errors

  • Verify your MarketXLS license is active and logged in
  • Check the stock symbol is valid and optionable
  • Ensure you have an internet connection for data feeds
  • For option-specific functions, build the symbol with =OptionSymbol() rather than typing it; the QuoteMedia format pads the ticker to 6 characters (@AAPL 260321C00200000)
  • On Mac or Excel for the web, use the mxls. prefix

Frequently Asked Questions

How do I export option chain data from Thinkorswim to Excel?

Export Thinkorswim option chain data in three steps: (1) go to the Scan tab and configure your criteria (index, delta range, DTE, etc.), (2) click Scan to generate results, then (3) click the print/export icon and select "Export to Excel." Paste the copied content into a new Excel workbook. This creates a static snapshot that you can filter and analyze using standard Excel tools. For live data, consider the RTD link method or MarketXLS instead.

Can I get real-time option chain data from Thinkorswim in Excel?

Yes, on Windows, through the Thinkorswim RTD (Real-Time Data) link. Use the formula =RTD("tos.rtd",,"LAST",".AAPL250321C200") to pull live prices. You can also request BID, ASK, DELTA, GAMMA, THETA, VEGA, and IMPL_VOL fields. The RTD method requires Thinkorswim to be running on the same Windows computer. Without ToS, MarketXLS offers =QM_Stream_Last() for streaming option prices on the Advanced and Business plans.

What is the easiest way to get option chains in Excel without Thinkorswim?

The simplest way without Thinkorswim is the MarketXLS add-in: type =QM_GetOptionChain("AAPL") in an Excel cell to get the chain with strikes, expirations, prices, and Greeks. No trading platform needs to be running. The data comes from QuoteMedia and is end-of-day on the Standard plan, real-time on Advanced and Business. On Mac, use the Microsoft 365 add-in with the mxls. prefix.

How do I analyze option Greeks from Thinkorswim data in Excel?

Thinkorswim scan exports include Greeks (delta, gamma, theta, vega) in the results. Once in Excel, you can sort by any Greek, create scatter plots of delta vs. strike price, build volatility skew charts, or calculate portfolio-level Greeks by summing across positions. With MarketXLS, use =QM_GetOptionQuotesAndGreeks("AAPL") for comprehensive Greeks data, or stream individual Greeks with =QM_Stream_Delta(), =QM_Stream_Gamma(), =QM_Stream_Theta(), and =QM_Stream_Vega() functions.

Can I use option chain data to screen for covered call or put selling candidates?

Yes. Option chain data in Excel can be filtered for covered call and put selling candidates. For covered calls, filter for calls with 30–45 DTE and delta between 0.25–0.35, then calculate premium yield (option price / stock price). For put selling, filter for puts with delta between -0.20 and -0.30 and calculate annualized return. With MarketXLS, =QM_GetOptionChain() returns a range you can filter directly with Excel's Sort & Filter.

No. The Thinkorswim RTD link works only on Windows because RTD (Real-Time Data) is a Windows COM-based technology. Mac users cannot use RTD formulas in Excel. The alternatives for Mac users are: (1) use the manual scan-and-export method in ToS, or (2) use the MarketXLS Microsoft 365 add-in from Microsoft AppSource, which runs on Excel for Mac with the mxls. prefix. Some functions differ by platform, so check /formulas.

Summary

Three methods get option chain data from Thinkorswim into Excel. For occasional analysis, the Scan tab export is quick and free. For live values on Windows with Thinkorswim open, the RTD link streams data. To get chains without Thinkorswim running, or on Mac, the MarketXLS =QM_GetOptionChain() formula returns a chain in one cell, alongside =OptionSymbol(), =QM_Last(), =QM_GetOptionQuotesAndGreeks(), and the =QM_Stream_ functions for streaming data (Advanced and Business plans).

Ready to streamline your options analysis workflow? Explore MarketXLS plans at MarketXLS to get option chains, Greeks, and the rest of the 1000+ function library in Excel.

None of the content published on marketxls.com constitutes a recommendation that any particular security, portfolio of securities, transaction, or investment strategy is suitable for any specific person. The author is not offering any professional advice of any kind. The reader should consult a professional financial advisor to determine their suitability for any strategies discussed herein.

Important Disclaimer

The information provided in this article is for educational and informational purposes only and should not be construed as investment advice, a recommendation, or an offer to buy or sell any securities. MarketXLS is a financial data platform and is not a registered investment advisor, broker-dealer, or financial planner. Always conduct your own research and consult with a qualified financial professional before making any investment decisions. Past performance is not indicative of future results. Trading and investing involve substantial risk of loss.

The Professional Investment Platform Inside Excel

Market data and options research tools in Excel

  • Option prices and Greeks in Excel
  • Historical options data in Excel
  • US stock and index options data
  • Prices and data on underlying stocks and indices
  • Use MarketXLS formulas in your Excel worksheets
  • Explore options research workflows in Excel
  • Excel formulas and sample worksheets

See MarketXLS in action

Bring this workflow into Excel.

Book a demo with our team to see how MarketXLS supports your market research.

Ankur
AnkurFounder & CEO, MarketXLS
Book a demo