Java 自 OpenQuant 消亡以来,是否有免费的实时金融数据馈送?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/3066468/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Are there free realtime financial data feeds since the demise of OpenQuant?
提问by Mel Cooper
Now that the oligopole of market data providers successfully killed OpenQuant, does any alternative to proprietary and expensive subscriptions for realtime market data subsist?
既然市场数据提供商的寡头成功扼杀了 OpenQuant,那么实时市场数据的专有和昂贵订阅的替代方案还存在吗?
Ideally I would like to be able to monitor tick by tick securities from the NYSE, NASDAQ and AMEX (about 6000 symbols).
理想情况下,我希望能够监控来自 NYSE、NASDAQ 和 AMEX(大约 6000 个符号)的逐笔报价。
Most vendors put a limit of 500 symbols watchable at the same time, this is unacceptable to me, even if one can imagine a rotation among the 500 symbols ie. making windows of 5 sec. of effective observation out of each minute for every symbol.
大多数供应商限制同时观看 500 个符号,这对我来说是不可接受的,即使人们可以想象 500 个符号之间的轮换,即。制作 5 秒的窗口。对每个符号的每一分钟进行有效观察。
Currently I'm doing this by a Java thread pool calling Google Finance, but this is unsatisfactory for several reasons, one being that Google doesn't return the volume traded, but the main one being that Google promptly is killing bots attempting to take advantage of this service ;-)
目前我正在通过调用 Google Finance 的 Java 线程池执行此操作,但由于多种原因,这并不令人满意,其中一个原因是 Google 没有返回交易量,但主要是 Google 立即杀死了试图利用的机器人这项服务;-)
Any hint much appreciated,
任何提示非常感谢,
Cheers
干杯
回答by Kiril
I think you'll find all you need to know by looking at this question: source of historical stock data
我想你会通过查看这个问题找到你需要知道的一切:历史股票数据的来源
I don't know of any free data feeds other than Yahoo!, but it doesn't offer tick-by-tick data, it only offers 1 minute intervals with a 15 minute delay. If you want to use an already existing tool to download the historical data, then I would recommend EclipseTrader. It only saves the Open, Close, High, Low, and Volume.
我不知道除 Yahoo! 之外的任何免费数据馈送,但它不提供逐个刻度数据,它只提供 1 分钟间隔和 15 分钟延迟。如果您想使用现有的工具来下载历史数据,那么我会推荐EclipseTrader。它只保存开盘价、收盘价、最高价、最低价和成交量。
(source: divbyzero.com)
(来源:divbyzero.com)
You can write your own data scraper with very little effort. I've written an article on downloading real-time data from yahoo on my blog, but it's in C#. If you're familiar with C# then you'll be able to translate the action in Java pretty quickly. If you write your own data scraper then you can get pretty much ANYTHINGthat Yahoo! shows on their web site: Bid, Ask, Dividend Share, Earnings Share, Day's High, Day's Low, etc, etc, etc.
您可以毫不费力地编写自己的数据抓取工具。我在我的博客上写了一篇关于从雅虎下载实时数据的文章,但它是用 C#编写的。如果您熟悉 C#,那么您将能够很快地在 Java 中翻译该动作。如果你写你自己的数据刮刀那么你可以得到几乎任何东西,雅虎 在他们的网站上显示:买入价、卖出价、股息份额、收益份额、当日最高价、当日最低价等,等等。
If you don't know C# then don't worry, it's REALLY simple: Yahoo allows you to download CSV files with quotes just by modifying a URL. You can find out everything about the URL and the tags that are used on yahoo here: http://www.gummy-stuff.org/Yahoo-data.htm
如果您不了解 C#,请不要担心,它真的很简单:Yahoo 允许您通过修改 URL 来下载带引号的 CSV 文件。您可以在此处找到有关 yahoo 上使用的 URL 和标签的所有信息:http: //www.gummy-stuff.org/Yahoo-data.htm
Here are the basic steps you need to follow:
以下是您需要遵循的基本步骤:
- Construct a URL for the symbol or multiple symbols of your choice.
- Add the tags which you're interested in downloading (Open, Close, Volume, Beta, 52 week high, etc, etc.).
- Create a
URLConnection
with the URL you just constructed. - Use a
BufferedReader
to read the CSV file that is returned from the connection stream.
- 为您选择的一个或多个符号构建一个 URL。
- 添加您有兴趣下载的标签(开盘价、收盘价、成交量、测试版、52 周高点等)。
URLConnection
使用您刚刚构建的 URL创建一个。- 使用 a
BufferedReader
读取从连接流返回的 CSV 文件。
Your CSV will have the following format:
您的 CSV 将采用以下格式:
- Each row is a different symbol.
- Each column is a different tag.
- 每一行是一个不同的符号。
- 每列是一个不同的标签。
回答by Bill G.
Open a TDAmeritrade account and you will have free access to ThinkOrSwim real time trading and quotes platform. Live trading is real time and paper trading is delayed 15 minutes. I forget what the minimum required is to open a TDAmeritrade account but you can go to TDAMeritrade.com or thinkorswim.com to check them out.
开设 TDAmeritrade 账户,您将可以免费使用 ThinkOrSwim 实时交易和报价平台。实时交易是实时的,纸面交易延迟 15 分钟。我忘记了开设 TDAMeritrade 账户的最低要求是什么,但您可以去 TDAMeritrade.com 或 thinkorswim.com 查看。
回答by Peter Keyse
There's a handy function in Google Sheets (ImportHTML) which I've been using for a while to reasonable effect.
Google Sheets (ImportHTML) 中有一个方便的功能,我已经使用了一段时间以达到合理的效果。
For example -
例如 -
=ImportHTML("http://www.bloomberg.com/markets/commodities/futures/metals/","table",1),5,3) returns the EUR Gold spot price.
=ImportHTML(" http://www.bloomberg.com/markets/commodities/futures/metals/","table",1),5,3) 返回欧元黄金现货价格。
It works with Yahoo too, so =Index(ImportHTML("http://finance.yahoo.com/q?s=DX-Y.NYB","table",0),2,2) returns the DXY.
它也适用于雅虎,因此 =Index(ImportHTML(" http://finance.yahoo.com/q?s=DX-Y.NYB","table",0),2,2) 返回 DXY。
The data updates with some small delay but it's usable.
数据更新有一些小延迟,但它是可用的。
回答by Alex
Intriniohas a bunch of feeds with free and paid tiers. Essentially you only have to pay for what you need as opposed to the bigger data suppliers. Intrinio focuses on data quality and caters to developers as well, so I think it'd be a great option for you.
Intrinio有一堆带有免费和付费层的提要。本质上,您只需要为您需要的东西付费,而不是更大的数据供应商。Intrinio 专注于数据质量并迎合开发人员的需求,所以我认为它对您来说是一个不错的选择。
full disclosure - I work at Intrinio as a developer
全面披露 - 我在 Intriio 担任开发人员