金融数据的javaapi

金融数据的javaapi,java,api,open-source,finance,Java,Api,Open Source,Finance,我正在做我的硕士项目,我正在寻找一个特定公司的大量财务数据 例如:让我们说“苹果”。我想要历史价格、当前市场价格/比率、季度业绩和分析师电话 我在StackOverflow上看到了一些关于YQL的帖子。我想我可以从雅虎金融免费获得当前价格和各种比率。然而,对于其他数据,有汤森路透、彭博社等公司,但它们似乎有一个封闭的系统 在哪里可以获得获取各种数据的API?有什么能帮我得到这些数据吗?我对任何格式的原始数据都很满意。无论我能得到什么。你们能推荐一些API吗 你真的在问免费的金融数据服务。。。而不

我正在做我的硕士项目,我正在寻找一个特定公司的大量财务数据

例如:让我们说“苹果”。我想要历史价格、当前市场价格/比率、季度业绩和分析师电话

我在StackOverflow上看到了一些关于YQL的帖子。我想我可以从雅虎金融免费获得当前价格和各种比率。然而,对于其他数据,有汤森路透、彭博社等公司,但它们似乎有一个封闭的系统


在哪里可以获得获取各种数据的API?有什么能帮我得到这些数据吗?我对任何格式的原始数据都很满意。无论我能得到什么。你们能推荐一些API吗

你真的在问免费的金融数据服务。。。而不是API

问题在于数据是一种有价值的商品。它可能已经花费了提供商大量的钱来建立他们的系统,并且它花费了他们更多的钱来保持这些系统的运行。当然,他们希望投资有回报,他们(部分)通过出售数据/服务来实现这一目标

(对于雅虎、谷歌等,数据是从其他人处购买的,雅虎/谷歌将受到如何使用数据的限制。这些限制将反映在各自的ToS中;例如,您仅允许访问“个人使用”的服务。)


我认为你们最好的办法是接触一些金融数据提供商,询问他们是否可以为你们提供免费访问他们的数据服务(受他们可能想要施加的任何限制的约束)。你可能会很幸运……

你试过谷歌金融API吗。(请用谷歌搜索;)。我用它来跟踪我的投资组合。你能试试吗?这里有一个自定义小部件的示例,它可能会告诉您是否在正确的树下吠叫。

这是“苹果”的雅虎财经历史数据


底部有一个下载数据的链接。也许这会有帮助,斯蒂芬是对的,如果你真的想要一个真正丰富的数据,你可能要为此付出代价

然而,通过使用此处所述的“API”,我在自己的私人项目上取得了成功:

我经常从标准普尔500指数中剔除所有股票,但如果你公布这些数据,请与雅虎商谈。你可能需要授权


顺便说一句,所有这些数据都是CSV格式的,所以请使用CSV阅读器/转换器等。它们很容易找到的好数据不是免费的。就这么简单。原因是所有数据最终都是从纽约证交所或纳斯达克这样的交易所获得许可的

如果你能得到一些钱,高分辨率的历史数据可以从

你也应该和你学校的商学院谈谈。如果他们有金融硕士/博士生或金融工程硕士,他们应该为他们的学生提供高分辨率数据的大型存储库


如果你的问题更详细,我可以提供更详细的答案。

这是我每周至少一次的自我反省。早在互联网由Gopher等组成的时候,你就可以登录NASDAQ和NYSE的FTP服务器,免费下载各种股票历史文件。我已经做过了,甚至把它导入了数据库,并用它做了一些事情……但那可能是10台计算机前的事了,它早已不复存在了

我将推荐一些API,它们包含有时很难找到的财务数据(例如季度结果、分析师电话):

(一) (二)

两者都有免费试用


(披露:我的公司管理这两个API)

从Yahoo finance获取数据的Java示例此处给出了一个正在开发的Java库,该库具有下载历史数据的方便方法


免责声明:我是此库的作者。

我过去曾解决过此问题

对于价格历史数据,我使用了雅虎的API。当我说API时,我的意思是我正在对价格历史数据的CSV文件发出HTTP get请求。不幸的是,在您指定的时间跨度内,一次只能获取一家公司的数据。因此,我首先列出了所有股票代码符号,并对其进行了迭代,分别调用了yahoo的API。你也许可以找到一个列出股票代码的网站,然后定期下载这个列表

这样做太频繁和太快,他们的网站可能会阻止你。我添加了一些代码来限制我发出http请求的频率。我还保留了我的数据,这样我就不必再获取它了。我将始终保持原始/未处理的数据形式,您的代码可能会以某种方式发生变化,从而难以使用其他任何东西。Avro/Thrift可能是个例外,因为它们支持模式演化

对于其他类型的数据,您可能没有任何API为您提供漂亮的CSV文件。我不得不多次处理那个问题。这是我的建议

有时网站在幕后调用restful web服务,您可以通过使用firebug发现这一点。有时它还需要某些标题,您也可以使用firebug来发现这些标题

如果您被迫使用HTML,有几个java库可以帮助您。http是一个库,您可以使用它轻松地发出http请求并处理它们的响应。谷歌也有一个http客户端jar,这可能值得研究

JSOUPAPI在解析HTML数据方面非常出色,即使它的格式很差,而不是XHTML。它也适用于XML。与其遍历或访问jsoup层次结构中的节点,不如学习XPath并使用它来选择所需的内容。网站可能会定期更改其网页的格式,如果您使用的是JSoup,这应该很容易处理和修复,否则很难处理

如果必须使用JSON,请使用Jackson库对其进行解析

如果你没有