How to Load Option Chains from Yahoo Finance to CSV
Contents
- Option Chains at Yahoo Finance
- Undocumented URLs to Download Option Chains from Yahoo Finance
- Loading Option Chains from Yahoo Finance with Batch Files
- Downloading Option Chains from Yahoo Finance using MARKET.CSV
Option Chains at Yahoo Finance
Yahoo Finance publishes US stock option chains.
You can open https://finance.yahoo.com/, search a ticker like YHOO, and click the 'Options' tab.
You can use URLs like https://finance.yahoo.com/quote/AAPL?p=AAPL to open pages with option chains directly.
Yahoo Finance has no links to download option chains to CSV.
Undocumented URLs to Download Option Chains from Yahoo Finance
Yahoo Finance uses a web service to load option chains into web pages.
The web service returns JSON and has URLs like these:
https://query1.finance.yahoo.com/v7/finance/options/YHOO https://query1.finance.yahoo.com/v7/finance/options/YHOO?date=1510876800
Specify the expiration date as a Unix timestamp.
You can use specialized download and parser utilities like gsqlcmd to download and convert JSON data to CSV.
For example, to get option chains use the command:
gsqlcmd convert ^ "https://query1.finance.yahoo.com/v7/finance/options/YHOO" ^ yhoo.csv /delay=200 /echoOutputFileName /pages=20 /rootPath=*.*.*.calls,*.*.*.puts
gsqlcmd in the webtocsv mode loads web data (JSON, XML, HTML, CSV) and converts the data to CSV.
Specify the /rootPath=*.*.*.calls,*.*.*.puts parser parameter that points to the JSON roots of call and put option chains.
gsqlcmd loads option chains for all expiration dates automatically. Just specify the /page=20 option.
Loading Option Chains from Yahoo Finance with Batch Files
Create a text file like 'task.txt' and place tickers one by line like:
TICKERS.TXT
AAPL FB GOOGL YHOO
Create a batch file like 'load.cmd' with the following commands:
LOAD.CMD
@echo off @for /F %%i in (tickers.txt) do ( gsqlcmd convert ^ "https://query1.finance.yahoo.com/v7/finance/options/%%i" ^ %%i.JSON %%i.CSV /delay=200 /echoOutputFileName /pages=20 /rootPath=*.*.*.calls,*.*.*.puts )
Run it. You will see the result:
C:>load.cmd
AAPL.CSV - 1210 rows FB.CSV - 960 rows GOOGL.CSV - 1814 rows YHOO.CSV - 384 rows
Pay attention to the /delay parameter. Use the delay to avoid banning your IP due to frequent multiple automatic requests.
Downloading Option Chains from Yahoo Finance using MARKET.CSV
MARKET.CSV is a specialized tool for loading data from Yahoo Finance and MSN Money.
You place the required tickers to a file like tickers.txt.
TICKERS.TXT
AAPL FB GOOGL YHOO
Then you execute commands to download data using the required data providers:
C:\MarketData
market.csv.exe download YahooOptions
The tool downloads data, archives the data to zip files and converts the data to CSV.
You can get results in the YahooOptions.csv output file.
Moreover, you can download option chains from MSN Money in the same way.
Also, MARKET.CSV includes ready-to-use SQL codes and format files to import CSV data into a Microsoft SQL Server database.
Downloads
Products for Option Traders | |
---|---|
gsqlcmd
This tool downloads, converts, and imports data from Yahoo Finance and MSN Money Version: 6.12 | 04/30/2024 | 14.6MB | www.savetodb.com |
Download |
MARKET.CSV
The app loads data from Yahoo Finance and MSN Money to CSV and SQL Server Version: 2.25 | 04/29/2024 | 1.5MB | Getting Started | What's New | Edition Comparison |
Download |
Disclaimer
Yahoo Finance is a logo and registered trademark of Yahoo! Inc.