Building Equity Comparison Sheets from Bulk Financial Data
Summary
The document considers ways to assemble a spreadsheet comparing selected public companies across fields such as headquarters, market capitalization, earnings, revenue, free cash flow, debt, and cash. It describes a programmatic route using a finance data API and spreadsheet-writing tools, with sorting or pivoting needed to align company records into a cross-sectional table. A paid data provider is offered as an alternative for users seeking higher-quality datasets. A comparison feature on a financial research website is also mentioned as a low-effort option.
The main practical caveat is data coverage and quality: the API route may contain gaps or anomalies, while website tools may lack coverage for smaller companies, impose inconvenient workflows, or respond slowly. The post supplies no accuracy study, field-by-field source comparison, or durable assessment of current service availability. It is best read as a lightweight workflow overview for equity research, with data validation and consistent identifiers still needed before drawing comparisons across companies.
Key ideas
- A bulk equity comparison sheet can collect company identifiers and financial statement metrics for side-by-side research.
- Finance data APIs can supply records that are exported to spreadsheet formats through common data tools.
- Sorting or pivoting may be needed to align the latest company data into a useful cross-sectional table.
- Data coverage and quality vary, so missing values and anomalies need review.
- Website comparison features can be convenient but may have coverage, workflow, or performance limits.
Tags
Full text
# Answer by Mike (score 0) # What are some simple, free/affordable methods to obtain a spreadsheet of selected columns for a comma separated list of publicly traded stocks? For example, if I wanted to compare a list of equities inside of a very small segment of the global economy (say, the members of the Emerging AgroSphere ETF) I'd want to know their full names, their country of origin/headquarters, market capitalization, TTM current net income, TTM revenue, TTM FCF, Long Term Debt, Cash & Cash Equivalents, etc. Its nice to get all that information on one page for side by side comparisons of large lists of companies. Several times in the past year, I've done this type of spreadsheet population by hand. Its been interesting as I always end up picking up more relevant information in my research, but I need a more efficient solution. Updates: - Yahoo Finance can do this with its Portflio feature, but I'm not able to add stocks to its lists (website hangs indefinitely and/or is unresponsive after trying to add), so this is not a viable solution currently. - FinViz seems like another possible solution, but it isn't able to pull data on smaller cap stocks, like the first one on the list, Aphria ($APHQF). It also doesn't allow bulk entry of stock symbols, and furthermore asks (and requires in order to submit form) for a date, price and number of shares that I "bought" for each. So even if it could pull all the data I need, I'd have to spoof holding information. So this one is not the right tool for the job for several reasons. - Just found out Gurufocus.com allows you to select "Compare" rather than "Search" from the dropdown in its Search bar in the top left corner of the page. The website is slow, but the feature is available in free and (of course) premium versions. This seems like a google way to go for now. I'd delete this question if gurufocus.com wasn't so slow. ## Answer by Mike (score 0) https://quant.stackexchange.com/a/37037 The Google Finance API for Python will be able to do this, and the process of writing it out to a Spreadsheet will be relatively trivial (e.g. pandas XlsxWriter, or openpyxl if you want to get fancy with formatting). However the quality and coverage varies a bit, and you may find some anomalies and/or missing data. https://pypi.python.org/pypi/googlefinance.client/1.3.0 An alternative if you want higher quality data is Quandl, which has a very good API and you can buy different data sets depending on what you want. https://www.quandl.com/tools/python For both, you will need to do a bit of sorting/pivoting to get all the current cross section to line up nicely, but that should do the trick for simple requests. ## Answer by boulder_ruby (score -2) https://quant.stackexchange.com/a/34857 GuruFocus.com's "Compare" tool is exactly what I was looking for. It is available (probably in some limited form) to free as well as premium users. To access it, click on the dropdown in the top left search bar and select "Compare". Note: GuruFocus.com appears to be suffering from a growth in popularity that is outpacing its ability to serve data to users expediently, so (currently) the website is often very slow, even for premium users.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.