我知道雅虎有一个很好的API可以访问有关http://www.gummy-stuff.org/Yahoo-data.htm记录的公司的详细财务指标。雅虎还提供历史价格数据,记录在http://code.google.com/p/yahoo-finance-managed/wiki/csvHistQuotesDownload。
但是,我正试图找到一个可以编程方式访问详细历史数据的地方,比如10年前公司的收益,而不仅仅是股票的价格。有谁知道这样的网站?我愿意付钱,我认为http://www.mergent.com/servius,但它们看起来非常非常昂贵。一家公司的单一标准化财务报告费用为50个单位,按照现收现付计划计算为2.50美元。
谷歌似乎有相当不错的历史财务数据,似乎可以追溯到5年前。我可能会尝试抓他们,但我想回去更多。有任何想法吗?
Quandl提供了大量不同的数据库,其中包含各种数据,不仅包括EOD,还包括EOD等。 earnings per share和许多其他东西,如US employment data。
API易于使用且记录良好。它还提供Excel插件,Matlab插件,Python包,R包,以及许多语言通过社区维护库提供支持。
并非所有数据都是免费的。对于更高级的数据库,需要支付订阅费。我认为价格会有所不同,具体取决于数据库和潜在用户的数量。
除了股票价格和估值比率Intrinio之外,via API还提供了可追溯到10年的损益表,资产负债表和现金流量表。您可以通过编程方式查询API以将数据提取到应用程序中。
一些例子:
https://api.intrinio.com/financials/standardized?identifier=YUM&statement=income_statement&fiscal_period=Q2&fiscal_year=2015
这将从2015年第二季度开始收回YUM的损益表。
https://api.intrinio.com/companies?latest_filing_date=2017-03-06
这表明所有公司在2017-03-06或之后都有新的申请日期,这对于确定需要更新哪些基本面非常有用。
https://api.intrinio.com/data_point?ticker=AAPL,MSFT&item=pricetoearnings
这拉动了苹果和微软目前的市盈率。您可以换出last_price来获取当前股票价格。
https://api.intrinio.com/data_point?ticker=$FEDFUNDS&item=level
此次通知将从联邦储备中返回当前的联邦基金利率。
https://api.intrinio.com/prices?ticker=AAPL
这将返回AAPL的价格历史记录。
Intrinio每天向任何开发人员发送500个API调用。
Wolfram Alpha拥有您想要的数据
例子:
我没有使用它,但我看到他们提供免费的API,如果你超过他们的月限制,可以选择升级。
看看这个页面:ADVFN Financial Data Scraper。您可以下载带有内置宏的电子表格,该数据库可以为ADVFN发布历史数据的任何公开交易公司收集22年的财务收益数据。请记住,这不是一个快速的过程,对于电子表格中预先列出的3000多家公司,宏需要运行几天(显然,如果你愿意,你可以下载更少)。但是,您最终将获得超过800万个数据值,并且您可以将它们保存在本地电子表格中,以便快速轻松地进行分析。
ADVFN每年每家公司发布多达307行数据,该电子表格可以捕获所有数据,从而产生非常全面的历史财务数据数据库。
取决于你想要的。可以说,如果您正在寻找外汇历史数据,您可以查看Dukascopy历史数据源(http://www.dukascopy.com/swiss/english/data_feed/historical/)可以编写一些脚本来下载数据进入你的应用程序
你可以从financialmodelingprep得到你想要的,他们有季度损益表,资产负债表和现金流量。我包含一个示例代码,以便您可以看到我如何在jquery中获取数据。
他们还根据他们的documentation提供历史报价。
小提琴:https://jsfiddle.net/7g238qrp/
$(document).ready(function() {
var url = "https://financialmodelingprep.com/api/financials/income-statement/AAPL?period=quarter";
$.ajax({
url: url,
type: "GET",
crossDomain: true,
success: function (response) {
let resp = response;
resp = resp.substring(5);
resp = resp.substring(0, resp.length - 5);
// if you want to convert to JSON
//resp = JSON.parse(resp)
//console.log(resp);
$('#JonContent').text(resp);
},
error: function (xhr, status) {
alert("error");
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<pre>
<div id="JonContent"></div>
</pre>