
聚宽(JoinQuant)提供经过专业清洗的A股数据、期货数据、期权数据、基金数据、宏观数据等,这些数据可以从聚宽量化云平台读取,也可以下载到本地使用。可免费下载到本地使用的数据称为“JQData本地金融数据”,具体数据内容见https://www.joinquant.com "本地数据”栏目。kdb+/q可以方便地读取这些数据,不需要依赖第三方组件。

kdb+读取聚宽数据准备工作:
(1)使用申请。根据聚宽要求,免费使用前需要申请,见“本地数据-申请使用”。
(2)浏览API文档。见“本地数据-其它编程语言API”。
kdb+读取聚宽数据步骤:
第一步,启动q。
set QHOME=d:\kdb\q
set SSL_VERIFY_SERVER=NO
d:\kdb\q\w32\q
第二步,获取用户可用凭证。q)token:.Q.hp[`:https://dataapi.joinquant.com/apis;.h.ty`json;.j.j `method`mob`pwd!(`get_current_token;`申请时所填手机号;`$"聚宽官网登录密码")];
其中,.Q.hp[x;y;z]用于以POST方法发出HTTP请求,x为网址,y为MIME类型,z为请求数据,对于JQDATA,z为JSON格式字符串。可进一步参考《kdb+中文教程》第十章相关问答。
第三步,获取数据。
例如,获取证券信息:
q)data:.Q.hp[`:https://dataapi.joinquant.com/apis;.h.ty`json;.j.j `method`token`code!(`get_security_info;`$token;`502050.XSHG)];
q)data
"code,display_name,name,start_date,end_date,type,parent\n ..."
data为csv格式字符串。进一步解析为表:
q)("SSSDDSS";enlist",") 0: "\n" vs data
code display_name name start_date end_date type parent
---------------------------------------------------------------------
502050.XSHG 上证50B SZ50B 2015.04.27 2021.01.04 fjb 502048.XSHG
又如读取行情数据:
q)data:.Q.hp[`:https://dataapi.joinquant.com/apis;.h.ty`json;.j.j `method`token`code`count`unit`end_date!(`get_bars;token;`600000.XSHG;10;`1d;.z.D)];
q)data
"date,open,close,high,low,volume,money,paused,high_limit,low_limit,avg,pre_close\n..."
q)("DFFFFFFFFFFF";enlist ",") 0: "\n" vs data
...
《kdb+中文教程》
全文链接

《kdb+中文教程》
主要内容

kdb+号称是世界上最快的内存数据库,q是kdb+的内置语言。事实上kdb+/q不只是内存数据库,更是一款高性能大数据平台,它使用统一的数据库处理实时数据和历史数据,同时具备CEP(复杂事件处理)引擎、内存数据库、磁盘数据库等功能。与传统关系数据库及现代大数据平台相比,kdb+/q具有更快的速度和更低的总拥有成本,非常适合海量数据的快速采集、存储、分析、处理和检索等。kdb+/q最初主要被用于金融机构海量数据分析和高频交易,目前被广泛用于人工智能、机器学习、物联网、智能电网、航天等领域。
《kdb+中文教程》是一本关于kdb+/q的中文入门书籍,内容分为三大部分:
第一部分(第一章)为kdb+/q简介,主要介绍kdb+/q的优势及不同许可类型,同时介绍了kdb+/q的下载、安装、基本操作及数据表操作等。通过学习本章,读者可以快速了解kdb+/q的特性,同时对kdb+/q的独特、简洁等有一个初步直观感受。
第二章至第八章为第二部分,是本书的核心内容,分别为数据类型、数组、函数、字典、表与qSQL、I/O操作及数据库。首先介绍了kdb+/q的基本数据类型,然后介绍了kdb+/q的数组(列表)、函数、字典、表,最后介绍了文件I/O操作、进程间通讯、数据库构建等。通过这部分内容的学习,读者可以掌握kdb+/q的基础知识,为kdb+/q的运用打下坚实基础,逐步将kdb+应用于实际场景,同时能进一步感受kdb+/q的简洁、灵活与强大等。
第三部分包括第九章和第十章。第九章通过实例介绍kdb+在股票期货数据处理方面的常见应用,包括历史行情数据库构建、策略回测与优化、实时行情处理等,并简单介绍了企业级开源证券期货交易平台Tx。第十章把一些可能有用的知识点以问答形式列出来,方便读者需要时查找。通过这部分内容的学习,读者可以参考常见应用实例,举一反三。




