7

是否有任何简单的 HTTP API 可以让我在特定日期和时间获取符号(例如 GOOG)的股票价格?

就像是...

http://somewebsite.com/?
    symbol=GOOG&
    year=2010&
    month=7&
    day=30&
    hour=4&
    minute=00

给出 484.85 美元的响应

我希望得到一个haskell函数的最终结果,它的类型签名看起来像......

getQuote :: Symbol -> Date -> Time -> Price
4

4 回答 4

11

我相信 YQL 和 Yahoo Finance 可以完成这项任务,他们有一些股票可以追溯到 1996 年的数据。

http://www.yqlblog.net/blog/2009/06/02/getting-stock-information-with-yql-and-open-data-tables/

http://www.gummy-stuff.org/Yahoo-data.htm

于 2010-07-31T22:09:35.550 回答
1

这是一个示例,说明如何通过 Yahoo Finance API 使用 YQL 从 2014-01-01 到 2015-01-01 获取 Apple 股票 (AAPL) 的 JSON 格式的数据。

YQL 查询是 URL 编码的:

select%20*%20from%20yahoo.finance.historicaldata%20where%20symbol%3D%22AAPL%22%20and%20startDate%3D%222014-01-01%22%20and%20endDate%3D%222015-01-01%22

所以,如果你解码它,你会得到:

select * from yahoo.finance.historicaldata where symbol="AAPL" and startDate="2014-01-01" and endDate="2015-01-01"

只需将日期值更改为您想要的值并将整个内容解码回来,例如使用此 URL 编码器:http: //meyerweb.com/eric/tools/dencoder/

然后,通过将编码查询添加到请求 URL 中,将整个事情放在一起:

http://query.yahooapis.com/v1/public/yql?q={ENTER_QUERY_HERE}&env=http://datatables.org/alltables.env&format=json

所以,你最终会得到这样的结果:

http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.historicaldata%20where%20symbol%3D%22AAPL%22%20and%20startDate%3D%222014-01-01%22%20and%20endDate%3D%222015-01-01%22&env=http://datatables.org/alltables.env&format=json

这将在您设置的时间段内返回一些精细的 JSON 格式数据。

于 2015-09-28T15:02:00.487 回答
0

看看http://www.mergent.com/servius上的历史证券数据 API - 我认为他们不会有盘中数据......

于 2010-10-19T06:25:26.080 回答
0

您可以在http://www.myinvestorshub.com/historic_intraday_data.php找到历史盘中数据(适用于所有国家/地区)

于 2013-02-05T17:19:30.670 回答