Community API for Yahoo-Finance.
Copyright (c) 2021 by Gadi Cohen <[email protected]>. MIT licensed.
Supports Node 12.0.0 and up (tests are run against 12.0.0).
Beta release. Please let us know of any issues or edge cases. If you're looking for something stable and battle-tested, use the current node-yahoo-finance.
This project is neither created nor endorsed by Yahoo Inc. Yahoo does not provide any official API to developers, nor makes any guarantees regarding service availability or API consistency. In practice however, the open source community has kept this project (and it's predecessor) working well since 2013.
Nevertheless, we make no guarantees and you use this package at your own risk. The developers (and obviously Yahoo) cannot be held responsible for any losses you may incur as a result of using this service. Use of this package is considered acknowledgement and acceptance of these terms and of it's license.
CLI (Command line interface)
$ npx yahoo-finance2 search AAPL
# or install it
$ npm install -g yahoo-finance2
$ yahoo-finance search AAPL '{ "someOption": true }'
Importing
import yahooFinance from 'yahoo-finance2';
const results = await yahooFinance.search('AAPL');
const results = await yahooFInance.search('AAPL', { someOption: true, etc });
Available modules:
autoc
,
historical
,
quote
,
quoteSummary
(submodules:
assetProfile, balanceSheetHistory, balanceSheetHistoryQuarterly,
calendarEvents, cashflowStatementHistory, cashflowStatementHistoryQuarterly,
defaultKeyStatistics, earnings, earningsHistory, earningsTrend, financialData,
fundOwnership, fundPerformance, fundProfile, incomeStatementHistory,
incomeStatementHistoryQuarterly, indexTrend, industryTrend, insiderHolders
insiderTransactions, institutionOwnership, majorDirectHolders,
majorHoldersBreakdown, netSharePurchaseActivity, price, quoteType,
recommendationTrend, secFilings, sectorTrend, summaryDetail, summaryProfile,
symbol, topHoldings, upgradeDowngradeHistory),
search
,
recommendationsBySymbol
, with more
coming soon.
See the Full Documentation.
const quote = await yahooFinance.quote('AAPL');
const { regularMarketPrice as price, currency } = quote;
Working with yahoo-finance2
is a joy if you're using TypeScript (but you
don't have to), with type checking and auto completion:
Try it yourself on our Live CodeSandbox.
This project is primarily developed to be used server-side in node
.
Nevertheless, due to the large number on requests on this issue, we have
taken care to ensure the package can be imported in the browser too.
HOWEVER: you'll run into other challenges there that we can't help you with, particularly CORS issues when trying to query Yahoo's servers in the browser from non-Yahoo origins. Since Yahoo is specifically blocking such requests, we will not help you bypass them. (One way around this is to run your own server to proxy your requests, but we won't help you with this).
Pull Requests welcome! Read CONTRIBUTING.md and join our list of heroes:
- Massive thanks to @pilwon for the original node-yahoo-finance and for all our prior collaborations on this and other projects 🙏