Mryqu's Notes


  • 首页

  • 搜索
close

玩一下Quandl API

时间: 2017-05-11   |   分类: DataBuilder     |   阅读: 137 字 ~1分钟

Quandl是为投资专业人士提供财务、经济和替代数据的平台。 Quandl来源于500多家出版商的数据。所有Quandl的数据都可通过API访问,也可以通过包含R、Python、Ruby等多种编程语言及Excel、SAS等软件进行原生访问。Quandl的来源包括联合国,世行和中央银行等提供商的公开数据、来自CLS集团,Zacks和ICE等供应商的核心财务数据、Dun&Bradstreet的其他数据、以及许多机密来源。 **什么是替代数据?**替代数据的范围非常广泛,起初主要包含了未加工的、原始的公司文件、历史市场价格、投资者表现等数据,而现在替代数据已经涵盖任何从移动手机数据到职位信息再到天气预报、交通、卫星图像等能够被采集到的数据。替代数据世界由一系列模糊的数据集组成,而这些数据集可以被转换为交易信息。Quandl提供的替代数据包括企业财务压力数据、外汇数据、电子邮件收据数据、全球石油储量数据、定量股票选择数据等。 Quandl上的数据分为免费数据和高级(Premium)数据,其中高级数据只能通过订阅访问。

申请Quandl账号

除了在Quandl上注册帐号外,Quandl还支持使用GitHub、Google和LinkedIn账号进行OAuth2认证登录。登录后查看账户设置信息中的API KEY,即可用于后继API访问。 Quandl Api Key

Quandl API

全部的Quandl数据产品,可通过https://www.quandl.com/search查找。Quandl的数据产品来源不同,包含时间序列和表在内的各种对象。 Quandl interface

Guandl的大多数数据集只能以时间序列或表中的一种格式打开,其中一些则既可用时间序列格式也可用表格式访问。

  • 时间序列是一段时间内观测或指标集合,以时间为索引且只包含数字数据类型字段。
  • 表包含各种未排序数据类型(字符串、数字、日期等)并可用不同字段进行过滤。

Guandl可指定如下返回类型:

  • JSON
  • CSV
  • XML

速率限制

认证用户限制10秒300个调用、10分钟2000调用及每天50000调用。使用免费数据集的认证用户并发限制为1,即进行一个调用的同时可以在队列中有一个额外的调用。 高级数据订阅限制10分钟5000调用及每天720000调用。

访问时间序列

  • 获取时间序列数据集数据
        GET https://www.quandl.com/api/v3/datasets/{database_code}/{dataset_code}/data.{return_format}?api_key=YOURAPIKEY
    
    Quandl getDatasetData
  • 获取时间序列数据集元数据
        GET https://www.quandl.com/api/v3/datasets/{database_code}/{dataset_code}/metadata.{return_format}?api_key=YOURAPIKEY
    
    Quandl getDatasetMeta
  • 获取时间序列数据集数据及元数据
        GET https://www.quandl.com/api/v3/datasets/{database_code}/{dataset_code}.{return_format}?api_key=YOURAPIKEY
    
    Quandl getDataset
  • 获取时间序列数据库元数据
        GET https://www.quandl.com/api/v3/databases/{database_code}.{return_format}?api_key=YOURAPIKEY
    
    Quandl getDatabase
  • 获取整个时间序列数据库(仅能用于订阅的高级数据)
        GET https://www.quandl.com/api/v3/databases/{database_code}/data?download_type=full&api_key=YOURAPIKEY
    

查询参数

参数必需类型值描述
database_code是string数据库代码
dataset_code是string数据集代码
limit否int使用limit=n获得数据集的头n行。使用limit=1获取最新的一行。
column_index否int指定特定列。第0列是日期列且永久返回,因此该处从第1列起。
(mryqu:不指定则显示全部列,指定就显示两列,为什么没有逗号分隔了?)
start_date否stringyyyy-mm-dd用于过滤的起始日期
end_date否stringyyyy-mm-dd用于过滤的结束日期
order否stringasc
desc
日期排序
collapse否stringnone
daily
weekly
monthly
quarterly
annual
改变返回数据的抽样频率。默认为none,即原始颗粒度。改变抽样频率后,Quandl返回给定时间段内最后一个观测值。
transform否stringnone
diff
rdiff
rdiff_from
cumul
normalize
在下载前对数据执行基本计算。默认为none。

搜索FRED数据库的GDP数据集,按年抽样,取头6行,日期升序排列,显示第0和1列:
Quandl queryDataset

访问表

  • 获取表元数据
        https://www.quandl.com/api/v3/datatables/{publisher_code}/{datatable_code}/metadata.{return_format}?api_key=YOURAPIKEY
    
    Quandl getDatatableMeta 通过表元数据克制列名和类型,以及那些列可用作行过滤器。
  • 获取表数据
        https://www.quandl.com/api/v3/datatables/{publisher_code}/{datatable_code}.{return_format}?api_key=YOURAPIKEY
    
    Quandl getDatatable 此API最多返回10000行数据,其中返回数据中的next-cursor-id用于指示下一页。可以通过下面提到的查询参数qopts.cursor_id进行分页查询,或者通过查询参数qopts.export=true将整表导出为压缩csv的zip文件。

过滤器操作符

共有五种过滤器操作符: = 、 .gt= 、 .lt= 、 .gte= 、 .lte= 。

查询参数

参数必需描述
qopts.columns否过滤列。如果想查询多列,列名用逗号分隔。
qopts.export否对大查询很有帮助。数据将导出为压缩csv的zip文件已用于下载。
qopts.per_page否单页显示行数,最大为10000行。
qopts.cursor_id否每个API调用将返回用于表示表下一页的游标ID。在API中包含此游标ID则可以查询表的下一页。空游标ID代码当前页为表的最后一页。

导出PRICES全表:
Quandl exportDatatable 过滤mapcode为-5370、compnumber为39102且reporttype为A的行,输出表的reportdate和amount列:
Quandl queryDatatable

参考


Quandl官网
Quandl API文档

标题:玩一下Quandl API
作者:mryqu
声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!

#quandl# #api# #rest#
ArcGIS认证和登录
Icon/logo and brand guides for social media
  • 文章目录
  • 站点概览

Programmer & Architect

662 日志
27 分类
1472 标签
GitHub Twitter FB Page
    • 申请Quandl账号
    • Quandl API
    • 访问时间序列
    • 访问表
    • 参考
© 2009 - 2023 Mryqu's Notes
Powered by - Hugo v0.120.4
Theme by - NexT
0%