JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经5年沉淀,40万宽客及数3500家知名量化机构投研交易验证。
使用上,JQData适用Windows、Mac、Linux多种操作系统,支持python2、python3和以及任意编程语言。数据通过简洁的API方式提供,pip即可直接安装使用,挣脱使用束缚,实现更多场景。只需三行代码,即可随取随用~
JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经5年沉淀,40万宽客及数3500家知名量化机构投研交易验证。
使用上,JQData适用Windows、Mac、Linux多种操作系统,支持python2、python3和以及任意编程语言。数据通过简洁的API方式提供,pip即可直接安装使用,挣脱使用束缚,实现更多场景。只需三行代码,即可随取随用~
为了满足用户的需求,聚宽数据团队在JQData中不仅提供了全面的基础金融数据,包括**沪深A股行情数据,上市公司财务数据,场内基金数据,场外基金数据,指数数据,期货数据,期权数据、债券数据以及宏观经济数据**;除此之外,JQData还针对因子数据和特色数据,引进了聚宽因子库,舆情数据,Alpha特色因子,技术分析指标因子,tick数据,助您更好的完成量化研究和投资决策。详细数据清单如下表所示:
| 数据品种 | 时间范围 | 更新频率 |
| 股票列表数据 | 2005至今 | 8:00更新 |
| 行业概念和指数成分股 | 2005至今 | 8:00更新 |
| 日行情 | 2005至今 | 盘后15:00更新,24:00校对完成入库 |
| 分钟行情 | 2005至今 | 盘后15:00更新,24:00校对完成入库 |
| 集合竞价数据 | 2010年至今 | 盘后15:00更新 |
| 分红拆分送股 | 2005至今 | 8:00更新 |
| 融资融券 | 2010至今 | 下一个交易日9点之前更新 |
| 资金流向 | 2010至今 | 盘后20:00更新 |
| 龙虎榜数据 | 2005至今 | 盘后20:00和22:00更新 |
| 限售解禁股 | 2005至今 | 盘后20:00更新 |
| 停复牌、涨跌停价格数据 | 2005至今 | 盘前9:15更新 |
| 沪深市场每日成交概况 | 2005年至今 | 交易日20:30-24:00更新 |
| 沪股通,深股通和港股通(市场通数据) | 上市至今 | 交易日20:30-06:30更新 |
| 申万一级行业指数日行情数据 | 上市至今 | 交易日17:30更新 |
| 申万一级行业估值数据 | 上市至今 | 交易日17:30更新 |
| 上市公司财务数据 | 时间范围 | 更新频率 |
| 估值数据 | 2005至今 | 每天24:00更新 |
| 财务指标 | 2005至今 | 每天24:00更新 |
| 资产负债表 | 2005至今 | 每天24:00更新 |
| 现金流量表 | 2005至今 | 每天24:00更新 |
| 利润表 | 2005至今 | 每天24:00更新 |
| 银行专项指标表 | 2005至今 | 每天24:00更新 |
| 券商专项指标表 | 2005至今 | 每天24:00更新 |
| 保险专项指标表 | 2005至今 | 每天24:00更新 |
| 上市公司概况 | 2005年至今 | 交易日24:00更新 |
| 上市公司股东股本 | 2005年至今 | 交易日24:00更新 |
| 期货数据 | 时间范围 | 更新频率 |
| 期货列表数据 | 2005至今 | 8:00更新 |
| 日行情 | 2005至今 | 盘后15:00更新,24:00校对完成入库 |
| 分钟行情 | 2005至今 | 盘后15:00更新,24:00校对完成入库 |
| 期货结算价 | 2005至今 | 盘后17:00 更新 |
| 期货主力合约 | 2005至今 | 20点更新下一交易日 |
| 期货连续指数 | 2005至今 | 盘前8:00更新 |
| 期货龙虎榜数据 | 2005年至今 | 盘后19:00更新 |
| 期货仓单数据 | 2005年至今 | 盘后20:00更新 |
| 外盘期货日行情数据 | 上市至今 | 盘前9:00更新 |
| 场内基金数据 | 时间范围 | 更新频率 |
| 场内基金列表数据 | 2005至今 | 8:00更新 |
| 分级基金数据 | 2005至今 | 8:00更新 |
| 日行情 | 2005至今 | 盘后更新15点更新 |
| 分钟行情 | 2005至今 | 盘后15点更新,盘后24:00更新 |
| 净值数据 | 2005至今 | 下一个交易日10点之前更新 |
| 融资融券 | 2010至今 | 下一个交易日9点之前更新 |
| 场内基金份额数据 | 2005-02-23至今 | 下一个交易日10点之前更新 |
| 集合竞价数据 | 2019年至今 | 盘后15:00更新 |
| 公募基金 | 时间范围 | 更新频率 |
| 基金主体信息 | 上市至今 | 盘后24:00更新 |
| 基金净值信息 | 上市至今 | 盘前9:00更新 |
| 基金持股信息 | 上市至今 | 盘后24:00更新 |
| 基金持仓债券信息 | 上市至今 | 盘后24:00更新 |
| 基金资产组合概况 | 上市至今 | 盘后24:00更新 |
| 基金财务指标信息 | 上市至今 | 盘后24:00更新 |
| 基金收益日报信息 | 上市至今 | 盘后24:00更新 |
| 基金分红拆分合并信息 | 上市至今 | 盘后24:00更新 |
| 指数数据 | 时间范围 | 更新频率 |
| 指数列表数据 | 2005至今 | 8:00更新 |
| 指数成分股数据 | 2005至今 | 8:00更新 |
| 日行情 | 2005至今 | 盘后15:00更新,24:00校对完成入库 |
| 分钟行情 | 2005至今 | 盘后15:00更新,24:00校对完成入库 |
| 集合竞价数据 | 2017年至今 | 盘后15:00更新 |
| 期权数据 | 时间范围 | 更新频率 |
| 期权合约资料 | 上市至今 | 盘后18:00更新 |
| 期权合约调整记录 | 上市至今 | 盘后18:00更新 |
| 期权每日盘前静态文件 | 上市至今 | 盘前9:05更新 |
| 期权日行情 | 上市至今 | 盘后更新15点更新,24:00校对完成入库 |
| 上证ETF期权分钟行情 | 2017-01-01至今 | 盘后更新15点更新,24:00校对完成入库 |
| 股指期权分钟行情 | 2019-12-24至今 | 盘后更新15点更新,24:00校对完成入库 |
| 商品期权分钟行情 | 2019-12-02至今 | 盘后更新15点更新,24:00校对完成入库 |
| 集合竞价数据 | 2017年至今 | 盘后15:00更新 |
| 股票期权交易和持仓排名统计 | 上市至今 | 下一交易日盘前8:05更新 |
| 期权风险指标 | 上市至今 | 下一交易日盘前8:05更新 |
| 期权行权交收信息 | 上市至今 | 每日10:45更新 |
| 债券数据 | 时间范围 | 更新频率 |
| 债券基本信息 | 上市至今 | 每日19:00、22:00更新 |
| 债券票面利率 | 上市至今 | 每日19:00、22:00更新 |
| 国债逆回购日行情数据 | 上市至今 | 每日19:00、22:00更新 |
| 可转债基本资料 | 上市至今 | 每日19:00、22:00更新 |
| 可转债转股价格调整 | 上市至今 | 每日19:00、22:00更新 |
| 可转债日行情 | 2018-09-13至今 | 每日19:00、22:00更新 |
| 可转债分钟日行情 | 2019年至今 | 盘后15点更新 |
| 可转债每日转股统计 | 2000-7-12至今 | 下一交易日 8:30、12:30更新 |
| 债券付息事件 | 上市至今 | 每日19:00、22:00更新 |
| 宏观经济数据 | 时间范围 | 更新频率 |
| 国民经济 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 保险业 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 人民生活 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 人口 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 国内贸易 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 就业与工资 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 资源环境 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 房地产行业 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 财政政策 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 固定资产投资 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 对外经济贸易 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 景气指数 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 工业 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 农林牧渔业 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 金融业 | 统计局统计开始至今 | 交易日盘前8:30之前更新 |
| 舆情数据 | 时间范围 | 更新频率 |
| 新闻联播文本数据 | 2009年6月至今 | 每日21:30前更新 |
| 聚宽因子库 | 时间范围 | 更新频率 |
| 质量因子 | 2005年至今 | 下一自然日5:00、8:00更新 |
| 基础因子 | 2005年至今 | 下一自然日5:00、8:00更新 |
| 情绪因子 | 2005年至今 | 下一自然日5:00、8:00更新 |
| 成长因子 | 2005年至今 | 下一自然日5:00、8:00更新 |
| 风险因子 | 2005年至今 | 下一自然日5:00、8:00更新 |
| 每股因子 | 2005年至今 | 下一自然日5:00、8:00更新 |
| Alpha特色因子 | 时间范围 | 更新频率 |
| Alpha101因子 | 2005至今 | 次日08:00更新 |
| Alpha191因子 | 2005至今 | 次日08:00更新 |
| 技术指标因子 | 时间范围 | 更新频率 |
| 超买超卖型技术指标 | 2005至今 | 根据传入的参数实时计算 |
| 趋势型技术指标 | 2005至今 | 根据传入的参数实时计算 |
| 能量型技术指标 | 2005至今 | 根据传入的参数实时计算 |
| 成交量型技术指标 | 2005至今 | 根据传入的参数实时计算 |
| 均线型技术指标 | 2005至今 | 根据传入的参数实时计算 |
| 路径型技术指标 | 2005至今 | 根据传入的参数实时计算 |
| 其他 | 2005至今 | 根据传入的参数实时计算 |
| tick快照数据(仅限机构用户) | 时间范围 | 更新频率 |
| 沪深A股tick数据 | 2010-01-01至今 | 盘后更新历史tick,提供买卖五档数据 |
| 金融期货和商品期货tick数据 | 2010-01-01至今 | 盘后更新历史tick,提供买卖一档数据 |
| 上证ETF期权tick数据 | 2017-01-01至今 | 盘后更新历史tick,提供买卖五档数据 |
| 商品期权tick数据 | 2019-12-02至今 | 盘后更新历史tick,提供买卖一档数据 |
| 场内基金tick数据 | 2019-01-01至今 | 盘后更新历史tick,提供买卖五档数据 |
| 指数tick数据 | 2017-01-01至今 | 盘后更新历史tick,提供买卖一档数据 |
说明:
本地使用:JQData避免了各个量化平台的限制,适用于Windows,Mac,Linux多种操作系统,用户只需三行Python代码即可完成本地安装和调用,帮助您实现一整套本地化部署的量化投资研究。(支持Python2和Python3)
易于量化:JQData在设计过程中,聚宽团队基于量化行业专业知识及对投研的经验,对数据进行清洗及整理,使数据更能适用量化的研究习惯,并进一步赋能数据在本地投研的可行性及便利性。
调用方便:在JQData里,不同品种同一属性的数据用同一个接口就能获取,例如,使用get_price就能获取所有股票,基金,指数,期货的行情数据,从而大大减少用户的学习成本,代码也更加简洁;与之相反,大部分传统数据商提供的数据分散在不同的数据表中,需要用户自己来回查找。
JQData精准度介绍:截至目前,聚宽自营基金管理规模已达百亿,使用聚宽数据(详情见文末介绍),一创聚宽平台交易验证,其精准度满足交易需求。聚宽数据团队研发了数据监控系统和多数据源比对系统,通过一整套系统化的机制保证数据的准确性。另外,我们还提供了指定日期参数,杜绝未来数据。
JQData稳定性介绍:JQData采用与聚宽官网一致的账户校验系统,登录账号即可使用。提供独立的数据服务,采用负载均衡、高可用服务架构,配备完善的灾备体系,保证业务系统24小时不中断,并支持海量用户同时在线。数据传输方面,采用RPC协议传输,并压缩成特有数据格式,减少传输数据量,更加节省带宽。
聚宽作为国内领先的量化平台,欢迎数据行业的各位同仁,和我们共同构建起一整套领先的量化分析数据体系,如贵公司有这方面的数据资源和合作意向,,请添加管理员微信:JQData02,或发送邮件至jqdatasdk@joinquant.com说明合作意向,欢迎加入聚宽JQData。
JQData,即jqdatasdk,指的是聚宽数据出品的本地量化数据接口,需要本地python环境内使用, 具体方法见JQData的API: 【sdk版本API文档】:https://www.joinquant.com/help/api/help?name=JQData
jqdata:只有在官网环境下才能调用(登录官网在研究环境下使用的包) 步骤:import jqdata 或 from jqdata import , 具体使用方法见官网API:https://www.joinquant.com/help/api/help?name=api
申请试用账号: JQData由聚宽团队专门维护清洗,为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。 数据产品不仅对外服务,同时服务于聚宽所有业务线,历经平台40万用户、基金百亿资产、每年万亿交易额的考验。本着推动量化行业快速发展的良好愿景,JQData现已开放注册。需要试用JQData的用户只需提交试用申请>>>,即可获取有效时长为3个月的试用账号。试用账号在试用期间可限时免费调用JQData的部分基础数据,具体试用权限如下表所示。(注:JQData基础数据包含沪深A股行情数据,上市公司财务数据,指数数据,场内基金数据,期货数据和宏观经济数据等多类数据) 如果数据流量不够用或者需要因子和特色数据,可以付费开通正式账号。如何开通正式账号>>>
| 普通试用账号 | 正式账号 | 金融机构特色试用权限 | ||
| 账号功能 | 数据种类&可用时间范围 | 基础数据 | 按需采买 | 按需申请 |
| 有效期 | 3个月 | 1年 | ||
| 连接数(auth lisense) | 1 | 1/3 | ||
| 每日可用流量(总和) | 50万 | 100万/20000万 | ||
| 行情数据频度 | 日频、分钟 | 日频、分钟、Tick | ||
| 数据获取形式 | API接口 | API接口 | API接口 | |
| 数据种类 | 基础数据 | 沪深A股数据 | 沪深A股数据 |
微信联系JQData02 递交名片资料后可申请特色试用权限 |
| 期货数据(首次调用后,限时体验14天) | 期货数据 | |||
| 上市公司财务数据(首次调用后,限时体验14天) | 上市公司财务数据 | |||
| 债券数据(首次调用后,限时体验14天) | 债券数据 | |||
| 指数数据 | 指数数据 | |||
| 场内基金数据(首次调用后,限时体验14天) | 场内基金数据 | |||
| 场外基金数据(首次调用后,限时体验14天) | 场外基金数据 | |||
| 可转债数据(首次调用后,限时体验14天) | 可转债数据 | |||
| 宏观经济数据(首次调用后,限时体验14天) | 宏观经济数据 | |||
| 舆情数据(首次调用后,限时体验14天) | 舆情数据 | |||
| 特色数据 | 聚宽因子库 | |||
| Alpha191 | ||||
| Alpha101 | ||||
| 技术指标因子 | ||||
| 沪深A股tick数据(机构专用) | ||||
| 商品期货tick数据(机构专用) | ||||
| 金融期货tick数据(机构专用) | ||||
| 金融期权tick数据(机构专用) | ||||
| 商品期权tick数据(机构专用) | ||||
| 场内基金tick数据(机构专用) | ||||
| 指数tick数据(机构专用) |
开通正式账号:
开通正式账号: 如果您觉得每天50万条的数据不够用,或者需要使用更多的数据,或者想要延期,可以购买本地数据套餐,选择套餐升级后每天可调用100万条或2亿条数据,详情请与我们的运营人员联系。(个人用户咨询【邮箱sunping@joinquant.com,机构服务咨询添加微信号JQData02)
开通权限后,您可以在本地安装和使用JQData。Python用户请按以下教程安装使用,如在使用中遇到问题,还可以联系官网在线客服或在社区问答板块留言,有专门的技术顾问跟进。
pip install jqdatasdk
pip install -U jqdatasdk
windows用户可以直接点击新版本链接下载安装。或打开cmd终端,切换到JQData所在路径下,通过下述语句升级到最新版本。
C:\JQData>python.exe -m pip install jqdatasdk
from jqdatasdk import *
auth('账号','密码') #账号是申请时所填写的手机号;密码为聚宽官网登录密码
调用数据:详见下一步任务[登录JQData]
每天可访问数据条数:由于用户访问数据会给服务器造成一定的压力,JQData开放给试用账号的每天可访问数据为50万条,基本上能够满足大部分用户的需要;如需更多的访问条数,您可以付费升级为正式账号,我们将为您开放每天2亿条数据的访问权限。个人用户咨询【邮箱:sunping@joinquant.com】,机构服务咨询添加微信号JQData02&。
因子数据和特色数据:如果您还想使用Alpha特色因子,技术指标因子,tick数据,您可以将账号升级到正式版、标准版或专业版,详情请联系我们的运营同事。个人用户咨询【邮箱:sunping@joinquant.com】,机构服务咨询添加微信号JQData02。
问题反馈和其他数据需求:如果您在使用JQData的过程中遇到问题,或者希望JQData能够加入更多的数据,请您通过社区提问的方式或者联系官网右下角的在线客服。
打开代码编辑器(第三方编辑器请指定运行环境为已安装JQData的Python环境),输入如下代码认证用户身份。认证完毕后显示“auth success”即可开始调用数据,认证步骤如下:
from jqdatasdk import *
auth('ID','Password') #ID是申请时所填写的手机号;Password为聚宽官网登录密码
注:JQData支持开启一个连接数,即登录一次账号算一个连接;如遇到连接数超限情况,可使用logout()函数退出已有连接后再开启新的连接。
get_query_count()
描述:查看当日剩余可调用条数,试用账号默认是每日50万条;正式账号是每日2亿条。
说明:一行表示一条,如下图;如果不确定的话,可以在调用前后分别查询下可调用条数

返回
一个dict,字段说明如下:
| 字段名 | 说明 |
|---|---|
| total | 当日可调用数据总条数 |
| spare | 当日剩余可调用条数 |
示例
#查询当日剩余可调用数据条数
count=get_query_count()
print(count)
>>>{'total': 1000000,'spare': 996927}
聚宽JQData用户使用协议(以下简称“本协议”)由北京小龙虾科技有限公司(以下简称“公司”)与聚宽JQData用户(以下简称“用户”或“您”)签订。当您在聚宽JQData相关的网络页面,软件客户端等点击确认接受本协议,或按照本协议约定的方式实际使用聚宽JQData的服务即意味着您同意接受本协议条款的约束。
公司郑重通知用户,根据国家的相关法律规定,用户应当使用本人真实身份信息在聚宽JQData相关的网络页面,软件客户端注册账号并按照本协议的约定使用聚宽JQData数据。账号仅限本人使用,用户不得将本人账号交于他人使用,或将使用本人账号获取的聚宽JQData数据交给第三方使用。单人只允许注册一个账号。一台设备仅支持一个账号使用。违反上述规定的,公司有权在不提前通知用户的前提下终止用户使用聚宽JQData数据的权利,包括但不局限于封禁用户的账号,禁止用户使用的终端接入聚宽JQData数据服务。
第一条 定义
1.1 “聚宽JQData”是公司根据来源于上海证券交易所,深圳证券交易所,第三方数据提供商以及市场上其他公开可得的原始数据,经过公司专业的字段设计和数据整理生成。
第二条 聚宽JQData数据使用方式
2.1 用户通过公司提供的试用申请、付费购买两种渠道获得试用或者正式的聚宽JQData使用授权通知后,方可使用聚宽JQData数据。
2.2 用户只能在公司授权的使用范围内使用聚宽JQData数据,包括但不限于使用期限,数据品种,时间范围,调用条数限制等。
2.3 聚宽JQData的使用方式详见公司在聚宽量化平台官网(https://www.joinquant.com)发布的聚宽JQData数据说明页。用户有任何问题可以通过聚宽社区,邮件等渠道向公司反馈,聚宽JQData使用方法的最终解释权归公司所有。
第三条 授权内容
3.1 公司基于证券市场的发展,在用户使用聚宽JQData期间,对聚宽JQData数据保有不断更新和调整的权利。
3.2 未经公司事先书面许可,用户不得将聚宽JQData及其相关技术文档、信息资料提供给第三方,或用于本协议下约定之外的目的。
第四条 知识产权
4.1 公司所用于生产聚宽JQData的原始数据来源于上海证券交易所,深圳证券交易所,第三方数据提供商以及市场上其他公开可得的数据,经过公司专业的字段设计和数据整理,新生成的聚宽JQData数据的知识产权归公司所有,就公司合理所知,其授权用户使用的前述权利不侵犯任何第三方的商标权,著作权或专利权等知识产权权利。
4.2 未经公司书面许可,用户不得在其产品或宣传媒介上使用公司及其产品的文字和标识图片。公司与用户之间若有联合运营或推广的需要,具体授权将单独协商并另行签署协议予以约定。
第五条 用户责任
5.1 用户承诺使用聚宽JQData的数据或利用JQData数据加工之后的数据,只做研究目的使用,不用作商业目的和商业用途。
5.2 用户确保在使用聚宽JQData的过程中相关操作的合法性,不侵犯任何第三者的合法权益,包括但不限于著作权、商标权、专利权等;不会违反任何法律、法规、条例或规章。因为用户不当使用聚宽JQData对第三者权益造成损害的,由用户承担全部赔偿责任。
5.3 聚宽JQData为公司版权所有,用户不得对其进行盗用、反编译、恶意攻击及其它任何危害公司及其他聚宽JQData用户安全与权益的行为。
第六条 保密条款
6.1 在本协议有效期内及协议终止后永久期限,用户应对使用期间所产生的任何帐号、密码、文件、信息和数据(统称为“保密信息”)采取保密措施,未经公司同意,不得将保密信息以任何方式泄露给第三方。
第七条 违约责任
7.1 用户违反本协议所约定的义务,公司有权在不通知用户的情况下立即终止用户使用聚宽JQData的权利。同时,用户为使用聚宽JQData已经支付的使用费用将不予退还。
7.2 用户违反协议所约定的义务给公司及第三方造成损失的,应当承担赔偿责任。
第八条 免责条款
8.1 公司本着专业精神授权用户使用聚宽JQData,但难免会因为数据源问题、技术原因和人为疏漏导致更新延迟,缺失,错误及其他故障,公司对此并不承担任何责任;若用户发现上述问题并反馈给公司,公司会采取一切必要措施以确保聚宽JQData提供数据的准确性。
8.2 如发生下述任一情况而导致用户损失的,公司不承担责任: (1)发生不可抗力情形的; (2)黑客攻击、计算机病毒侵入或发作的; (3)聚宽JQData的硬件系统遭到破坏、瘫痪或无法正常使用的; (4)网络运营商技术调整的; (5)因政府管制而造成暂时性关闭的; (6)其它非因公司的过错而引起的。
第九条 协议的生效
9.1 用户按照本协议约定的方式确认接受本协议条款后本协议生效,有效期为一年,到期如双方均无异议或用户继续按照本协议约定使用聚宽JQData,则本协议以一年为期自动向后延续。
第十条 法律适用
10.1 本协议由中华人民共和国法律所约束和管辖。
第十一条 争议解决
11.1 凡因本协议引起的或与本协议有关的任何争议,双方首先应友好协商解决,协商不成的均应提交公司所在地有管辖权的法院通过诉讼解决。
第十二条 附则
12.1 在本协议有效期内,公司有权对本协议的内容进行修改。经修改的协议通过聚宽量化交易平台网页公告、用户注册账户时提供的电子邮件、手机短信或常规的信件传送等方式向用户发出通知,该等通知在发送时即视为已送达用户。用户在收到上述通知后继续使用聚宽JQData,视为接受修订后的协议。
JQData目前的服务器地址:39.107.190.114,端口号:7000

这个报错一般是由您网络问题造成的,常见解决方法如下:
JQData和官网不一致API对比
| 案例 | JQData(本地数据) | jqdata |
| get_bars / get_ticks | 默认返回结果格式为DataFrame | 官网默认返回结果为ndarray |
| 复权基准日期,fq_ref_date | 默认为None,返回不复权数据 | 默认为None,返回复权基准日为当天 |
| get_ticks | security不支持股票列表 | security支持股票列表 |
| alpha101, alpha191的fq复权选项 | check_date的前复权计算并存储; 股票池是全部A股; |
复权有pre、None、post三种选择,是获取时计算的; 股票池可以自定义 |
示例
本地
#获取贵州茅台按天为周期以"2018-12-05"为基础往前5个交易日的数据
df = get_bars('600519.XSHG', 5, unit='1d',fields=['date','open','high','low','close'],include_now=False,end_dt='2018-12-05')
print(df)
#返回[pandas.DataFrame]
date open high low close
0 2018-11-28 550.85 559.19 545.50 557.00
1 2018-11-29 566.03 569.80 549.01 551.60
2 2018-11-30 557.00 568.89 553.00 565.00
3 2018-12-03 589.00 605.00 584.77 601.20
4 2018-12-04 602.99 604.26 595.00 602.23
官网#获取贵州茅台按天为周期以"2018-12-05"为基础往前5个交易日的数据
df = get_bars('600519.XSHG', 5, unit='1d',fields=['date','open','high','low','close'],include_now=False,end_dt='2018-12-05')
print(df)
#返回结果格式为[numpy.ndarray]
[(2018-11-28, 536.55, 544.67, 531.33, 542.54)
(2018-11-29, 551.33, 555.0, 534.75, 537.28)
(2018-11-30, 542.54, 554.12, 538.64, 550.33)
(2018-12-03, 573.7, 589.29, 569.58, 585.59)
(2018-12-04, 587.33, 588.57, 579.55, 586.59)]
get_ticks
本地:目前不支持股票列表;
官网: 官网支持股票列表
# 官网
d = get_ticks(['000300.XSHG', '000001.XSHE'],start_dt=None, end_dt="2018-07-03", count=3)
print(d)
{'000300.XSHG': array([(20180702150000.0, 3407.98, 3510.84, 3383.73, 8392371200.0, 107100880896.0),
(20180702150003.0, 3407.98, 3510.84, 3383.73, 8435144800.0, 107601543168.0),
(20180702150051.0, 3407.96, 3510.84, 3383.73, 8435144800.0, 107601543168.0)],
dtype=(numpy.record, [('time', '<f8'), ('current', '<f8'), ('high', '<f8'), ('low', '<f8'), ('volume', '<f8'), ('money', '<f8')])), '000001.XSHE': array([(20180702145657.0, 8.62, 9.05, 8.56, 128485000.0, 1132138244.0),
(20180702145700.0, 8.62, 9.05, 8.56, 128514800.0, 1132395012.0),
(20180702150003.0, 8.61, 9.05, 8.56, 131552000.0, 1158545922.0)],
dtype=(numpy.record, [('time', '<f8'), ('current', '<f8'), ('high', '<f8'), ('low', '<f8'), ('volume', '<f8'), ('money', '<f8')]))}
1
)]))}
pip install jqdatasdk -U升级jqdatasdk至最新版本。
1. 行情和其他数据源有差异 ?
A:先确认是否对比的是同一种复权方式 , 我们默认返回前复权 , 对比的时候注意复权方式(价格及成交量都有进行复权处理)
2. 采用同样的复权方式,历史价格还是不同?
A:交易所并未提供复权数据,各数据商的复权数据都是自己计算的,都存在差异(可以对比一下不同平台000001的后复权数据就会发现差异)
3. 为什么获取的涨停价为无限大,跌停价为0?
A:这种情况,表明该股票在该日无涨跌停限制。无涨跌停限制的情况有很多,而且在不同的年份交易所的规定不同。比如增发股票、解除ST等情况。如果出现这种情况,您可以到巨潮网上查看具体的公告详情。如000863在2012-08-03无涨跌停限制,具体的公告见http://www.cninfo.com.cn/finalpage/2012-08-03/61363778.PDF
4. 分钟数据的成交量及价格,为什么和别的数据提供平台不一样?
A:交易所不提供分钟数据,只提供tick数据(不是分笔的),一个tick的bar的长度为3秒,然后数据提供商根据tick数据,自己制作分钟数据。由于交易所的行情分发机制,无法保障每个程序(或平台)读取到完全一致的数据所以产生了不同平台接收的tick并不完全相同。不同平台由于tick接收时间不同 , 以及分钟数据的切片规则等原因, 会造成分钟数据不一致的现象 , 比如有一条 14:00:00的tick,我们可能会纳入 14:00:00 至 14:01:00的bar , 但也有其他平台也可能会纳入 13:59:00到 14:00:00的bar , 总体来讲数据没有差异,只是划分不同 ,这样就造成了差异,您也可以自己提取tick数据并进行验证。
5. 分钟数据合成的最高价等数据和天数据不一致
A:这个是正常现象,但由于分钟数据和日数据都是是从tick数据合成的,而tick数据的快照截取时间,不同平台或许会有些许差别,从而出现分钟数据的最高价和最低价不完全一致。而对于日数据的最高价和最低价,是不存在这样的问题的
不建议拿分钟行情和日行情进行最高价最低价,开盘价收盘价的比较,分钟行情都是根据tick自己生成的,譬如说如000001.XSHE 在2019-08-16的分钟数据,tick时间切片的时候没有切到current = 15.14 , 那么根据当前tick现价合成的分钟最高价就不是15.14了,而是15.09,当时日最高价是15.14。
分钟行情的最高价是按照这一分钟所有tick的现价合成的最高价。
6. 分钟数据的第一分钟/最后一分钟的开盘价/收盘价与天数据的收盘价/开盘价不统一?
A:对于开盘价不一致:由于分钟行情是通过交易所tick按分钟进行合成,对于无成交的情况会使用上一分钟的收盘价作为该分钟的open和close进行填充;而日行情的开盘价由交易所直接下发,属当天第一笔成交价,如果当天第一笔成交价不是开盘第一分钟成交就会和分钟开盘价不同(如600007 2019-09-11), 和行情软件上的数据是一致的;
对于期货,还可能出现日行情收盘价和分钟收盘价不一致,期货交易所下发的日行情会在当天无成交的情况下在收盘后给一个特定的收盘价,这个收盘价就会和分钟收盘价出现不一致的现象。
7. 有些股票成交量为0,但成交额不为0? 股票分钟成交量的加总不等于日行情的成交量?
A:因数据储存的原因,目前历史分钟数据(非当天)的成交量会剔除不足一手的零散股,如果存在零散股会造成不一致的情况。
8. 有关tick数据--tick 时间戳重复
A:原始数据没有毫秒部分的数据,我们添加了毫秒部分,所以如果一秒钟出现多余2条数据,就会出现这种现象 一般来说是2条数据,刚好平分1秒钟里的0.5秒,但有时会接收到3条,就出现了重复的时间戳 处理的时候,如果有两个时间戳相同,我们会把第二个加上500毫秒
9.分钟数据,有的股票均价(或者成交额/成交量)超出了最高价或最低价?
A: 我们依照行情软件的惯例,给出的分钟成交量单位是手(省略了碎股,一般小于1手),成交额单位是元,成交额是真实成交的数额,是没有省略碎股的交易额的,所以单纯以实际成交额 / 省略碎股的成交量, 这样算得的均价是略有偏差的。
10.为什么有的标的的行情数据全是Nan?
A:(1).检查下标的的上市日期和退市日期.get_security_info('XXXXX').start_date / get_security_info('XXXXX').end_date
(2).如果检查标的当时的确已上市且未退市,可能和长期停牌有关。目前我们的行情数据是自2005年开始的,如000638自2004年停牌到2009-06-04,因为找不到填充数据,所以在20019-06-04之前这只标的行情数据全为Nan。,类似的标的还有'600788.XSHG','000765.XSHE','300753.XSHE'
11. 一些股票行情开始时间和其他软件不一样?
A: 对于股票, 一般都是因股票代码变更(包括退市后重新上市), 如果股票发生代码变更,根据交易所建议,大部分变更前和后部分数据是独立的,需要根据对应的代码及时间查询;个别是直接覆盖的,涉及覆盖的代码有 : 000931/601607/601360/001979
以下为整理的部分常见的股票代码变更记录
| 原代码 | 原名称 | 原缩写 | 变更日期 | 新代码 | 新名称 | 新缩写 |
|---|---|---|---|---|---|---|
| 000024.XSHE | 招商地产 | ZSDC | 2015-12-30 | 001979.XSHE | 招商蛇口 | ZSSK |
| 000527.XSHE | 美的电器 | MDDQ | 2013-9-18 | 000333.XSHE | 美的集团 | MDJT |
| 000562.XSHE | 宏源证券 | HYZQ | 2015-1-26 | 000166.XSHE | 申万宏源 | SWHY |
| 600849.XSHG | 上药转换 | SYZH | 2010-3-8 | 601607.XSHG | 上海医药 | SHYY |
| 601313.XSHG | 江南嘉捷 | JNJJ | 2018-02-07 | 601360.XSHG | 三六零 | SLL |
| 000043.XSHE | 中航善达 | ZHSD | 2019-12-13 | 001914.XSHE | 招商积余 | ZSJY |
| 000916.XSHE | 华北高速 | HBGS | 2017-12-25 | 001965.XSHE | 招商公路 | ZSGL |
| 300186.XSHE | 大华农 | DHN | 2015-11-2 | 300498.XSHE | 温氏股份 | WSGF |
| 600001.XSHG | 邯郸钢铁 | HDGT | 2009-12-29 | 000709.XSHE | 河钢股份 | HGGF |
| 600205.XSHG | S山东铝 | SSDL | 2007-4-30 | 601600.XSHG | 中国铝业 | ZGLY |
| 600296.XSHG | S兰铝 | SLL | 2007-4-30 | 601600.XSHG | 中国铝业 | ZGLY |
12. 许多指数行情/成分股的开始时间和交易软件不一样?
A: 中证官网可以查看各个指数的 编制方案 交易软件上您看到的开始时间应该是补充了基日到支付发布日期之后的数据,而不是指数真正的发布日期。我们的数据以中证官网开始披露为准 相关帖子 https://www.joinquant.com/post/2058?replyId=14050#14050
13. 为什么有些申万行业指数可以获取到未发布之前的行业行情数据?
A:数据来自申万 , 和中证指数刚好相反,申万行业指数基本都以1999-12-31为基日,并提供了自基日开始的行情数据 , 是正常的(成分股是从发布日期后才有的)
14. 为什么深成指指数的成交额与其他的软件相差那么大?
A: 深成指的成分股数量为500,不是所有在深圳证券交易所上市的A股股票。其他的数据提供商,均将深证的所有A股的成交额之和作为深成指399001的当日成交额之和,而聚宽的深成值的成交额为其对应的成分股在当日的成交额之和。如果需要深圳所有标的成交额,请查询深证综合指数399106。 其他对应的指数: 399001->399106 399003->399108 399005->399101 399006->399102 399007->399344
15. 创业板指的成交量与其它券商相差很大
A:这个问题比较特殊,在深交所的查询该指数的数据查到了两个不同的成交额和成交量数据,一个和用户提到的其他券商的数据相符(见附件《深交所官网399006日线图》),另一个和我们的数据相符(见附件《深交所官网历史行情图》)。 经过分析,发现和用户提到的其他券商的数据相符的还有另一个指数,即创业板综指(399102.XSHE),行情数据见附件《深交所官网399102日线图》,由此可见,我们的数据没有问题,即为399006.XSHE实际的成交量和成交额,而交易所不知是什么原因,用399102.XSHE的成交量和成交额替换掉了399006.XSHE的数据,导致在深交所官网查询数据发现日线图数据和历史行情数据不一致。 综上所述,我们的399006.XSHE显示的是该指数的真实的成交量和成交额数据,而用户提到的券商的成交量和成交额数据是和深交所官网日线图保持一致的399102.XSHE的数据,两个数据虽然不一样,但都是正确的。

1. 为什么我在别的网站上查的财务指标和聚宽提供的财务指标数据不一致?
A:注意区分单季度和报告期,一般财经网站上提供的财务指标数据都是上市公司披露的原始的报告期数据。上市公司公布财报分四种,一季度报、中期年度报、前三季度报、全年年报,统计的周期跨度分别为第一季度、前两个季度、前三个季度、全年,而聚宽考虑到量化分析,所以提供了单季度财务数据(get_fundamentals接口)此接口获取到的财务指标数据全是单季度的(除过statDate指定为年度时)。所以因为财报的统计周期不同,导致了一些指标上的不一致。如果想要获取报告期数据,可以使用finance.run_query调用报告期数据 ; 如果大家想对比别的网站的单季度统计数值,可以到同花顺上查看,如 http://stockpage.10jqka.com.cn/000759/finance/#finance ,然后选择按单季度统计,如下图。
相关帖子: https://www.joinquant.com/post/2746?replyId=16660#16660 https://www.joinquant.com/post/2654?replyId=16302#16302 报告期和单季度财务数据查询示例及验证对比可以查看这篇帖子 : https://www.joinquant.com/view/community/detail/20424
2. 为什么按单季度统计后,净利润还是和同花顺的净利润不同?
A:同花顺的净利润其实是归属母公司股东的净利润,我们提供的净利润指标就是净利润。还有一些其他指标,可能是统计口径不一致的问题,如果对比有差异,可以多对比几家。
3. 报告期数据中为什么有"重复的数据"?
A:您指的"重复的数据"应该指的是公司披露本季度财务数据同时披露的往期的财务数据 , 一般为去年同期,抑或有对之前披露的财务信息进行修正,(上市公告书,招募说明书中会披露过去近几年的财务数据,可以使用source_id字段进行判断)。 可以使用end_date(统计截止日期) 和 report_type ( 0:本期,1:非本期,一般为上年同期 ) 进行区分和过滤。
例如300080在2020-04-29发布的2019Q1数据修改了2019-04-26 发布的2019Q1数据
from jqdata import *
q = query(finance.STK_INCOME_STATEMENT.company_name,
finance.STK_INCOME_STATEMENT.code,
finance.STK_INCOME_STATEMENT.pub_date,
finance.STK_INCOME_STATEMENT.start_date,
finance.STK_INCOME_STATEMENT.end_date,
finance.STK_INCOME_STATEMENT.total_operating_revenue,
finance.STK_INCOME_STATEMENT.report_type,
finance.STK_INCOME_STATEMENT.report_date,
finance.STK_INCOME_STATEMENT.np_parent_company_owners).filter(
finance.STK_INCOME_STATEMENT.code == '300080.XSHE',
finance.STK_INCOME_STATEMENT.end_date == '2019-03-31',
# finance.STK_INCOME_STATEMENT.report_type == 1
).limit(200)
df = finance.run_query(q)
df.sort_values(by=['pub_date'], ascending=False)
4. 上市公司的财报如果后来有修改(修正),请问是怎么处理的?get_fundamentals是怎么处理有修改的财务数据。有的使用修复前的,有的使用修改后的?
A:(1)上市公司财报更新前和更新后的数据,为了避免未来函数(当前时间取到未来数据),理论上要保留同一报告期的所有版本,目前受数据源的限制,这块处理规则是按最新更新的(部分比较久远的数据可能会用第一个版本); (2)公司新发布一期财报,一般同时会给出上一年度同期的调整财报,对于这种情况相隔时间较久的情况(半年以上),我们单季度数据一般不再对老的财报进行更新;而有时候,公司会在短期内(半年内或者1个月内)对前段时间更新的财报进行修正, 这种情况我们单季度数据也会采用修正后的财报; (3)上面的规则主要是针对单季度财务数据的,报告期财务数据中,如果公司是在之后的某一季度修正的财报,那么数据都是有的
5. 某公司公布相关财报后,聚宽什么时候将其更新到线上?
A:单季度财务数据目前每个交易日盘后更新,数据中的pubDate对应公告日期,一般在公告日期当晚可以拿到,最晚第二天凌晨 报告期数据一般在公告日期当天就可以拿到,略快于单季度数据 ,不同数据源更新进度可能不一致 , 选择合适的进行查询就可以了
6. 单季度数据中上市之前的财报为什么没有?
A:上市之前的财报(不包括上市公告书等),不受证监会的监督约束,无法保证数据正确,而且对股票市场的股价影响波动很小,而上市公告书中只披露年度数据, 无法计算出完整的单季度数据 。 所以单季度只提供公司上市后发布的财务报表。公司上市时会同时披露前两到三年的年度数据,所以在报告期数据中可以查找到。
7. 单季度数据中,个别标的有些指标有,有些指标没有?
A:和公司披露的财报有关,属于自然缺失如果根据公司已披露的财务数据无法计算出该项指标时,那么此项指标为Nan,比如在2019-07-24时,获取不到688001的roe,但是可以获取到688388的roe(这两个标的都是同一天上市的新股) 如 688388 ,有披露前四个季度的"归属于母公司所有者的净利润" ,所以roe有数据 http://stockpage.10jqka.com.cn/688388/finance/#finance 如 688001 缺少 2018q4的 "归属于母公司所有者的净利润" ,所以没roe数据http://stockpage.10jqka.com.cn/688001/finance/#finance
8. 为什么一些股票查询不到财务数据?
A: 检查一下标的在查询的日期是否处于上市状态,单季度数据只维护上市后披露的 另外对于股票代码变更的原因 ,因数据源原因可能需要使用变更后的代码进行查询,参考 "行情数据 - 一些股票行情开始时间和其他软件不一样? "
9. 使用get_fundamentals的date参数或者 get_fundamentals_continuously 查询单季度数据时,会出现从某个季度直接跳到下下一个季度的情况 ?
A: 上述方法查询的是某天所能看到的最新一期的财报,如上市公司在同一天披露了两份报表,如600507在2017-04-22同时披露了2016年报和2017年第一季度报 ,在2017-04-21看到的最新一期2016q3的数据,在2017-04-22看到的最新一期报表是2017q1 , 2016q4的数据不是缺失,而是应该通过get_fundamentals的statDate参数去查询。
10. STK_XR_XD 分红送股数据是怎么更新的?
A : STK_XR_XD 表以报告期为维度,每个报告期为一条数据(特别分红等可以看作额外的报告期),其中report_date和bonus_type对应, 一般为中期分红和年度分红;也存在季度分红,特别分红等。 分红送股信息的流程一般为 : 董事会预案-->股东大会预案-->实施方案公告 , 进度对应的字段会随着对应进度的公告数据及时更新 , 进度未产生时对应的字段为空 , 如果在某一进度取消分红,bonus_cancel_pub_date及plan_progress等会有相关更新进行说明。 如果要获取最新的,已确认进行实施分红的可以根据除权除息日(a_xr_date)进行排序筛选,而不是report_date。 如
from jqdata import finance
finance.run_query(query(finance.STK_XR_XD).filter(
finance.STK_XR_XD.a_xr_date< ="2019-10-23"
).order_by(
finance.STK_XR_XD.a_xr_date.desc()))
1. 为什么000001上证指数和000002A股指数的成分股完全相同?
A: 000001是上证指数,包含上交所注册的A股和B股,000002是A股指数,只包含上交所A股,理论上000002+所有上交所B股的数量应该等于000001的成分股数量,但目前我们未提供B股数据,所以成分股完全一致。点击可以查看中证官网A股指数编制方案
2. 为什么有些证监会行业概念的成分股为0?
有可能出现这种现象,可以到 http://www.csrc.gov.cn/pub/newsite/scb/ssgshyfljg/ 证监会官网上去确认一下。
3. 为什么有些股票查不到一些日期的指数/行业/概念成分股划分 ?
一般和股票更换代码有关 , 参考 "行情数据 - 一些股票行情开始时间和其他软件不一样? " 此类数据因数据源关系, 许多变更代码的标的都是用新代码直接覆盖原代码的,因此需要使用新代码做适当处理
4. 为什么有些申万行业代码没有成分股?
A:申万的行业代码在14年2月21有一次比较大改动,新增了11个行业代码:['801710','801720','801730','801740','801750','801760','801770','801780','801790','801880','801890'],弃用了6个行业代码:['801060','801070','801090','801100','801190','801220'] 所以新增行业代码在2014-02-21之前没有成分股,弃用的行业代码在2014-02-21之后没有成分股。 其他代码具体查看行业数据页面
1. 为什么周六还查询周五的融资融券数据还查不到?
A:我们提供的融资融券数据来自于上交所和深交所官网,其数据来自于每个交易日后各家券商向交易所汇报的数据。上交所的融资融券数据当日收盘后会更新,深交所的融资融券的数据会在下一个交易日的10点更新,这样一来深交所周五的融资融券数据在周一上午10点才能获取到。
2. 为什么某期货合约日行情数据的总成交量会小于中金所披露的持仓会员前20名的成交量?
A: 2020年后期货成交量是单边计算的,因为多空成交相同,而持仓机构的成交量指的是他自身的成交量,比如;某个会员机构多头成交2手,空头成交1手,它必须要与别的会员成交,只能记3手。 可以和交易所官网数据进行对比,比如中金所: http://www.cffex.com.cn/ccpm/
3. 为什么期权风险指标数据中商品期权只有delta数据,没有theta等数据?
A: 此数据来自交易所,上期所,郑商所及大商所都未披露此项数据,所以获取不到.ETF期权有完整的风险指标,上交所有披露。
4. 宏观数据有缺失?
A:有些数据本身统计局官网未公布,属于正常缺失,比如macro.MAC_AREA_CPI_MONTH表七月份的全国cpi数据,在统计局官网也是没有的,如果觉得有问题可以先和统计局官网数据进行对比: http://data.stats.gov.cn/easyquery.htm?cn=A01&zb=A010302&sj=201903
5. alpha191/alpha101 中的nan值和inf值是什么意思?
A:nan值代表缺失,inf代表无限大,-inf代表无限小 ; Nan值产生的原因 : 停牌返回nan , 刚上市(需要的数据量不足),已退市返回nan , 以及由于算法计算结果为Nan值,如计算相关系数等 inf产生的原因 : 由具体算法决定 ,有可能产生inf或-inf。如公式中有除法,而分母恰好为0。
6. 聚宽因子库中为什么有许多nan值?
A:缺少依赖数据,财务数据中如果标的未披露相关字段,依赖数据不完整的话会返回nan值, 需要注意到财务报表披露规则变更,标的报表披露形式(金融类,非金融类等) , 以及标的上市时间等。
| 交易市场 | 代码后缀 | 示例代码 | 证券简称 |
|---|---|---|---|
| 上海证券交易所 | .XSHG | 600519.XSHG | 贵州茅台 |
| 深圳证券交易所 | .XSHE | 000001.XSHE | 平安银行 |
| 中金所 | .CCFX | IC9999.CCFX | 中证500主力合约 |
| 大商所 | .XDCE | A9999.XDCE | 豆一主力合约 |
| 上期所 | .XSGE | AU9999.XSGE | 黄金主力合约 |
| 郑商所 | .XZCE | CY8888.XZCE | 棉纱期货指数 |
| 上海国际能源期货交易所 | .XINE | SC9999.XINE | 原油主力合约 |
| 场外基金 | .OF | 398051.OF | 中海环保新能源混合 |
normalize_code(code)
将其他形式的标的代码转换为jqdatasdk可用的标的代码形式。 适用于A股市场股票、期货以及场内基金代码,支持传入单只标的或一个标的list
以股票为例
#输入
normalize_code(['000001', 'SZ000001', '000001SZ', '000001.sz', '000001.XSHE'])
#输出
['000001.XSHE', '000001.XSHE', '000001.XSHE', '000001.XSHE', '000001.XSHE']
get_security_info(code)
获取股票/基金/指数的信息.
参数
返回值
一个对象, 有如下属性:
示例
以股票为例
# 获取000001.XSHE的中文名称
display_name = get_security_info('000001.XSHE').display_name
print(display_name)
>>>平安银行
get_all_securities(types=[], date=None)
获取平台支持的所有股票、基金、指数、期货信息
参数
返回
[pandas.DataFrame], 比如:get_all_securities()[:2]返回:
| --- | display_name | name | start_date | end_date | type |
|---|---|---|---|---|---|
| 000001.XSHE | 平安银行 | PAYH | 1991-04-03 | 9999-01-01 | stock |
| 000002.XSHE | 万 科A | WKA | 1991-01-29 | 9999-01-01 | stock |
示例
#将所有股票列表转换成数组
stocks = list(get_all_securities(['stock']).index)
#获得所有指数列表
get_all_securities(['index'])
#获得所有基金列表
df = get_all_securities(['fund'])
#获取所有期货列表
get_all_securities(['futures'])
#获得etf基金列表
df = get_all_securities(['etf'])
#获得lof基金列表
df = get_all_securities(['lof'])
#获得分级A基金列表
df = get_all_securities(['fja'])
#获得分级B基金列表
df = get_all_securities(['fjb'])
#获得2015年10月10日还在上市的所有股票列表
get_all_securities(date='2015-10-10')
#获得2015年10月10日还在上市的 etf 和 lof 基金列表
get_all_securities(['etf', 'lof'], '2015-10-10')
get_trade_days(start_date=None, end_date=None, count=None)
获取指定日期范围内的所有交易日, 返回 [numpy.ndarray], 包含指定的 start_date 和 end_date, 默认返回至 datatime.date.today() 的所有交易日
参数
#获取“2018-02-10”至”2018-03-01“的交易日
get_trade_days(start_date="2018-02-10",end_date="2018-03-01")
# 输出为数组
array([datetime.date(2018, 2, 12), datetime.date(2018, 2, 13),
datetime.date(2018, 2, 14), datetime.date(2018, 2, 22),
datetime.date(2018, 2, 23), datetime.date(2018, 2, 26),
datetime.date(2018, 2, 27), datetime.date(2018, 2, 28),
datetime.date(2018, 3, 1)], dtype=object)
get_all_trade_days()
获取所有交易日, 不需要传入参数, 返回一个包含所有交易日的 [numpy.ndarray], 每个元素为一个 [datetime.date] 类型.
get_all_trade_days()
# 输出
array([datetime.date(2005, 1, 4), datetime.date(2005, 1, 5),
datetime.date(2005, 1, 6), ..., datetime.date(2023, 3, 7),
datetime.date(2023, 3, 8), datetime.date(2023, 3, 9)], dtype=object)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,
我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充. 如想跳过, 请使用 skip_paused=True 参数, 注意当 panel=True 且获取多标的时不支持(panel结构需要索引对齐)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后(或夜盘结束)时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close','paused','open_interest'], open_interest为期货持仓量 |
| skip_paused | 是否跳过不交易日期(含:停牌/未上市/退市后的日期) | 如果不跳过, 停牌时会使用停牌前的数据填充,上市前或者退市后数据都为 nan。 |
| fill_paused | 对于停牌股票的价格处理,默认为True | 默认为True,用pre_close价格填充);False 表示使用NAN填充停牌的股票价格。 |
| fq | 复权选项,默认为前复权(fq='pre') | 'pre':前复权 / 'none':不复权, 返回实际价格 / 'post':后复权 |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如本地pandas版本大于0.25将强制返回dataframe , 详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的股票数量 | |
| money | 时间段中的成交的金额 | |
| factor | pre':前复权(默认)/None:不复权,返回实际价格/'post':后复权 | 前(后)复权数据=价格×前(后)复权因子; 前(后)复权后的成交量=成交量 / 前(后)复权因子; 成交不额处理 |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:股票是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
| pre_close | 前一个单位时间结束时的价格,按天则是前一天的收盘价 | 期货:pre_close--前一天结算;建议使用get_extras获取结算价;在分钟频率下pre_close=open |
| paused | bool值,股票是否停牌; | 停牌时open/close/low/high/pre_close;都等于停牌前的收盘价, volume=money=0 |
| open_interest | 期货(期权)持仓量 |
返回
代码示例
获取一支股票
#获取平安银行按1分钟为周期以“2015-01-30 14:00:00”为基础前4个时间单位的数据
df = get_price('000001.XSHE', end_date='2015-01-30 14:00:00',count=4, frequency='minute', fields=['open','close','high','low','volume','money'])
print(df)
open close high low volume money
2015-01-30 13:57:00 8.98 8.97 8.98 8.97 295949.0 2656384.0
2015-01-30 13:58:00 8.97 8.97 8.98 8.97 339030.0 3041408.0
2015-01-30 13:59:00 8.98 8.98 8.98 8.96 459533.0 4121592.0
2015-01-30 14:00:00 8.98 8.97 8.98 8.96 469211.0 4208384.0
获取多只股票
#获取多支股票, 则返回[pandas.Panel]对象
panel=get_price(['000300.XSHG', '000001.XSHE'])
#返回[pandas.DataFrame]对象,行索引是[datetime.datetime]对象, 列索引是股票代号
df=panel['money'][:4]
print(df)
000300.XSHG 000001.XSHE
2015-01-05 5.198498e+11 4.565388e+09
2015-01-06 4.985296e+11 3.453446e+09
2015-01-07 3.987317e+11 2.634796e+09
2015-01-08 3.558320e+11 2.128003e+09
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
参数
关于停牌: 此API可以获取多只股票的数据, 部分标的在获取时间的范围内可能存在停牌的情况。 此接口返回的结果会直接跳过停牌的日期, 在获取多标的时或使用索引时,需注意时间轴在部分标的停牌时不一致的情况
返回
返回一个pandas.dataframe对象,可以按任意周期返回股票的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
获取一支股票
#获取平安银行按120分钟为周期以"2018-12-05"为基础往前5个时间单位的数据
df = get_bars('000001.XSHE', 5, unit='120m',fields=['date','open','close','high','low','volume','money'],include_now=False,end_dt='2018-12-05')
print(df)
date open close high low volume money
0 2018-11-30 15:00:00 10.25 10.36 10.36 10.18 31202900.0 320769828.0
1 2018-12-03 11:30:00 10.59 10.64 10.66 10.48 80398200.0 850921284.0
2 2018-12-03 15:00:00 10.64 10.59 10.65 10.56 26011500.0 275453511.0
3 2018-12-04 11:30:00 10.57 10.60 10.62 10.53 29793600.0 315213376.0
4 2018-12-04 15:00:00 10.60 10.59 10.61 10.54 23687700.0 250530360.0
获取多支股票#获取平安银行、万科A按120分钟为周期以"2018-12-05"为基础往前2个时间单位的数据
df = get_bars(['000001.XSHE','000002.XSHE'], 2, unit='120m',fields=['date','open','close','high','low','volume','money'],include_now=False,end_dt='2018-12-05')
print(df)
date open close high low volume \
000001.XSHE 0 2018-12-04 11:30:00 10.57 10.60 10.62 10.53 29793600.0
1 2018-12-04 15:00:00 10.60 10.59 10.61 10.54 23687700.0
000002.XSHE 0 2018-12-04 11:30:00 25.56 25.23 25.56 25.10 22614700.0
1 2018-12-04 15:00:00 25.24 25.13 25.24 24.87 28379900.0
money
000001.XSHE 0 315213376.0
1 250530360.0
000002.XSHE 0 571859390.0
1 709510464.0
get_call_auction(security, start_date, end_date, fields=None)
支持股票(2010年至今)、场内基金(2019年至今)、指数(2017年至今)和上证ETF期权(2017年至今)的集合竞价数据。为了防止返回数据量过大, 我们每次最多返回5000行。
参数:
返回值:
返回指定时间区间标的集合竞价tick数据,返回字段结果如下:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价(不复权) | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
示例:
以股票为例
#获取平安银行2019-09-02至2019-09-05期间的集合竞价数据
df=get_call_auction('000001.XSHE','2019-09-02','2019-09-05')
print(df)
code time current volume money a1_p \
0 000001.XSHE 2019-09-02 09:25:03 14.15 568900.0 8049900.0 14.15
1 000001.XSHE 2019-09-03 09:25:03 14.48 647700.0 9378700.0 14.48
2 000001.XSHE 2019-09-04 09:25:03 14.32 322637.0 4620200.0 14.33
3 000001.XSHE 2019-09-05 09:25:03 14.56 1673700.0 24369100.0 14.56
a1_v a2_p a2_v a3_p ... b1_p b1_v b2_p \
0 58802.0 14.16 4500.0 14.17 ... 14.14 8700.0 14.13
1 67091.0 14.49 201092.0 14.50 ... 14.47 3100.0 14.46
2 67179.0 14.34 17000.0 14.35 ... 14.32 27063.0 14.31
3 122434.0 14.57 364479.0 14.58 ... 14.55 18700.0 14.54
b2_v b3_p b3_v b4_p b4_v b5_p b5_v
0 116000.0 14.12 30900.0 14.11 267900.0 14.10 119200.0
1 3900.0 14.45 40000.0 14.44 700.0 14.43 1900.0
2 12600.0 14.30 166400.0 14.29 2100.0 14.28 10100.0
3 2100.0 14.53 24800.0 14.51 19300.0 14.50 81700.0
[4 rows x 25 columns]
get_ticks(security, start_dt, end_dt, count, fields)
股票部分,支持 2010-01-01 至今的tick数据,提供买五卖五数据。(每3秒一次快照)
期货部分,支持 2010-01-01 至今的tick数据,提供买一卖一数据。(每0.5秒一次快照)
期权部分,支持期权tick数据,每0.5s一次快照。其中上证ETF期权从2017-01-01至今,股指期权从2019-12-24至今,商品期权从2019-12-02至今
场内基金,支持 2019-01-01 至今的tick数据,提供买五卖五盘口数据。(每3秒一次快照)
指数部分, 支持 2017-01-01 至今的tick数据。(每3秒一次快照)
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com。
参数:
get_extras(info, security_list, start_date='2015-01-01', end_date='2015-12-31', df=True, count=None)
参数
info: ['is_st', 'acc_net_value', 'unit_net_value', 'futures_sett_price', 'adj_net_value'] 中的一个
| 指定info字段 | 返回信息 |
|---|---|
| is_st | 是否是ST,是则返回 True,否则返回 False |
| acc_net_value | 基金累计净值 |
| unit_net_value | 基金单位净值 |
| futures_sett_price | 期货结算价 |
| adj_net_value | 场外基金的复权净值 |
security_list: 标的列表
start_date/end_date: 开始结束日期, 同 [get_price]
df: 返回[pandas.DataFrame]对象或者dict
count: 数量, 与 start_date 二选一, 不可同时使用, 必须大于 0. 表示取 end_date 往前的 count 个交易日的数据
返回值
以股票为例
# 平安银行和神城A在2013-12-01至2013-12-03是否为ST
get_extras('is_st', ['000001.XSHE', '000018.XSHE'], start_date='2013-12-01', end_date='2013-12-03')
# 输出:
000001.XSHE 000018.XSHE
2013-12-02 False True
2013-12-03 False True
目前可通过 run_query 方法进行查询的数据都为储存于mysql的数据(单季度数据通过get_fundamentals/get_fundamentals_continuously查询)。根据数据的品种我们大致分为四类 :
finance 库(包含股票,基金,期货的相关数据及其他) : 融资融券数据,沪深市场每日概况,市场通数据,上市公司相关信息,报告期财务数据,申万行业指数数据,期货交易统计数据,期货外盘日行情,场内基金份额数据,公募基金相关数据,新闻联播文本数据
opt 库(包含期权相关数据) : 期权相关数据
bond 库(包含债券相关数据) : 债券相关数据
macro 库(包含宏观数据) : 宏观数据
参数 : query_object , 使用的query对象通过 from jqdatasdk import * 导入 , 关于【query的简易教程】
返回 : DataFrame,
用法 : 数据库名.run_query( query_object) ,
如查询finance库中 STK_XR_XD 表的数据
from jqdatasdk import *
auth(username, pwd)
q = query(finance.STK_XR_XD) # 注意需要先登陆,否则会报错表不存在
finance.run_query(q)
查询 opt 库中 OPT_CONTRACT_INFO 表的数据
q = query( opt.OPT_CONTRACT_INFO ).filter( opt.OPT_CONTRACT_INFO.underlying_symbol=='510050.XSHG'
).order_by(opt.OPT_CONTRACT_INFO.list_date.desc()).limit(100) # 查询最新挂牌的100条 510050 etf期权的合约资料
opt.run_query(q)
注意 :
1.为防止返回数据量过大,单次返回最多5000行;
2.不支持进行连表查询,即同时查询多张表的数据;
3.如query_object未使用order_by指定字段排序,返回数据的顺序没有意义;
4.id字段为自增id,没有意义;
normalize_code(code)
将其他形式的股票代码转换为jqdatasdk函数可用的股票代码形式。 适用A股市场股票代码,支持传入单只股票或一个股票list
以股票为例
#输入
normalize_code(['000001', 'SZ000001', '000001SZ', '000001.sz', '000001.XSHE'])
#输出
['000001.XSHE', '000001.XSHE', '000001.XSHE', '000001.XSHE', '000001.XSHE']
调用方法
get_security_info(code)
参数
返回值
示例
# 获取000001.XSHE的中文名称
display_name = get_security_info('000001.XSHE').display_name
print(display_name)
>>>平安银行
# 获取000001.XSHE的上市时间
start_date = get_security_info('000001.XSHE').start_date
print(start_date)
>>>1991-04-03
get_all_securities(types=[], date=None)
获取平台支持的所有股票、基金、指数、期货信息
参数
返回
示例
#获得所有股票列表
df=get_all_securities()
print(df[:2])
display_name name start_date end_date type
000001.XSHE 平安银行 PAYH 1991-04-03 2200-01-01 stock
000002.XSHE 万科A WKA 1991-01-29 2200-01-01 stock
#获得2020年10月10日还在上市的所有股票列表
df=get_all_securities(date='2020-10-10')
print(df[:5])
display_name name start_date end_date type
000001.XSHE 平安银行 PAYH 1991-04-03 2200-01-01 stock
000002.XSHE 万科A WKA 1991-01-29 2200-01-01 stock
000004.XSHE 国华网安 GHWA 1990-12-01 2200-01-01 stock
000005.XSHE 世纪星源 SJXY 1990-12-10 2200-01-01 stock
000006.XSHE 深振业A SZYA 1992-04-27 2200-01-01 stock
#将所有股票列表转换成数组
stocks = list(get_all_securities(['stock']).index)
stocks[:5]
>>>['000001.XSHE', '000002.XSHE', '000004.XSHE']
得到多只股票在一段时间是否是ST
get_extras(info, security_list, start_date='2015-01-01', end_date='2015-12-31', df=True, count=None)
参数
返回值
示例
# 判断平安银行和神城A在2013-12-01至2013-12-03是否为ST
get_extras('is_st', ['000001.XSHE', '000018.XSHE'], start_date='2013-12-01', end_date='2013-12-03',df=False)
>>>{'000001.XSHE': array([False, False]), '000018.XSHE': array([ True, True])}
# 判断平安银行和神城A在2013-12-01至2013-12-03是否为ST
get_extras('is_st', ['000001.XSHE', '000018.XSHE'], start_date='2013-12-01', end_date='2013-12-03')
000001.XSHE 000018.XSHE
2013-12-02 False True
2013-12-03 False True
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None, panel=True, fill_paused=True)
关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,
我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充. 如想跳过, 请使用 skip_paused=True 参数, 注意当 panel=True 且获取多标的时不支持(panel结构需要索引对齐)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close','paused','open_interest'], open_interest为期货持仓量 |
| skip_paused | 是否跳过不交易日期(含:停牌/未上市/退市后的日期) | 如果不跳过, 停牌时会使用停牌前的数据填充,上市前或者退市后数据都为 nan。 |
| fill_paused | 对于停牌股票的价格处理,默认为True | 默认为True,用pre_close价格填充);False 表示使用NAN填充停牌的股票价格。 |
| fq | 复权选项,默认为前复权(fq='pre') | 'pre':前复权 / 'none':不复权, 返回实际价格 / 'post':后复权 |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如果您的环境pandas大于0.25 ,将强制返回dataframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的股票数量 | 单位股 |
| money | 时间段中的成交的金额 | |
| factor | pre':前复权(默认)/None:不复权,返回实际价格/'post':后复权 | 前(后)复权数据=价格×前(后)复权因子; 前(后)复权后的成交量=成交量 / 前(后)复权因子; 成交额不处理 |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:股票是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
| pre_close | 前一个单位时间结束时的价格,按天则是前一天的收盘价 | 期货:pre_close--前一天结算;建议使用get_extras获取结算价;在分钟频率下pre_close=open |
| paused | bool值,股票是否停牌; | 停牌时open/close/low/high/pre_close;都等于停牌前的收盘价, volume=money=0 |
返回
代码示例
获取一支股票
#获取平安银行按1分钟为周期以“2015-01-30 14:00:00”为基础前4个时间单位的数据
df = get_price('000001.XSHE', end_date='2015-01-30 14:00:00',count=4, frequency='minute', fields=['open','close','high','low','volume','money'])
print(df)
open close high low volume money
2015-01-30 13:57:00 8.98 8.97 8.98 8.97 295949.0 2656384.0
2015-01-30 13:58:00 8.97 8.97 8.98 8.97 339030.0 3041408.0
2015-01-30 13:59:00 8.98 8.98 8.98 8.96 459533.0 4121592.0
2015-01-30 14:00:00 8.98 8.97 8.98 8.96 469211.0 4208384.0
获取多只股票
#获取多支股票, 则返回[pandas.Panel]对象
panel=get_price(['000300.XSHG', '000001.XSHE'])
#返回[pandas.DataFrame]对象,行索引是[datetime.datetime]对象, 列索引是股票代号
df=panel['money'][:4]
print(df)
000300.XSHG 000001.XSHE
2015-01-05 5.198498e+11 4.565388e+09
2015-01-06 4.985296e+11 3.453446e+09
2015-01-07 3.987317e+11 2.634796e+09
2015-01-08 3.558320e+11 2.128003e+09
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流股票软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
关于停牌: 此API可以获取多只股票的数据, 部分标的在获取时间的范围内可能存在停牌的情况。 此接口返回的结果会直接跳过停牌的日期, 在获取多标的时或使用索引时,需注意时间轴在部分标的停牌时不一致的情况
返回
返回一个pandas.dataframe对象,可以按任意周期返回股票的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
获取一支股票
#获取平安银行按120分钟为周期以"2018-12-05"为基础往前5个时间单位的数据
df = get_bars('000001.XSHE', 5, unit='120m',fields=['date','open','close','high','low','volume','money'],include_now=False,end_dt='2018-12-05')
print(df)
date open close high low volume money
0 2018-11-30 15:00:00 10.25 10.36 10.36 10.18 31202900.0 320769828.0
1 2018-12-03 11:30:00 10.59 10.64 10.66 10.48 80398200.0 850921284.0
2 2018-12-03 15:00:00 10.64 10.59 10.65 10.56 26011500.0 275453511.0
3 2018-12-04 11:30:00 10.57 10.60 10.62 10.53 29793600.0 315213376.0
4 2018-12-04 15:00:00 10.60 10.59 10.61 10.54 23687700.0 250530360.0
获取多支股票
#获取平安银行、万科A按120分钟为周期以"2018-12-05"为基础往前2个时间单位的数据
df = get_bars(['000001.XSHE','000002.XSHE'], 2, unit='120m',fields=['date','open','close','high','low','volume','money'],include_now=False,end_dt='2018-12-05')
print(df)
date open close high low volume \
000001.XSHE 0 2018-12-04 11:30:00 10.57 10.60 10.62 10.53 29793600.0
1 2018-12-04 15:00:00 10.60 10.59 10.61 10.54 23687700.0
000002.XSHE 0 2018-12-04 11:30:00 25.56 25.23 25.56 25.10 22614700.0
1 2018-12-04 15:00:00 25.24 25.13 25.24 24.87 28379900.0
money
000001.XSHE 0 315213376.0
1 250530360.0
000002.XSHE 0 571859390.0
1 709510464.0
get_call_auction(security, start_date, end_date, fields=None)
支持股票(2010年至今)、场内基金(2019年至今)、指数(2017年至今)和上证ETF期权(2017年至今)的集合竞价数据。当日的集合竞价数据下午15点更新。为了防止返回数据量过大, 我们每次最多返回5000行。
参数:
返回值:
返回指定时间区间标的集合竞价tick数据,返回字段结果如下:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价(不复权) | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
示例:
以股票为例,接口的具体使用,可查看各市场对应的示例
#获取平安银行2019-09-02至2019-09-05期间的集合竞价数据
df=get_call_auction('000001.XSHE','2019-09-02','2019-09-05')
print(df)
code time current volume money a1_p \
0 000001.XSHE 2019-09-02 09:25:03 14.15 568900.0 8049900.0 14.15
1 000001.XSHE 2019-09-03 09:25:03 14.48 647700.0 9378700.0 14.48
2 000001.XSHE 2019-09-04 09:25:03 14.32 322637.0 4620200.0 14.33
3 000001.XSHE 2019-09-05 09:25:03 14.56 1673700.0 24369100.0 14.56
a1_v a2_p a2_v a3_p ... b1_p b1_v b2_p \
0 58802.0 14.16 4500.0 14.17 ... 14.14 8700.0 14.13
1 67091.0 14.49 201092.0 14.50 ... 14.47 3100.0 14.46
2 67179.0 14.34 17000.0 14.35 ... 14.32 27063.0 14.31
3 122434.0 14.57 364479.0 14.58 ... 14.55 18700.0 14.54
b2_v b3_p b3_v b4_p b4_v b5_p b5_v
0 116000.0 14.12 30900.0 14.11 267900.0 14.10 119200.0
1 3900.0 14.45 40000.0 14.44 700.0 14.43 1900.0
2 12600.0 14.30 166400.0 14.29 2100.0 14.28 10100.0
3 2100.0 14.53 24800.0 14.51 19300.0 14.50 81700.0
[4 rows x 25 columns]
get_ticks(security, start_dt, end_dt, count, fields, skip=True,df=True)
股票部分, 支持 2010-01-01 至今的tick数据,提供买五卖五数据。(每3秒一次快照)
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 股票代码或期货代码,不支持传入多个标的
start_dt: 开始日期
end_dt: 结束日期
count: 取出指定时间区间内前多少条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下:
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据。
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
股票tick返回结果
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额 | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
股票tick数据示例:
# 获取平安银行2018-07-02的tick数据,start_dt和count只能有一个不为None值
d = get_ticks("000001.XSHE",start_dt=None, end_dt="2018-07-03", count=8)
print(d)
#输出
time current high low volume money a1_p \
0 2018-07-02 14:56:42 8.62 9.05 8.56 128332300.0 1.130823e+09 8.62
1 2018-07-02 14:56:45 8.62 9.05 8.56 128348600.0 1.130963e+09 8.62
2 2018-07-02 14:56:48 8.61 9.05 8.56 128380000.0 1.131233e+09 8.62
3 2018-07-02 14:56:51 8.62 9.05 8.56 128420300.0 1.131581e+09 8.62
4 2018-07-02 14:56:54 8.62 9.05 8.56 128425000.0 1.131621e+09 8.62
5 2018-07-02 14:56:57 8.62 9.05 8.56 128485000.0 1.132138e+09 8.62
6 2018-07-02 14:57:00 8.62 9.05 8.56 128514800.0 1.132395e+09 0.00
7 2018-07-02 15:00:03 8.61 9.05 8.56 131552000.0 1.158546e+09 8.61
a1_v a2_p a2_v ... b1_p b1_v b2_p b2_v b3_p \
0 479000.0 8.63 651000.0 ... 8.61 13500.0 8.60 434200.0 8.59
1 478700.0 8.63 651000.0 ... 8.61 5500.0 8.60 436600.0 8.59
2 478400.0 8.63 651000.0 ... 8.61 2000.0 8.60 512600.0 8.59
3 464600.0 8.63 651000.0 ... 8.61 23100.0 8.60 558200.0 8.59
4 460300.0 8.63 651000.0 ... 8.61 108800.0 8.60 564300.0 8.59
5 386500.0 8.63 649000.0 ... 8.61 399200.0 8.60 682500.0 8.59
6 0.0 0.00 0.0 ... 0.00 0.0 0.00 0.0 0.00
7 2560700.0 8.62 483200.0 ... 8.60 1009300.0 8.59 201000.0 8.58
b3_v b4_p b4_v b5_p b5_v
0 211300.0 8.58 311100.0 8.57 180000.0
1 211300.0 8.58 306100.0 8.57 180000.0
2 210900.0 8.58 306100.0 8.57 180000.0
3 209600.0 8.58 306200.0 8.57 179200.0
4 209500.0 8.58 307300.0 8.57 184200.0
5 209500.0 8.58 306800.0 8.57 184200.0
6 0.0 0.00 0.0 0.00 0.0
7 365600.0 8.57 184700.0 8.56 250900.0
[8 rows x 26 columns]
get_mtss(security_list, start_date=None, end_date=None, fields=None, count=None)
获取一只或者多只股票在一个时间段内的融资融券信息
注: 需导入 jqdatasdk 模块,from jqdatasdk import *
参数
security_list: 一只股票代码或者一个股票代码的 list
start_date: 开始日期, 与 count 二选一, 不可同时使用. 一个字符串或者 [datetime.datetime]/[datetime.date] 对象, 默认为平台提供的数据的最早日期
end_date: 结束日期, 一个字符串或者 [datetime.date]/[datetime.datetime] 对象, 默认为 datetime.date.today()
count: 数量, 与 start_date 二选一,不可同时使用, 必须大于 0. 表示返回 end_date 之前 count 个交易日的数据, 包含 end_date
fields: 字段名或者 list, 可选. 默认为 None, 表示取全部字段, 各字段含义如下:
| 字段名 | 含义 |
|---|---|
| date | 日期 |
| sec_code | 股票代码 |
| fin_value | 融资余额(元) |
| fin_buy_value | 融资买入额(元) |
| fin_refund_value | 融资偿还额(元) |
| sec_value | 融券余量(股) |
| sec_sell_value | 融券卖出量(股) |
| sec_refund_value | 融券偿还量(股) |
| fin_sec_value | 融资融券余额(元) |
返回
返回一个 [pandas.DataFrame] 对象,默认的列索引为取得的全部字段. 如果给定了 fields 参数, 则列索引与给定的 fields 对应.
示例
获取一只股票
# 获取平安银行在2016-01-01和2016-04-01的融资融券信息
df=get_mtss('000001.XSHE','2016-01-01','2016-04-01',fields=['date','sec_code','fin_value','fin_buy_value','fin_refund_value','sec_value','sec_sell_value','sec_refund_value','fin_sec_value'])
print(df[:5])
date sec_code fin_value fin_buy_value fin_refund_value \
0 2016-01-04 000001.XSHE 3.472612e+09 152129217.0 169414153.0
1 2016-01-05 000001.XSHE 3.439317e+09 143615276.0 176910198.0
2 2016-01-06 000001.XSHE 3.424639e+09 110246569.0 124924119.0
3 2016-01-07 000001.XSHE 3.431689e+09 35093634.0 28044375.0
4 2016-01-08 000001.XSHE 3.369931e+09 136799561.0 198556950.0
sec_value sec_sell_value sec_refund_value fin_sec_value
0 594640.0 184100.0 317900.0 3.479349e+09
1 584540.0 20800.0 30900.0 3.445981e+09
2 403040.0 900.0 182400.0 3.429286e+09
3 395140.0 0.0 7900.0 3.436011e+09
4 362440.0 2400.0 35100.0 3.373962e+09
# 获取股票 000001.XSHE 在日期 2016-06-30 往前 5 个交易日的融资融券信息
df=get_mtss('000001.XSHE', end_date="2016-06-30", count=5,fields=['date','sec_code','fin_value','fin_buy_value','fin_refund_value','sec_value','sec_sell_value','sec_refund_value','fin_sec_value'])
print(df)
date sec_code fin_value fin_buy_value fin_refund_value \
0 2016-06-24 000001.XSHE 2.855885e+09 71503613.0 53903693.0
1 2016-06-27 000001.XSHE 2.869486e+09 47309234.0 33707430.0
2 2016-06-28 000001.XSHE 2.889199e+09 55438177.0 35725201.0
3 2016-06-29 000001.XSHE 2.897613e+09 72215294.0 63801533.0
4 2016-06-30 000001.XSHE 2.859810e+09 41895702.0 79699182.0
sec_value sec_sell_value sec_refund_value fin_sec_value
0 2210681.0 14100.0 1666940.0 2.874830e+09
1 3846536.0 1660755.0 24900.0 2.902605e+09
2 3920836.0 91700.0 17400.0 2.923036e+09
3 4024356.0 161500.0 57980.0 2.932585e+09
4 3921356.0 45700.0 148700.0 2.893925e+09
获取多只股票的
# 获取平安银行、万科A、中信海直股票的融资融券信息
df=get_mtss(['000001.XSHE','000002.XSHE','000099.XSHE'],'2015-03-25','2016-01-25',fields=['date','sec_code','fin_value','fin_buy_value','fin_refund_value','sec_value','sec_sell_value','sec_refund_value','fin_sec_value'])
print(df[:5])
date sec_code fin_value fin_buy_value fin_refund_value \
0 2015-03-25 000001.XSHE 5.147989e+09 443602813.0 401129440.0
1 2015-03-26 000001.XSHE 5.112350e+09 414025447.0 449664794.0
2 2015-03-27 000001.XSHE 5.136957e+09 290626262.0 266019436.0
3 2015-03-30 000001.XSHE 5.204888e+09 760545895.0 692614645.0
4 2015-03-31 000001.XSHE 5.057292e+09 637117836.0 784714127.0
sec_value sec_sell_value sec_refund_value fin_sec_value
0 1401703.0 4212074.0 4466123.0 5.168889e+09
1 1915450.0 8223542.0 7709795.0 5.141292e+09
2 1510960.0 7542256.0 7946746.0 5.159742e+09
3 1496603.0 11072162.0 11086519.0 5.228325e+09
4 1556264.0 7769048.0 7709387.0 5.081803e+09
get_margincash_stocks(date)
参数 date:默认为None,不指定时返回上交所、深交所最近一次披露的的可融资标的列表的list。
返回结果 返回指定日期上交所、深交所披露的的可融资标的列表的list。
示例
# 获取融资标的列表,并赋值给 margincash_stocks
margincash_stocks = get_margincash_stocks(date='2018-07-02')
margincash_stocks[:3]
>>>['000001.XSHE', '000002.XSHE', '000006.XSHE']
# 判断平安银行是否在可融资列表
'000001.XSHE' in get_margincash_stocks(date='2018-07-02')
>>> True
get_marginsec_stocks(date)
参数 date:默认为None,不指定时返回上交所、深交所最近一次披露的的可融券标的列表的list。
返回结果 返回指定日期上交所、深交所披露的的可融券标的列表的list。
示例
# 获取融券标的列表,并赋值给 marginsec_stocks
marginsec_stocks= get_marginsec_stocks(date='2018-07-05')
print(marginsec_stocks[:5])
['000001.XSHE', '000002.XSHE', '000006.XSHE', '000009.XSHE', '000012.XSHE']
# 判断平安银行是否在可融券列表
'000001.XSHE' in get_marginsec_stocks(date='2018-07-05')
>>> True
from jqdatasdk import *
finance.run_query(query(finance.STK_MT_TOTAL).filter(finance.STK_MT_TOTAL.date=='2019-05-23').limit(n))
描述:记录上海交易所和深圳交易所的融资融券汇总数据
参数:
字段设计
| 名称 | 类型 | 描述 |
| date | date | 交易日期 |
| exchange_code | varchar(12) | 交易市场。例如,XSHG-上海证券交易所;XSHE-深圳证券交易所。 对应DataAPI.SysCodeGet.codeTypeID=10002。 |
| fin_value | decimal(20,2) | 融资余额(元) |
| fin_buy_value | decimal(20,2) | 融资买入额(元) |
| sec_volume | int | 融券余量(股) |
| sec_value | decimal(20,2) | 融券余量金额(元) |
| sec_sell_volume | int | 融券卖出量(股) |
| fin_sec_value | decimal(20,2) | 融资融券余额(元) |
返回结果:
注意:
示例:
#查询2019-05-23的融资融券汇总数据。
df=finance.run_query(query(finance.STK_MT_TOTAL).filter(finance.STK_MT_TOTAL.date=='2019-05-23'))
print(df)
id date exchange_code fin_value fin_buy_value sec_volume \
0 4445 2019-05-23 XSHE 3.601290e+11 1.460400e+10 136000000
1 4446 2019-05-23 XSHG 5.605276e+11 1.906461e+10 930593681
sec_value sec_sell_volume fin_sec_value
0 1.465000e+09 26000000 3.615940e+11
1 6.018287e+09 144633497 5.665458e+11
更新时间:2005至今,交易日8:00更新
get_index_stocks(index_symbol, date=None)
获取一个指数给定日期在平台可交易的成分股列表,请点击指数列表查看指数信息
参数
返回 返回股票代码的list
示例
# 获取所有沪深300的股票
stocks = get_index_stocks('000300.XSHG')
print(stocks[:5])
# 输出
['000001.XSHE', '000002.XSHE', '000063.XSHE', '000066.XSHE', '000069.XSHE']
get_index_weights(index_id, date=None)
获取指数成份股给定日期的权重数据,每月的月底或者月初更新一次,请点击指数列表查看指数信息
参数
返回
示例
#获取2018年5月9日这天的上证指数的成份股权重
df = get_index_weights(index_id="000001.XSHG", date="2018-05-09")
print(df)
#输出
code display_name date weight
603648.XSHG 畅联股份 2018-05-09 0.023
603139.XSHG 康惠制药 2018-05-09 0.007
603138.XSHG 海量数据 2018-05-09 0.015
603136.XSHG 天目湖 2018-05-09 0.009
603131.XSHG 上海沪工 2018-05-09 0.011
... ... ...
603005.XSHG 晶方科技 2018-05-09 0.023
603007.XSHG 花王股份 2018-05-09 0.013
603006.XSHG 联明股份 2018-05-09 0.008
603009.XSHG 北特科技 2018-05-09 0.014
603008.XSHG 喜临门 2018-05-09 0.022
from jqdatasdk import *
get_money_flow(security_list, start_date=None, end_date=None, fields=None, count=None)
获取一只或者多只股票在一个时间段内的资金流向数据
参数
| 字段名 | 含义 | 备注 |
|---|---|---|
| date | 日期 | |
| sec_code | 股票代码 | |
| change_pct | 涨跌幅(%) | |
| net_amount_main | 主力净额(万) | 主力净额 = 超大单净额 + 大单净额 |
| net_pct_main | 主力净占比(%) | 主力净占比 = 主力净额 / 成交额 |
| net_amount_xl | 超大单净额(万) | 超大单:大于等于50万股或者100万元的成交单 |
| net_pct_xl | 超大单净占比(%) | 超大单净占比 = 超大单净额 / 成交额 |
| net_amount_l | 大单净额(万) | 大单:大于等于10万股或者20万元且小于50万股或者100万元的成交单 |
| net_pct_l | 大单净占比(%) | 大单净占比 = 大单净额 / 成交额 |
| net_amount_m | 中单净额(万) | 中单:大于等于2万股或者4万元且小于10万股或者20万元的成交单 |
| net_pct_m | 中单净占比(%) | 中单净占比 = 中单净额 / 成交额 |
| net_amount_s | 小单净额(万) | 小单:小于2万股或者4万元的成交单 |
| net_pct_s | 小单净占比(%) | 小单净占比 = 小单净额 / 成交额 |
返回
返回一个 [pandas.DataFrame] 对象,默认的列索引为取得的全部字段. 如果给定了 fields 参数, 则列索引与给定的 fields 对应.
示例
代码示例
获取一支股票
# 获取一只股票在一个时间段内的资金流量数据
df=get_money_flow(['000001.XSHE'], '2010-01-01', '2010-01-30', ['date','sec_code','change_pct','net_amount_main','net_pct_main','net_amount_xl','net_pct_xl','net_amount_l','net_pct_l','net_amount_m','net_pct_m','net_amount_s','net_pct_s'])
print(df[:4])
date sec_code change_pct net_amount_main net_pct_main \
0 2010-01-04 000001.XSHE -2.71 -5106.20 -8.8
1 2010-01-05 000001.XSHE -1.73 -14486.95 -11.2
2 2010-01-06 000001.XSHE -1.72 -14450.14 -15.3
3 2010-01-07 000001.XSHE -1.09 -11419.16 -14.2
net_amount_xl net_pct_xl net_amount_l net_pct_l net_amount_m \
0 -1682.72 -2.9 -3423.47 -5.9 1450.62
1 -21213.02 -16.4 6726.08 5.2 6726.09
2 -13883.47 -14.7 -566.68 -0.6 4722.27
3 -9087.08 -11.3 -2332.08 -2.9 3297.08
net_pct_m net_amount_s net_pct_s
0 2.5 3655.57 6.3
1 5.2 7760.86 6.0
2 5.0 9727.87 10.3
3 4.1 8122.08 10.1
获取多支股票
# 获取多只股票在一个时间段内的资金流向数据
df=get_money_flow(['000001.XSHE', '000040.XSHE', '000099.XSHE'], '2010-01-01', '2010-01-30', ['date','sec_code','change_pct','net_amount_main','net_pct_main','net_amount_xl','net_pct_xl','net_amount_l','net_pct_l','net_amount_m','net_pct_m','net_amount_s','net_pct_s'])
print(df[:4])
date sec_code change_pct net_amount_main net_pct_main \
0 2010-01-04 000099.XSHE 0.77 576.20 13.7
1 2010-01-04 000040.XSHE -1.95 -667.22 -29.1
2 2010-01-04 000001.XSHE -2.71 -5106.20 -8.8
3 2010-01-05 000040.XSHE -2.27 -473.25 -13.3
net_amount_xl net_pct_xl net_amount_l net_pct_l net_amount_m \
0 121.97 2.9 454.23 10.8 -46.26
1 0.00 0.0 -667.22 -29.1 75.66
2 -1682.72 -2.9 -3423.47 -5.9 1450.62
3 0.00 0.0 -473.25 -13.3 -206.38
net_pct_m net_amount_s net_pct_s
0 -1.1 -529.93 -12.6
1 3.3 591.56 25.8
2 2.5 3655.57 6.3
3 -5.8 679.62 19.1
# 获取多只股票在某一天的资金流向数据
df=get_money_flow(['000001.XSHE', '000040.XSHE', '000099.XSHE'], '2016-04-01', '2016-04-01',['date','sec_code','change_pct','net_amount_main','net_pct_main','net_amount_xl','net_pct_xl','net_amount_l','net_pct_l','net_amount_m','net_pct_m','net_amount_s','net_pct_s'])
print(df[:4])
date sec_code change_pct net_amount_main net_pct_main \
0 2016-04-01 000001.XSHE 0.19 -580.30 -1.48
1 2016-04-01 000040.XSHE -0.69 -293.20 -3.40
2 2016-04-01 000099.XSHE -3.61 -8913.61 -23.39
net_amount_xl net_pct_xl net_amount_l net_pct_l net_amount_m \
0 684.81 1.75 -1265.11 -3.23 -527.74
1 -244.34 -2.83 -48.86 -0.57 -371.15
2 -5711.44 -14.99 -3202.18 -8.40 2013.41
net_pct_m net_amount_s net_pct_s
0 -1.35 1108.05 2.83
1 -4.30 664.35 7.70
2 5.28 6900.20 18.10
get_billboard_list(stock_list, start_date, end_date, count)
获取指定日期区间内的龙虎榜数据
参数
返回值
异常波动类型
| 参数编码 | 参数名称 |
|---|---|
| 106001 | 涨幅偏离值达7%的证券 |
| 106002 | 跌幅偏离值达7%的证券 |
| 106003 | 日价格振幅达到15%的证券 |
| 106004 | 换手率达20%的证券 |
| 106005 | 无价格涨跌幅限制的证券 |
| 106006 | 连续三个交易日内收盘价格涨幅偏离值累计达到20%的证券 |
| 106007 | 连续三个交易日内收盘价格跌幅偏离值累计达到20%的证券 |
| 106008 | 连续三个交易日内收盘价格涨幅偏离值累计达到15%的证券 |
| 106009 | 连续三个交易日内收盘价格跌幅偏离值累计达到15%的证券 |
| 106010 | 连续三个交易日内涨幅偏离值累计达到12%的ST证券、*ST证券和未完成股改证券 |
| 106011 | 连续三个交易日内跌幅偏离值累计达到12%的ST证券、*ST证券和未完成股改证券 |
| 106012 | 连续三个交易日的日均换手率与前五个交易日日均换手率的比值到达30倍 |
| 106013 | 单只标的证券的当日融资买入数量达到当日该证券总交易量的50%以上的证券 |
| 106014 | 单只标的证券的当日融券卖出数量达到当日该证券总交易量的50%以上的证券 |
| 106099 | 其它异常波动的证券 |
示例
# 获取2018-08-01的龙虎榜数据,count表示交易日数量
df=get_billboard_list(stock_list=None, end_date = '2018-08-01', count =1)
print(df[:3])
code day direction rank abnormal_code abnormal_name \
0 603803.XSHG 2018-08-01 SELL 2 106002 跌幅偏离值达7%的证券
1 603803.XSHG 2018-08-01 BUY 5 106002 跌幅偏离值达7%的证券
2 603803.XSHG 2018-08-01 BUY 4 106002 跌幅偏离值达7%的证券
sales_depart_name buy_value buy_rate sell_value sell_rate \
0 西部证券股份有限公司丹阳丹凤北路证券营业部 NaN NaN 2466090.0 2.0684
1 中泰证券股份有限公司烟台长江路证券营业部 1781600.0 1.4943 NaN NaN
2 中航证券有限公司景德镇珠山东路证券营业部 1842434.0 1.5453 NaN NaN
total_value net_value amount
0 2466090.0 -2466090.0 119226855.0
1 1781600.0 1781600.0 119226855.0
2 1842434.0 1842434.0 119226855.0
get_locked_shares(stock_list, start_date, end_date, forward_count)
获取指定日期区间内的限售解禁数据
参数
返回值
pandas.DataFrame, 各 column 的含义如下:
示例
# 在策略中获取个股未来500天的解禁情况
df=get_locked_shares(stock_list=['002345.XSHE', '603025.XSHG'], start_date='2020-07-20', forward_count=500)
print(df)
day code num rate1 rate2
0 2020-07-20 002345.XSHE 12060300.0 0.0083 0.0086
1 2020-12-28 603025.XSHG 3561107.0 0.0038 0.0039
2 2021-11-04 603025.XSHG 1263300.0 0.0014 0.0014
from jqdatasdk import finance
finance.run_query(query(finance.STK_EXCHANGE_TRADE_INFO).filter(finance.STK_EXCHANGE_TRADE_INFO.exchange_code==exchange_code).limit(n)
记录沪深两市股票交易的成交情况,包括市值、成交量,市盈率等情况。
参数:
| 字段名称 | 中文名称 | 字段类型 | 能否为空 | 含义 |
| exchange_code | 市场编码 | varchar(12) | N | 编码规则见下表 |
| exchange_name | 市场名称 | varchar(100) | 上海市场,上海A股,上海B股 深圳市场,深市主板 中小企业板,创业板 |
|
| date | 交易日期 | date | N | |
| total_market_cap | 市价总值 | decimal(20,8) | 单位:亿 | |
| circulating_market_cap | 流通市值 | decimal(20,8) | 单位:亿 | |
| volume | 成交量 | decimal(20,4) | 单位:万 | |
| money | 成交金额 | decimal(20,8) | 单位:亿 | |
| deal_number | 成交笔数 | decimal(20,4) | 单位:万笔 | |
| pe_average | 平均市盈率 | decimal(20,4) | 上海市场市盈率计算方法: 市盈率=∑(收盘价×发行数量)/∑(每股收益×发行数量),统计时剔除亏损及暂停上市的上市公司。 深圳市场市盈率计算方法: 市盈率=∑市价总值/∑(总股本×上年每股利润),剔除上年利润为负的公司。 |
|
| turnover_ratio | 换手率 | decimal(10,4) | 单位:% |
市场编码名称对照表
| 市场编码 | 交易市场名称 | 备注 |
|---|---|---|
| 322001 | 上海市场 | |
| 322002 | 上海A股 | |
| 322003 | 上海B股 | |
| 322004 | 深圳市场 | 该市场交易所未公布成交量和成交笔数 |
| 322005 | 深市主板 | |
| 322006 | 中小企业板 | |
| 322007 | 创业板 |
filter(finance.STK_EXCHANGE_TRADE_INFO.date==date):指定筛选条件,通过finance.STK_EXCHANGE_TRADE_INFO.date==date可以指定你想要查询的交易日期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EXCHANGE_TRADE_INFO.exchange_code==322001,表示筛选市场编码为322001(上海市场)的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_EXCHANGE_TRADE_INFO).filter(finance.STK_EXCHANGE_TRADE_INFO.date>='2015-01-01').limit(4)
df=finance.run_query(q)
print(df)
id exchange_code exchange_name date total_market_cap \
0 14847 322002 上海A股 2015-01-05 252101.167063
1 14848 322003 上海B股 2015-01-05 883.102583
2 14849 322001 上海市场 2015-01-05 252984.269645
3 14850 322006 中小企业板 2015-01-05 51786.890000
circulating_market_cap volume money deal_number pe_average \
0 228118.117416 5.321700e+06 5504.189763 1800.6098 16.576
1 883.102583 7.334709e+03 4.510566 3.7579 15.987
2 229001.219999 5.335211e+06 5511.112029 1804.4529 16.574
3 36548.430000 5.987000e+05 845.890000 381.6300 41.660
turnover_ratio
0 2.1486
1 0.4856
2 2.1385
3 NaN
from jqdatasdk import finance
finance.run_query(query(finance.STK_AH_PRICE_COMP).filter(finance.STK_AH_PRICE_COMP.a_code==a_code).order_by(finance.STK_AH_PRICE_COMP.day).limit(n)
记录同时在A股和H股上市的股票的价格比对。
参数:
| 字段 | 名称 | 类型 | 非空 | 备注/示例 |
|---|---|---|---|---|
| day | 日期 | date | Y | |
| name | 股票简称 | varchar(32) | Y | |
| a_code | a股代码 | varchar(12) | Y | '000002.XSHE' |
| h_code | h股代码 | varchar(12) | Y | |
| a_price | a股收盘价 | decimal(10,4) | 人民币 | |
| h_price | h股收盘价 | decimal(10,4) | 港币 | |
| a_quote_change | a股涨跌幅 | decimal(10,4) | % | |
| h_quote_change | h股涨跌幅 | decimal(10,4) | % | |
| h_a_comp | 比价(H/A) | decimal(10,4) | A股人民币价格/(H股港币价格*港币兑人民币的汇率) |
返回结果:
注意:
示例:
q=query(finance.STK_AH_PRICE_COMP).filter(finance.STK_AH_PRICE_COMP.a_code=='000002.XSHE').order_by(finance.STK_AH_PRICE_COMP.day).limit(4)
df=finance.run_query(q)
print(df)
id day name a_code h_code a_price h_price \
0 584546 2014-06-25 万科A 000002.XSHE 02202 8.13 13.28
1 584547 2014-06-26 万科A 000002.XSHE 02202 8.26 14.18
2 584548 2014-06-27 万科A 000002.XSHE 02202 8.32 13.92
3 584549 2014-06-30 万科A 000002.XSHE 02202 8.27 13.76
a_quote_change h_quote_change h_a_comp
0 0.4944 0.00 0.7624
1 1.5990 6.78 0.7251
2 0.7264 -1.83 0.7453
3 -0.6010 -1.15 0.7498
from jqdatasdk import finance
finance.run_query(query(finance.STK_EL_CONST_CHANGE).filter(finance.STK_EL_CONST_CHANGE.code==code).limit(n))
记录沪港通、深港通和港股通的成分股的变动情况。
参数:
query(finance.STK_EL_CONST_CHANGE):表示从finance.STK_EL_CONST_CHANGE这张表中查询沪港通、深港通和港股通成分股的变动记录,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_EL_CONST_CHANGE:代表合资格证券变动表,记录沪港通、深港通和港股通成分股的变动情况,包括交易类型,变更日期,变更方向等,表结构和字段信息如下:
| 字段 | 名称 | 类型 | 非空 | 备注/示例 |
|---|---|---|---|---|
| link_id | 交易类型编码 | int | Y | 同市场通编码 |
| link_name | 交易类型名称 | varchar(12) | Y | |
| code | 证券代码 | varchar(12) | Y | |
| name_ch | 中文简称 | varchar(30) | ||
| name_en | 英文简称 | varchar(120) | ||
| exchange | 该股票所在的交易所 | varchar(12) | Y | 上海市场:XSHG/深圳市场:XSHE/香港市场:XHKG |
| change_date | 变更日期 | date | Y | |
| direction | 变更方向 | varchar(6) | Y | IN/OUT(分别为纳入和剔除) |
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_EL_CONST_CHANGE).filter(finance.STK_EL_CONST_CHANGE.link_id==310001).order_by(finance.STK_EL_CONST_CHANGE.change_date).limit(4)
df=finance.run_query(q)
print(df)
id link_id link_name code name_ch name_en exchange change_date \
0 536 310001 沪股通 600000.XSHG 浦发银行 None XSHG 2014-11-17
1 537 310001 沪股通 600004.XSHG 白云机场 None XSHG 2014-11-17
2 539 310001 沪股通 600007.XSHG 中国国贸 None XSHG 2014-11-17
3 540 310001 沪股通 600008.XSHG 首创股份 None XSHG 2014-11-17
direction
0 IN
1 IN
2 IN
3 IN
from jqdatasdk import finance finance.run_query(query(finance.STK_EXCHANGE_LINK_CALENDAR).filter(finance.STK_EXCHANGE_LINK_CALENDAR.day==day).limit(n))
记录沪港通、深港通和港股通每天是否开市。
参数:
| 字段 | 名称 | 类型 | 非空 | 备注/示例 |
| day | 交易日期 | date | Y | |
| link_id | 市场通编码 | int | Y | |
| link_name | 市场通名称 | varchar(32) | Y | 包括以下四个名称: 沪股通, 深股通, 港股通(沪), 港股通(深) |
| type_id | 交易日类型编码 | int | Y | 如下 交易日类型编码 |
| type | 交易日类型 | varchar(32) | Y |
附注
港股通(沪)和港股通(深)的交易日在深港通开展后是一致的。
交易日类型编码
| 交易日类型编码 | 交易日类型 |
|---|---|
| 312001 | 正常交易日 |
| 312002 | 周末 |
| 312003 | 全天休市 |
| 312004 | 上午休市 |
| 312005 | 下午休市 |
市场通编码
| 市场通编码 | 市场通名称 |
|---|---|
| 310001 | 沪股通 |
| 310002 | 深股通 |
| 310003 | 港股通(沪) |
| 310004 | 港股通(深) |
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_EXCHANGE_LINK_CALENDAR).filter(finance.STK_EXCHANGE_LINK_CALENDAR.day>='2015-01-04').limit(4)
df=finance.run_query(q)
print(df)
id day link_id link_name type_id type
0 1244833 2015-01-04 310001 沪股通 312003 休市
1 148 2015-01-04 310003 港股通(沪) 312003 休市
2 1244834 2015-01-05 310001 沪股通 312001 正常交易日
3 149 2015-01-05 310003 港股通(沪) 312001 正常交易日
from jqdatasdk import finance finance.run_query(query(finance.STK_EL_TOP_ACTIVATE).filter(finance.STK_EL_TOP_ACTIVATE.code==code).limit(n))
统计沪港通、深港通和港股通前十大交易活跃股的交易状况。
参数:
query(finance.STK_EL_TOP_ACTIVATE):表示从finance.STK_EL_TOP_ACTIVATE这张表中查询沪港通、深港通和港股通前十大交易活跃股的交易状况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_EL_TOP_ACTIVATE:代表市场通十大成交活跃股数据表,统计沪港通、深港通和港股通前十大交易活跃股的交易状况,包括买入金额,卖出金额等,表结构和字段信息如下:
| 字段 | 名称 | 类型 | 非空 | 交易所 | 备注/示例 |
| day | 日期 | date | Y | ||
| link_id | 市场通编码 | int | Y | ||
| link_name | 市场通名称 | varchar(32) | Y | 包括以下四个名称: 沪股通, 深股通, 港股通(沪),港股通(深) |
|
| rank | 排名 | int | Y | ||
| code | 股票代码 | varchar(12) | Y | ||
| name | 股票名称 | varchar(100) | Y | ||
| exchange | 交易所名称 | varchar(12) | Y | ||
| buy | 买入金额(元) | decimal(20, 4) | Y | ||
| sell | 卖出金额(元) | decimal(20, 4) | Y | ||
| total | 买入及卖出金额(元) | decimal(20, 4) | Y |
市场通编码
| 市场通编码 | 市场通名称 |
|---|---|
| 310001 | 沪股通 |
| 310002 | 深股通 |
| 310003 | 港股通(沪) |
| 310004 | 港股通(深) |
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_EL_TOP_ACTIVATE).filter(finance.STK_EL_TOP_ACTIVATE.code=='000002.XSHE').limit(10)
df=finance.run_query(q)
print(df)
id day link_id link_name rank code name exchange \
0 323010 2018-01-15 310002 深股通 2 000002.XSHE 万科A 深交所
1 323050 2018-01-16 310002 深股通 2 000002.XSHE 万科A 深交所
2 323089 2018-01-17 310002 深股通 1 000002.XSHE 万科A 深交所
3 323132 2018-01-18 310002 深股通 4 000002.XSHE 万科A 深交所
4 323213 2018-01-23 310002 深股通 6 000002.XSHE 万科A 深交所
5 323254 2018-01-24 310002 深股通 7 000002.XSHE 万科A 深交所
6 341170 2018-01-25 310002 深股通 7 000002.XSHE 万科A 深交所
7 341209 2018-01-26 310002 深股通 6 000002.XSHE 万科A 深交所
8 341248 2018-01-29 310002 深股通 5 000002.XSHE 万科A 深交所
9 341444 2018-01-30 310002 深股通 5 000002.XSHE 万科A 深交所
buy sell total
0 124497968.0 326656496.0 451154464.0
1 127460061.0 465933921.0 593393982.0
2 157676630.0 542617116.0 700293746.0
3 203996076.0 105819761.0 309815837.0
4 141515523.0 190282952.0 331798475.0
5 110052973.0 163321615.0 273374588.0
6 179785644.0 120157651.0 299943295.0
7 166750550.0 78471253.0 245221803.0
8 157899558.0 170790111.0 328689669.0
9 201547219.0 165714289.0 367261508.0
from jqdatasdk import finance
finance.run_query(query(finance.STK_ML_QUOTA).filter(finance.STK_ML_QUOTA.day==day).limit(n))
记录沪股通、深股通和港股通每个交易日的成交与额度的控制情况。
参数:
| 字段 | 名称 | 类型 | 备注/示例 |
| day | 交易日期 | date | |
| link_id | 市场通编码 | int | |
| link_name | 市场通名称 | varchar(32) | 包括以下四个名称: 沪股通,深股通,港股通(沪),港股通(深); 其中沪股通和深股通属于北向资金, 港股通(沪)和港股通(深)属于南向资金。 |
| currency_id | 货币编码 | int | |
| currency | 货币名称 | varchar(16) | |
| buy_amount | 买入成交额 | decimal(20,4) | 亿 |
| buy_volume | 买入成交数 | decimal(20,4) | 笔 |
| sell_amount | 卖出成交额 | decimal(20,4) | 亿 |
| sell_volume | 卖出成交数 | decimal(20,4) | 笔 |
| sum_amount | 累计成交额 | decimal(20,4) | 买入成交额+卖出成交额 |
| sum_volume | 累计成交数目 | decimal(20,4) | 买入成交量+卖出成交量 |
| quota | 总额度 | decimal(20, 4) | 亿(2016-08-16号起,沪港通和深港通不再设总额度限制) |
| quota_balance | 总额度余额 | decimal(20, 4) | 亿 |
| quota_daily | 每日额度 | decimal(20, 4) | 亿 |
| quota_daily_balance | 每日额度余额 | decimal(20, 4) | 亿 |
货币编码
| 货币编码 | 货币名称 |
|---|---|
| 110001 | 人民币 |
| 110003 | 港元 |
市场通编码
| 市场通编码 | 市场通名称 |
|---|---|
| 310001 | 沪股通 |
| 310002 | 深股通 |
| 310003 | 港股通(沪) |
| 310004 | 港股通(深) |
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_ML_QUOTA).filter(finance.STK_ML_QUOTA.day>='2015-01-01').limit(4)
df=finance.run_query(q)
print(df)
id day link_id link_name currency_id currency_name buy_amount \
0 1 2015-04-17 310003 港股通(沪) 110003 港元 81.2880
1 2 2015-04-17 310001 沪股通 110001 人民币 58.9429
2 3 2015-04-16 310003 港股通(沪) 110003 港元 56.1928
3 4 2015-04-16 310001 沪股通 110001 人民币 45.3180
buy_volume sell_amount sell_volume sum_amount sum_volume quota \
0 92742.0 62.8078 66353.0 144.0958 159095.0 None
1 119118.0 42.9775 81620.0 101.9204 200738.0 None
2 64867.0 53.9511 52591.0 110.1439 117458.0 None
3 98189.0 29.5743 86428.0 74.8923 184617.0 None
quota_balance quota_daily quota_daily_balance
0 None 105.0 83.7100
1 None 130.0 111.9694
2 None 105.0 97.9000
3 None 130.0 110.5500
from jqdatasdk import finance finance.run_query(query(finance.STK_EXCHANGE_LINK_RATE).filter(finance.STK_EXCHANGE_LINK_RATE.day==day).limit(n))
包含2014年11月起人民币和港币之间的参考汇率/结算汇兑比率信息。
参数:
query(finance.STK_EXCHANGE_LINK_RATE):表示从finance.STK_EXCHANGE_LINK_RATE这张表中查询汇率信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_EXCHANGE_LINK_RATE:代表市场通汇率表,记录参考汇率/结算汇兑比率信息,包括买入参考/结算汇率、卖出参考/结算汇率等,表结构和字段信息如下:
| 字段 | 名称 | 类型 | 非空 | 交易所 | 备注/示例 |
|---|---|---|---|---|---|
| day | 日期 | Date | Y | Y | |
| link_id | 市场通编码 | int | Y | ||
| link_name | 市场通名称 | varchar(32) | Y | 以“港股通(沪)”为代表 | |
| domestic_currency | 本币 | varchar(12) | Y | RMB | |
| foreign_currency | 外币 | varchar(12) | Y | HKD | |
| refer_bid_rate | 买入参考汇率 | decimal(10, 5) | Y | Y | |
| refer_ask_rate | 卖出参考汇率 | decimal(10, 5) | Y | Y | |
| settle_bid_rate | 买入结算汇率 | decimal(10, 5) | Y | Y | |
| settle_ask_rate | 卖出结算汇率 | decimal(10, 5) | Y | Y |
市场通编码
| 市场通编码 | 市场通名称 |
|---|---|
| 310001 | 沪股通 |
| 310002 | 深股通 |
| 310003 | 港股通(沪) |
| 310004 | 港股通(深) |
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_EXCHANGE_LINK_RATE).filter(finance.STK_EXCHANGE_LINK_RATE.day>='2015-01-01').limit(4)
df=finance.run_query(q)
print(df)
id day link_id link_name domestic_currency foreign_currency \
0 31 2015-01-05 310003 港股通(沪) RMB HKD
1 32 2015-01-06 310003 港股通(沪) RMB HKD
2 33 2015-01-07 310003 港股通(沪) RMB HKD
3 34 2015-01-08 310003 港股通(沪) RMB HKD
refer_bid_rate refer_ask_rate settle_bid_rate settle_ask_rate
0 0.7774 0.8254 0.80317 0.80283
1 0.7785 0.8267 0.80307 0.80213
2 0.7777 0.8259 0.80197 0.80163
3 0.7773 0.8253 0.80116 0.80144
from jqdatasdk import finance
df=finance.run_query(query(finance.STK_HK_HOLD_INFO).filter(finance.STK_HK_HOLD_INFO.link_id==310001))
print(df)
记录了北向资金(沪股通、深股通)和南向资金港股通的持股数量和持股比例
参数:
| 字段名称 | 中文名称 | 字段类型 | 能否为空 | 注释 |
| day | 日期 | date | N | |
| link_id | 市场通编码 | int | N | 三种类型:310001-沪股通,310002-深股通,310005-港股通 |
| link_name | 市场通名称 | varchar(32) | N | 三种类型:沪股通,深股通,港股通 |
| code | 股票代码 | varchar(12) | N | |
| name | 股票名称 | varchar(100) | N | |
| share_number | 持股数量 | int | 单位:股,于中央结算系统的持股量 | |
| share_ratio | 持股比例 | decimal(10,4) | 单位:%,沪股通:占于上交所上市及交易的A股总数的百分比; 深股通:占于深交所上市及交易的A股总数的百分比; 港股通:占已发行股份百分比 |
市场通编码
| 市场通编码 | 市场通名称 |
|---|---|
| 310001 | 沪股通 |
| 310002 | 深股通 |
| 310005 | 港股通 |
返回结果:
注意:
示例:
#获取北向资金沪股通的持股数据
df=finance.run_query(query(finance.STK_HK_HOLD_INFO).filter(finance.STK_HK_HOLD_INFO.link_id==310001).order_by(finance.STK_HK_HOLD_INFO.day.desc()))
print(df[:4])
id day link_id link_name code name share_number \
0 3070982 2021-03-20 310001 沪股通 605222.XSHG 起帆电缆 161022
1 3070981 2021-03-20 310001 沪股通 605199.XSHG 葫芦娃 66103
2 3070980 2021-03-20 310001 沪股通 605198.XSHG 德利股份 90174
3 3070979 2021-03-20 310001 沪股通 605168.XSHG 三人行 269393
share_ratio
0 0.32
1 0.16
2 0.45
3 1.56
get_industries(name='zjw', date=None)
按照行业分类获取行业列表。
参数
name: 行业代码,默认值为'zjw',其他行业取值如下:
date: 获取数据的日期,默认为None,返回历史上所有行业;传入date,返回date当天存在的行业
返回值
# 获取2020-05-07当天证监会行业行业列表
get_industries(name='zjw', date="2020-05-07")[:5]
name start_date
L72 商务服务业 1996-08-29
L71 租赁业 1997-01-30
G53 铁路运输业 1998-05-11
G57 管道运输业 1996-11-04
G56 航空运输业 1997-11-05
get_industry_stocks(industry_code, date=None)
获取在给定日期一个行业的所有股票,行业分类列表见数据页面-行业概念数据。
参数
返回 返回股票代码的list
示例
# 获取计算机/互联网行业的成分股
stocks = get_industry_stocks('I64')
print(stocks[:5])
# 输出
['000503.XSHE', '000606.XSHE', '000676.XSHE', '000835.XSHE', '002072.XSHE']
get_concepts()
获取概念板块列表
返回值
pandas.DataFrame, 各 column 的含义如下:
df=get_concepts()[:5]
print(df)
name start_date
SC0001 石墨烯 2016-07-31
SC0002 阿里 2016-07-31
SC0003 腾讯 2017-12-26
SC0004 百度 2018-06-11
SC0005 华为 2018-12-24
get_concept_stocks(concept_code, date=None)
获取在给定日期一个概念板块的所有股票,概念板块分类列表见数据页面-行业概念数据。
参数
返回 返回股票代码的list
示例
# 获取风力发电概念板块的成分股
stocks = get_concept_stocks('SC0084')
print(stocks[:5])
#输出
['000027.XSHE', '000039.XSHE', '000065.XSHE', '000099.XSHE', '000155.XSHE']
get_industry(security, date=None)
参数
返回
返回结果是一个dict,key是传入的股票代码
示例
获取一只股票所属行业
#获取贵州茅台("600519.XSHG")的所属行业数据
d = get_industry("600519.XSHG",date="2018-06-01")
print(d)
# 输出
{'600519.XSHG': {'sw_l1': {'industry_code': '801120', 'industry_name': '食品饮料I'}, 'sw_l2': {'industry_code': '801123', 'industry_name': '饮料制造II'}, 'sw_l3': {'industry_code': '851231', 'industry_name': '白酒III'}, 'zjw': {'industry_code': 'C15', 'industry_name': '酒、饮料和精制茶制造业'}, 'jq_l2': {'industry_code': 'HY478', 'industry_name': '白酒与葡萄酒指数'}, 'jq_l1': {'industry_code': 'HY005', 'industry_name': '日常消费指数'}}}
同时获取多只股票的所属行业信息
获取平安银行和万科企业所属行业
stock_list = ['000001.XSHE','000002.XSHE']
d = get_industry(security=stock_list, date="2018-06-01")
print(d)
# 输出
{'000001.XSHE': {'jq_l1': {'industry_code': 'HY007', 'industry_name': '金融地产'}, 'sw_l1': {'industry_code': '801780', 'industry_name': '银行I'}, 'sw_l3': {'industry_code': '851911', 'industry_name': '银行III'}, 'jq_l2': {'industry_code': 'HY07001', 'industry_name': '综合性银行'}, 'sw_l2': {'industry_code': '801192', 'industry_name': '银行II'}, 'zjw': {'industry_code': 'J66', 'industry_name': '货币金融服务'}}, '000002.XSHE': {'zjw': {'industry_code': 'K70', 'industry_name': '房地产业'}, 'sw_l1': {'industry_code': '801180', 'industry_name': '房地产I'}, 'sw_l2': {'industry_code': '801181', 'industry_name': '房地产开发II'}, 'sw_l3': {'industry_code': '851811', 'industry_name': '房地产开发III'}, 'jq_l2': {'industry_code': 'HY11001', 'industry_name': '房地产开发'}, 'jq_l1': {'industry_code': 'HY011', 'industry_name': '房地产'}}}
dict转化为dataframeimport pandas as pd
stock_list = ['000001.XSHE','000002.XSHE']
d = get_industry(security=stock_list, date="2018-06-01")
df=pd.concat({k:pd.DataFrame(v) for k ,v in d.items()})
df
# 输出
sw_l1 sw_l2 sw_l3 zjw jq_l2 jq_l1
000001.XSHE industry_code 801780 801192 851911 J66 HY07001 HY007
industry_name 银行I 银行II 银行III 货币金融服务 综合性银行 金融
000002.XSHE industry_code 801180 801181 851811 K70 HY11001 HY011
industry_name 房地产I 房地产开发II 房地产开发III 房地产业 房地产开发 房地产
get_concept(security, date=None)
获取股票所属概念板块。返回一个dict,key为标的代码,value详见示例。
security:标的代码或包含标的代码的列表
query_dt:时刻,datetime或时刻形式的字符串,只传入日期代表日内时间为00:00:00.
security: 标的代码或标的列表
date: 要查询的日期,日期字符串/date对象/datetime对象,注意传入datetime对象时忽略日内时间;默认值为None,研究中默认值为当天,回测中默认值会随着回测日期变化而变化, 等于context.current_dt。
示例:
# code是传入的股票代码;多个code返回嵌套的多个字典;
# ‘jq_concept’代表聚宽概念;
# XX是code所在的概念代码;
# YY是code所在的概念名称;
{code: { 'jq_concept':[
{ 'concept_code': XX1; 'concept_name': YY1 },
{ 'concept_code': XX2; 'concept_name': YY2 },
{ 'concept_code': XX3; 'concept_name': YY3 }]
}
}
示例
dict1 = get_concept('000001.XSHE', date='2019-07-15')
print(dict1)
#输出
{'000001.XSHE': {'jq_concept': [{'concept_name': 'XXXX1', 'concept_code': 'YYYY1'}, {'concept_name': 'XXXX2', 'concept_code': 'YYYY2'}
....
]}}
df=finance.run_query(query(finance.SW1_DAILY_PRICE).filter(finance.SW1_DAILY_PRICE.code=='801010').limit(n))
print(df)
记录了申万一级行业指数的历史日行情数据,每日18:00更新。
参数:
| 字段名称 | 中文名称 | 字段类型 | 能否为空 | 注释 |
|---|---|---|---|---|
| date | 交易日 | date | N | |
| code | 指数编码 | varchar(12) | N | 对应申万一级行业指数编码 |
| name | 指数名称 | varchar(20) | N | |
| open | 开盘指数 | decimal(20,4) | ||
| high | 最高指数 | decimal(20,4) | ||
| low | 最低指数 | decimal(20,4) | ||
| close | 收盘指数 | decimal(20,4) | ||
| volume | 成交量 | decimal(20,4) | 单位:股 | |
| money | 成交额 | decimal(20,4) | 单位:元 | |
| change_pct | 涨跌幅 | decimal(10,4) | 单位:% |
返回结果:
注意:
示例:
# 查询最近5个交易日申万一级行业指数-农林牧渔行业(801010)的日行情数据。
df=finance.run_query(query(finance.SW1_DAILY_PRICE).filter(finance.SW1_DAILY_PRICE.code=='801010').order_by(finance.SW1_DAILY_PRICE.date.desc()).limit(5))
print(df)
id date code name open high low close \
0 1890712 2021-03-19 801010 农林牧渔 3994.62 4010.07 3938.46 3957.44
1 1890684 2021-03-18 801010 农林牧渔 4048.63 4052.32 4003.87 4041.50
2 1890656 2021-03-17 801010 农林牧渔 3981.76 4066.81 3975.37 4053.18
3 1890628 2021-03-16 801010 农林牧渔 3947.34 3964.11 3906.32 3935.19
4 1890572 2021-03-15 801010 农林牧渔 3985.62 3991.58 3899.39 3935.94
volume money change_pct
0 1.309043e+09 1.599323e+10 -2.08
1 1.503715e+09 1.631409e+10 -0.29
2 1.596152e+09 1.984027e+10 3.00
3 9.945891e+08 1.404828e+10 -0.02
4 1.146963e+09 1.720195e+10 -2.35
get_fundamentals(query_object, date=None, statDate=None)
查询财务数据,详细的数据字段描述请点击财务数据文档查看
date和statDate参数只能传入一个:
当 date 和 statDate 都不传入时, 相当于使用 date 参数, date 的默认值下面会描述.
参数
query_object: 一个sqlalchemy.orm.query.Query对象,可以通过全局的 query 函数获取 Query 对象,query简易教程
date: 查询日期, 一个字符串(格式类似'2015-10-15')或者[datetime.date]/[datetime.datetime]对象, 可以是None, 使用默认日期. 如果传入的 date 不是交易日, 则使用这个日期之前的最近的一个交易日
statDate: 财报统计的季度或者年份, 一个字符串, 有两种格式:
返回
返回一个 [pandas.DataFrame], 每一行对应数据库返回的每一行(可能是几个表的联合查询结果的一行), 列索引是你查询的所有字段 注意:
综合案例
获取多只股票在某一天的指标数据
# 获取多只股票在某一日期的市值, 利润
df = get_fundamentals(query(
valuation, income
).filter(
# 这里不能使用 in 操作, 要使用in_()函数
valuation.code.in_(['000001.XSHE', '600000.XSHG'])
), date='2015-10-15')
print(df)
id code pe_ratio turnover_ratio pb_ratio ps_ratio \
0 5024884 000001.XSHE 7.4984 0.4116 1.0593 1.8748
1 5031852 600000.XSHG 6.1440 0.0000 1.1596 2.1996
pcf_ratio capitalization market_cap circulating_cap ... \
0 1.0246 1430867.625 1598.2791 1180405.500 ...
1 8.1501 1865347.125 2965.9021 1865347.125 ...
income_tax_expense net_profit np_parent_company_owners \
0 1.866000e+09 5.956000e+09 5.956000e+09
1 3.915000e+09 1.281700e+10 1.270900e+10
minority_profit basic_eps diluted_eps other_composite_income \
0 0.0 0.430 0.430 2.680000e+08
1 108000000.0 0.681 0.681 1.614000e+09
total_composite_income ci_parent_company_owners ci_minority_owners
0 6.224000e+09 NaN 0.0
1 1.443100e+10 NaN 108000000.0
[2 rows x 56 columns]
根据条件,筛选数据
# 选出所有的总市值大于1000亿元, 市盈率小于10, 基本每股收益大于0.8的股票
df = get_fundamentals(query(
valuation.code, valuation.market_cap, valuation.pe_ratio, income.basic_eps ,income.total_operating_revenue
).filter(
valuation.market_cap > 1000,
valuation.pe_ratio < 10,
income.basic_eps > 0.8
).order_by(
# 按市值降序排列
valuation.market_cap.desc()
))
print(df)
code market_cap pe_ratio basic_eps total_operating_revenue
0 601166.XSHG 4908.9414 7.3679 0.92 5.176600e+10
1 600585.XSHG 2754.5774 7.8412 1.63 4.997668e+10
使用or_函数,筛选数据
# 使用 or_ 函数: 查询总市值大于1000亿元 或者 市盈率小于10的股票 或者 基本每股收益大于0.5
from sqlalchemy.sql.expression import or_
df=get_fundamentals(query(
valuation.code,valuation.pe_ratio,valuation.market_cap,income.basic_eps ,income.total_operating_revenue
).filter(
or_(
valuation.market_cap > 1000,
valuation.pe_ratio < 10,
income.basic_eps > 0.5
)
).order_by(
# 按市值降序排列
valuation.market_cap.desc()))
print(df[:5])
code pe_ratio market_cap basic_eps total_operating_revenue
0 600519.XSHG 56.0766 24998.2109 8.94 2.394051e+10
1 601398.XSHG 6.6798 19317.2188 0.22 2.172370e+11
2 601939.XSHG 7.4127 18325.8047 0.27 1.823260e+11
3 601318.XSHG 10.1966 14591.2891 2.27 3.012450e+11
4 600036.XSHG 13.9336 13563.2334 0.77 6.905200e+10
查询季报, 放到数组中
# 查询平安银行2014年四个季度的季报, 放到数组中
q = query(
income.statDate,
income.code,
income.basic_eps,
balance.cash_equivalents,
cash_flow.goods_sale_and_service_render_cash
).filter(
income.code == '000001.XSHE',
)
rets = [get_fundamentals(q, statDate='2018q'+str(i)) for i in range(1, 5)]
print(rets)
[ statDate code basic_eps cash_equivalents \
0 2018-03-31 000001.XSHE 0.33 2.819490e+11
goods_sale_and_service_render_cash
0 NaN , statDate code basic_eps cash_equivalents \
0 2018-06-30 000001.XSHE 0.4 3.074000e+11
goods_sale_and_service_render_cash
0 NaN , statDate code basic_eps cash_equivalents \
0 2018-09-30 000001.XSHE 0.41 2.876480e+11
goods_sale_and_service_render_cash
0 NaN , statDate code basic_eps cash_equivalents \
0 2018-12-31 000001.XSHE 0.25 2.785280e+11
goods_sale_and_service_render_cash
0 NaN ]
查询年报
# 查询平安银行2018年的年报
q = query(
income.statDate,
income.code,
income.basic_eps,
cash_flow.goods_sale_and_service_render_cash
).filter(
income.code == '000001.XSHE',
)
ret = get_fundamentals(q, statDate='2018')
print(ret)
statDate code basic_eps goods_sale_and_service_render_cash
0 2018-12-31 000001.XSHE 1.39 NaN
get_fundamentals_continuously(query_object, end_date=None,count=1,panel=True)
查询财务数据,详细的数据字段描述请点击财务数据文档查看
参数
返回 返回一个 [pandas.Panel],如果您的环境pandas大于0.25 ,将强制返回dataframe。
出于性能方面考虑,我们做出了返回总条数不超过5000条的限制。 也就是说:查询的股票数量*count 要小于5000。 否则,返回的数据会不完整。
示例
q = query(valuation.turnover_ratio,
valuation.market_cap,
indicator.eps
).filter(valuation.code.in_(['000001.XSHE', '600000.XSHG']))
df = get_fundamentals_continuously(q, end_date='2017-12-25', count=5,panel=False)[:5]
print(df)
# 输出
day code turnover_ratio market_cap eps
0 2017-12-19 000001.XSHE 1.4174 2280.2307 0.38
1 2017-12-20 000001.XSHE 0.6539 2276.7964 0.38
2 2017-12-21 000001.XSHE 0.8779 2324.8738 0.38
3 2017-12-22 000001.XSHE 0.4391 2321.4397 0.38
4 2017-12-25 000001.XSHE 0.9372 2275.0796 0.38
from jqdatasdk import *
get_valuation(security, start_date=None, end_date=None, fields=None, count=None)
获取多个标的在指定交易日范围内的市值表数据
from jqdatasdk import *
# 传入单个标的
df1 = get_valuation('000001.XSHE', end_date="2019-11-18", count=3, fields=['capitalization', 'market_cap'])
print(df1)
# 传入多个标的
df2 = get_valuation(['000001.XSHE', '000002.XSHE'], end_date="2019-11-18", count=3, fields=['capitalization', 'market_cap'])
print(df2)
获取多个季度/年度的三大财务报表和财务指标数据. 可指定单季度数据, 也可以指定年度数据。可以指定观察日期, 也可以指定最后一个报告期的结束日期
get_history_fundamentals(security, fields, watch_date=None, stat_date=None, count=1, interval='1q', stat_by_year=False)
pandas.DataFrame, 数据库查询结果. 数据格式同 get_fundamentals. 每个股票每个报告期(一季度或者一年)的数据占用一行.
from jqdatasdk import *
security = ['000001.XSHE', '600000.XSHG']
df = get_history_fundamentals(security, fields=[balance.cash_equivalents,
cash_flow.net_deposit_increase, income.total_operating_revenue],
watch_date=None, stat_date='2019q1', count=5, interval='1q', stat_by_year=False)
print(df)
print(df.groupby('code').mean())
get_fundamentals(query_object, date=None, statDate=None)
市值数据每天更新,可以使用get_fundamentals(query(valuation),date),指定date为某一交易日,获取该交易日的估值数据。查询方法详见get_fundamentals()接口说明
注意: (详细内容可看get_fundamentals接口)
表名: valuation
| 列名 | 列的含义 | 解释 | 公式 |
|---|---|---|---|
| code | 股票代码 | 带后缀.XSHE/.XSHG | |
| day | 日期 | 取数据的日期 | |
| capitalization | 总股本(万股) | 公司已发行的普通股股份总数(包含A股,B股和H股的总股本) | |
| circulating_cap | 流通股本(万股) | 公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本) | |
| market_cap | 总市值(亿元) | A股收盘价*已发行股票总股本(A股+B股+H股) | |
| circulating_market_cap | 流通市值(亿元) | 流通市值指在某特定时间内当时可交易的流通股股数乘以当时股价得出的流通股票总价值。 | A股市场的收盘价*A股市场的流通股数 |
| turnover_ratio | 换手率(%) | 指在一定时间内市场中股票转手买卖的频率,是反映股票流通性强弱的指标之一。 | 换手率=[指定交易日成交量(手)100/截至该日股票流通股本(股)]100% |
| pe_ratio | 市盈率(PE, TTM) | 每股市价为每股收益的倍数,反映投资人对每元净利润所愿支付的价格,用来估计股票的投资报酬和风险 | 市盈率(PE,TTM)=(股票在指定交易日期的收盘价 * 当日人民币外汇挂牌价* 截止当日公司总股本)/归属于母公司股东的净利润TTM。 |
| pe_ratio_lyr | 市盈率(PE) | 以上一年度每股盈利计算的静态市盈率. 股价/最近年度报告EPS | 市盈率(PE)=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的净利润。 |
| pb_ratio | 市净率(PB) | 每股股价与每股净资产的比率 | 市净率=(股票在指定交易日期的收盘价 * 截至当日公司总股本)/(归属母公司股东的权益MRQ-其他权益工具)。 |
| ps_ratio | 市销率(PS, TTM) | 市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。 | 市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM |
| pcf_ratio | 市现率(PCF, 现金净流量TTM) | 每股市价为每股现金净流量的倍数 | 市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM |
获取最近日期所有股票的市值数据
# 获取最近日期的市值数据
df=get_fundamentals(query(valuation))
print(df[:4])
id code pe_ratio turnover_ratio pb_ratio ps_ratio \
0 64650881 000001.XSHE 14.4095 NaN 1.4169 2.7148
1 64649277 000002.XSHE 9.0344 NaN 1.8051 0.9491
2 64649388 000004.XSHE 40.2554 NaN 1.9572 19.2944
3 64649010 000005.XSHE 22.7056 NaN 1.4351 11.5734
pcf_ratio capitalization market_cap circulating_cap \
0 4.1729 1.940592e+06 4168.3911 1.940576e+06
1 5.1463 1.161773e+06 3658.4238 9.714315e+05
2 26.1566 1.650526e+04 28.3725 1.151256e+04
3 -8155.7451 1.058537e+05 23.2878 1.057946e+05
circulating_market_cap day pe_ratio_lyr
0 4168.3560 2021-03-14 14.4095
1 3059.0378 2021-03-14 9.4114
2 19.7901 2021-03-14 915.4301
3 23.2748 2021-03-14 13.3311
获取某一天所有的市值数据
# 获取“2021-01-05”所有的市值数据
get_fundamentals(query(valuation),date="2021-01-05")[:4]
获取某只股票在某天的市值数据
# 查询'000001.XSHE'的所有市值数据, 时间是2015-10-15
q = query(
valuation
).filter(
valuation.code == '000001.XSHE'
)
df = get_fundamentals(q, '2015-10-15')
# 打印出总市值
print(df['market_cap'][0])
按季度更新, 统计周期是一季度。可以使用get_fundamentals(query_object, date=None, statDate=None)查询,查询方法详见get_fundamentals()接口说明
注意: (详细内容可看get_fundamentals接口)
表名: indicator
| 列名 | 列的含义 | 解释 |
|---|---|---|
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2015-03-31, 2015-06-30 |
| eps | 每股收益EPS(元) | 每股收益(摊薄)=净利润/期末股本;分子从单季利润表取值,分母取季度末报告期股本值。 |
| adjusted_profit | 扣除非经常损益后的净利润(元) | 非经常性损益这一概念是证监会在1999年首次提出的,当时将其定义为:公司正常经营损益之外的一次性或偶发性损益。《问答第1号》则指出:非经常性损益是公司发生的与经营业务无直接关系的收支;以及虽与经营业务相关,但由于其性质、金额或发生频率等方面的原因,影响了真实公允地反映公司正常盈利能力的各项收入。 |
| operating_profit | 经营活动净收益(元) | 营业总收入-营业总成本 |
| value_change_profit | 价值变动净收益(元) | 公允价值变动净收益+投资净收益+汇兑净收益 |
| roe | 净资产收益率ROE(%) | 归属于母公司股东的净利润*2/(期初归属于母公司股东的净资产+期末归属于母公司股东的净资产) |
| inc_return | 净资产收益率(扣除非经常损益)(%) | 扣除非经常损益后的净利润(不含少数股东损益)*2/(期初归属于母公司股东的净资产+期末归属于母公司股东的净资产) |
| roa | 总资产净利率ROA(%) | 净利润*2/(期初总资产+期末总资产) |
| net_profit_margin | 销售净利率(%) | 净利润/营业收入 |
| gross_profit_margin | 销售毛利率(%) | 毛利/营业收入 |
| expense_to_total_revenue | 营业总成本/营业总收入(%) | 营业总成本/营业总收入(%) |
| operation_profit_to_total_revenue | 营业利润/营业总收入(%) | 营业利润/营业总收入(%) |
| net_profit_to_total_revenue | 净利润/营业总收入(%) | 净利润/营业总收入(%) |
| operating_expense_to_total_revenue | 营业费用/营业总收入(%) | 营业费用/营业总收入(%) |
| ga_expense_to_total_revenue | 管理费用/营业总收入(%) | 管理费用/营业总收入(%) |
| financing_expense_to_total_revenue | 财务费用/营业总收入(%) | 财务费用/营业总收入(%) |
| operating_profit_to_profit | 经营活动净收益/利润总额(%) | 经营活动净收益/利润总额(%) |
| invesment_profit_to_profit | 价值变动净收益/利润总额(%) | 价值变动净收益/利润总额(%) |
| adjusted_profit_to_profit | 扣除非经常损益后的净利润/归属于母公司所有者的净利润(%) | 扣除非经常损益后的净利润/归属于母公司所有者的净利润(%) |
| goods_sale_and_service_to_revenue | 销售商品提供劳务收到的现金/营业收入(%) | 销售商品提供劳务收到的现金/营业收入(%) |
| ocf_to_revenue | 经营活动产生的现金流量净额/营业收入(%) | 经营活动产生的现金流量净额/营业收入(%) |
| ocf_to_operating_profit | 经营活动产生的现金流量净额/经营活动净收益(%) | 经营活动产生的现金流量净额/经营活动净收益(%) |
| inc_total_revenue_year_on_year | 营业总收入同比增长率(%) | 营业总收入同比增长率是企业在一定期间内取得的营业总收入与其上年同期营业总收入的增长的百分比,以反映企业在此期间内营业总收入的增长或下降等情况。 |
| inc_total_revenue_annual | 营业总收入环比增长率(%) | 营业收入是指企业在从事销售商品,提供劳务和让渡资产使用权等日常经营业务过程中所形成的经济利益的总流入。环比增长率=(本期的某个指标的值-上一期这个指标的值)/上一期这个指标的值*100%。 |
| inc_revenue_year_on_year | 营业收入同比增长率(%) | 营业收入,是指公司在从事销售商品、提供劳务和让渡资产使用权等日常经营业务过程中所形成的经济利益的总流入,而营业收入同比增长率,则是检验上市公司去年一年挣钱能力是否提高的标准,营业收入同比增长,说明公司在上一年度挣钱的能力加强了,营业收入同比下降,则说明公司的挣钱能力稍逊于往年。 |
| inc_revenue_annual | 营业收入环比增长率(%) | 环比增长率=(本期的某个指标的值-上一期这个指标的值)/上一期这个指标的值*100%。 |
| inc_operation_profit_year_on_year | 营业利润同比增长率(%) | 同比增长率就是指公司当年期的净利润和上月同期、上年同期的净利润比较。(当期的利润-上月(上年)当期的利润)/上月(上年)当期的利润=利润同比增长率。 |
| inc_operation_profit_annual | 营业利润环比增长率(%) | 环比增长率=(本期的某个指标的值-上一期这个指标的值)/上一期这个指标的值*100%。 |
| inc_net_profit_year_on_year | 净利润同比增长率(%) | (当期的净利润-上月(上年)当期的净利润)/上月(上年)当期的净利润绝对值=净利润同比增长率。 |
| inc_net_profit_annual | 净利润环比增长率(%) | 环比增长率=(本期的某个指标的值-上一期这个指标的值)/上一期这个指标的值*100%。 |
| inc_net_profit_to_shareholders_year_on_year | 归属母公司股东的净利润同比增长率(%) | 归属于母公司股东净利润是指全部归属于母公司股东的净利润,包括母公司实现的净利润和下属子公司实现的净利润;同比增长率,一般是指和去年同期相比较的增长率。同比增长 和上一时期、上一年度或历史相比的增长(幅度)。 |
| inc_net_profit_to_shareholders_annual | 归属母公司股东的净利润环比增长率(%) | 环比增长率=(本期的某个指标的值-上一期这个指标的值)/上一期这个指标的值*100%。 |
获取某一天所有的财务指标数据
# 获取“2021-01-05”所有的财务指标数据
df=get_fundamentals(query(indicator),date="2021-01-05")
print(df[:4])
id code day pubDate statDate eps \
0 45000708 000001.XSHE 2021-01-05 2020-10-22 2020-09-30 0.4493
1 45590101 000002.XSHE 2021-01-05 2020-10-30 2020-09-30 0.6331
2 45590317 000004.XSHE 2021-01-05 2020-10-30 2020-09-30 0.3324
3 45406174 000005.XSHE 2021-01-05 2020-10-29 2020-09-30 0.0043
adjusted_profit operating_profit value_change_profit roe \
0 8.730000e+09 1.041200e+10 8.570000e+08 2.46
1 6.775110e+09 1.379713e+10 1.785868e+09 3.69
2 5.469821e+07 6.525505e+07 NaN 3.86
3 -1.787463e+07 -1.747028e+07 4.047380e+07 0.28
... inc_total_revenue_year_on_year \
0 ... 8.8400
1 ... 12.4700
2 ... 17929.4004
3 ... -41.6200
inc_total_revenue_annual inc_revenue_year_on_year inc_revenue_annual \
0 -5.36 8.8400 -5.36
1 -3.48 12.4700 -3.48
2 209.31 17929.4004 209.31
3 -3.07 -41.6200 -3.07
inc_operation_profit_year_on_year inc_operation_profit_annual \
0 5.51 69.1000
1 10.53 -28.2900
2 745.37 6337.2998
3 138.08 155.5600
inc_net_profit_year_on_year inc_net_profit_annual \
0 6.11 69.9800
1 22.97 -29.3600
2 721.89 3654.3401
3 143.59 151.5400
inc_net_profit_to_shareholders_year_on_year \
0 6.11
1 14.94
2 783.92
3 132.08
inc_net_profit_to_shareholders_annual
0 69.9800
1 -34.6700
2 4519.6099
3 140.9000
[4 rows x 36 columns]
获取一只股票某个字段数据
q = query(
indicator
).filter(
indicator.code == '000004.XSHE'
)
df = get_fundamentals(q, '2015-10-15')
# 打印出每股收益EPS(元)
print(df['eps'][0])
>>>0.0365
获取多只股票在某一日期的财务数据
df = get_fundamentals(query(
indicator
).filter(
# 这里不能使用 in 操作, 要使用in_()函数
indicator.code.in_(['000001.XSHE', '600000.XSHG'])
), date='2015-10-15')
print(df)
id code day pubDate statDate eps \
0 178 000001.XSHE 2015-10-15 2015-08-14 2015-06-30 0.4162
1 2952806 600000.XSHG 2015-10-15 2015-08-20 2015-06-30 0.6813
adjusted_profit operating_profit value_change_profit roe \
0 5.954000e+09 6.254000e+09 1.566000e+09 4.14
1 1.239500e+10 1.553200e+10 8.140000e+08 4.45
... inc_total_revenue_year_on_year \
0 ... 39.02
1 ... 19.94
inc_total_revenue_annual inc_revenue_year_on_year inc_revenue_annual \
0 25.32 39.02 25.32
1 14.30 19.94 14.30
inc_operation_profit_year_on_year inc_operation_profit_annual \
0 17.90 5.01
1 4.92 12.52
inc_net_profit_year_on_year inc_net_profit_annual \
0 18.69 5.81
1 6.29 13.33
inc_net_profit_to_shareholders_year_on_year \
0 18.69
1 6.39
inc_net_profit_to_shareholders_annual
0 5.81
1 13.53
[2 rows x 36 columns]
按季度更新, 统计周期是一季度。可以使用get_fundamentals() 的statDate参数查询年度数据。 由于这个表是存量性质的, 查询年度数据是返回第四季度的数据。
注意: (详细内容可看get_fundamentals接口)
表名: balance
| 列名 | 列的含义 | 解释 |
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报的日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2015-03-31, 2015-06-30 |
| cash_equivalents | 货币资金(元) | 货币资金是指在企业生产经营过程中处于货币形态的那部分资金,按其形态和用途不同可分为包括库存现金、银行存款和其他货币资金。它是企业中最活跃的资金,流动性强,是企业的重要支付手段和流通手段,因而是流动资产的审查重点。货币资金:又称为货币资产,是指在企业生产经营过程中处于货币形态的资产。是指可以立即投入流通,用以购买商品或劳务或用以偿还债务的交换媒介物。 |
| settlement_provi | 结算备付金(元) | 结算备付金是指结算参与人根据规定,存放在其资金交收账户中用于证券交易及非交易结算的资金。资金交收账户即结算备付金账户。 |
| lend_capital | 拆出资金(元) | 企业(金融)拆借给境内、境外其他金融机构的款项。 |
| trading_assets | 交易性金融资产(元) | 交易性金融资产是指:企业为了近期内出售而持有的金融资产。通常情况下,以赚取差价为目的从二级市场购入的股票、债券和基金等,应分类为交易性金融资产,故长期股权投资不会被分类转入交易性金融资产及其直接指定为以公允价值计量且其变动计入当期损益的金融资产进行核算。 |
| bill_receivable | 应收票据(元) | 应收票据是指企业持有的还没有到期、尚未兑现的票据。应收票据是企业未来收取货款的权利,这种权利和将来应收取的货款金额以书面文件形式约定下来,因此它受到法律的保护,具有法律上的约束力。是一种债权凭证。根据我国现行法律的规定,商业汇票的期限不得超过6个月,因而我国的商业汇票是一种流动资产。在我国应收票据、应付票据通常是指“商业汇票”,包括“银行承兑汇票”和“商业承兑汇票”两种,是远期票据,付款期一般在1个月以上,6个月以内。其他的银行票据(支票、本票、汇票}等,都是作为货币资金来核算的,而不作为应收应付票据 |
| account_receivable | 应收账款(元) | 应收账款是指企业在正常的经营过程中因销售商品、产品、提供劳务等业务,应向购买单位收取的款项,包括应由购买单位或接受劳务单位负担的税金、代购买方垫付的各种运杂费等。 |
| advance_payment | 预付款项(元) | 预付款项,包括预付货款和预付工程款等,通常属于流动资产。预付账款与应收账款都属于公司的债权,但两者产生的原因不同,应收账款是公司应收的销货款,通常是用货币清偿的,而预付账款是预付给供货单位的购货款或预付给施工单位的工程价款和材料款,通常是用商品、劳务或完工工程来清偿的。 |
| insurance_receivables | 应收保费(元) | 保险公司按照合同约定应向投保人收取但尚未收到的保费收入。 |
| reinsurance_receivables | 应收分保账款(元) | 指公司开展分保业务而发生的各种应收款项。 |
| reinsurance_contract_reserves_receivable | 应收分保合同准备金(元) | 是用于核算企业(再保险分出人)从事再保险业务确认的应收分保未到期责任准备金,以及应向再保险接受人摊回的保险责任准备金。 |
| interest_receivable | 应收利息(元) | 应收利息是指:短期债券投资实际支付的价款中包含的已到付息期但尚未领取的债券利息。这部分应收利息不计入短期债券投资初始投资成本中。但实际支付的价款中包含尚未到期的债券利息,则计入短期债券投资初始投资成本中(不需要单独核算)。 |
| dividend_receivable | 应收股利(元) | 应收股利是指企业因股权投资而应收取的现金股利以及应收其他单位的利润,包括企业购入股票实际支付的款项中所包括的已宣告发放但尚未领取的现金股利和企业因对外投资应分得的现金股利或利润等,但不包括应收的股票股利。 |
| other_receivable | 其他应收款(元) | 其他应收款是企业应收款项的另一重要组成部分。是企业除应收票据、应收账款和预付账款以外的各种应收暂付款项。其他应收款通常包括暂付款,是指企业在商品交易业务以外发生的各种应收、暂付款项。 |
| bought_sellback_assets | 买入返售金融资产(元) | 指公司按返售协议约定先买入再按固定价格返售的证券等金融资产所融出的资金。 |
| inventories | 存货(元) | 是指企业在日常活动中持有的以备出售的产成品或商品、处在生产过程中的在产品、在生产过程或提供劳务过程中耗用的材料和物料等。 |
| non_current_asset_in_one_year | 一年内到期的非流动资产(元) | 一年内到期的非流动资产反映企业将于一年内到期的非流动资产项目金额。包括一年内到期的持有至到期投资、长期待摊费用和一年内可收回的长期应收款。应根据有关科目的期末余额填列。执行企业会计制度的企业根据“一年内到期的长期债权投资”等科目填列。 |
| other_current_assets | 其他流动资产(元) | 其他流动资产,是指除货币资金、短期投资、应收票据、应收账款、其他应收款、存货等流动资产以外的流动资产 |
| total_current_assets | 流动资产合计(元) | 指在一年内或者超过一年的一个营业周期内变现或者耗用的资产,包括货币资金、短期投资、应收票据、应收账款、坏账准备、应收账款净额、预付账款、其他应收款、存货、待转其他业务支出、待摊费用、待处理流动资产净损失、一年内到期的长期债券投资、其他流动资产等项。 |
| loan_and_advance | 发放委托贷款及垫款(元) | 委托贷款是指由委托人提供合法来源的资金转入委托银行一般委存账户,委托银行根据委托人确定的贷款对象、用途、金额、期限、利率等代为发放、监督使用并协助收回的贷款业务。垫款是指银行在客户无力支付到期款项的情况下,被迫以自有资金代为支付的行为。 |
| hold_for_sale_assets | 可供出售金融资产(元) | 可供出售金融资产指初始确认时即被指定为可供出售的非衍生金融资产,以及下列各类资产之外的非衍生金融资产:(一)贷款和应收款项;(二)持有至到期投资;(三)交易性金融资产。 |
| hold_to_maturity_investments | 持有至到期投资(元) | 持有至到期投资指企业有明确意图并有能力持有至到期,到期日固定、回收金额固定或可确定的非衍生金融资产。以下非衍生金融资产不应划分为持有至到期投资:(一)初始确认时划分为交易性非衍生金融资产;(二)初始确认时被指定为可供出售非衍生金融资产;(三)符合贷款和应收款项定义的非衍生金融资产。 |
| longterm_receivable_account | 长期应收款(元) | 长期应收款是根据长期应收款的账户余额减去未确认融资收益还有一年内到期的长期应收款。 |
| longterm_equity_invest | 长期股权投资(元) | 长期股权投资是指企业持有的对其子公司、合营企业及联营企业的权益性投资以及企业持有的对被投资单位不具有控制、共同控制或重大影响,且在活跃市场中没有报价、公允价值不能可靠计量的权益性投资。 |
| investment_property | 投资性房地产(元) | 投资性房地产是指为赚取租金或资本增值,或两者兼有而持有的房地产。投资性房地产应当能够单独计量和出售。 |
| fixed_assets | 固定资产(元) | 固定资产是指企业为生产商品、提供劳务、出租或经营管理而持有的、使用寿命超过一个会计年度的有形资产。属于产品生产过程中用来改变或者影响劳动对象的劳动资料,是固定资本的实物形态。固定资产在生产过程中可以长期发挥作用,长期保持原有的实物形态,但其价值则随着企业生产经营活动而逐渐地转移到产品成本中去,并构成产品价值的一个组成部分。 |
| constru_in_process | 在建工程(元) | 在建工程是指企业固定资产的新建、改建、扩建,或技术改造、设备更新和大修理工程等尚未完工的工程支出。在建工程通常有”自营”和”出包”两种方式。自营在建工程指企业自行购买工程用料、自行施工并进行管理的工程;出包在建工程是指企业通过签订合同,由其它工程队或单位承包建造的工程。 |
| construction_materials | 工程物资(元) | 工程物资是指用于固定资产建造的建筑材料(如钢材、水泥、玻璃等),企业(民用航空运输)的高价周转件(例如飞机的引擎)等。买回来要再次加工建设的资产。在资产负债表中列示为非流动资产。 |
| fixed_assets_liquidation | 固定资产清理(元) | 固定资产清理是指企业因出售、报废和毁损等原因转入清理的固定资产价值及其在清理过程中所发生的清理费用和清理收入等。 |
| biological_assets | 生产性生物资产(元) | 生产性生物资产是指为产出农产品、提供劳务或出租等目的而持有的生物资产,包括经济林、薪炭林、产畜和役畜等。 |
| oil_gas_assets | 油气资产(元) | 重要资产,其价值在总资产中占有较大比重。油气资产是指油气开采企业所拥有或控制的井及相关设施和矿区权益。油气资产属于递耗资产。递耗资产是通过开掘、采伐、利用而逐渐耗竭,以致无法恢复或难以恢复、更新或按原样重置的自然资源,如矿藏、原始森林等。油气资产是油气生产企业的重要资产,其价值在总资产中占有较大比重。 |
| intangible_assets | 无形资产(元) | 无形资产是指企业拥有或者控制的没有实物形态的可辨认非货币性资产。资产满足下列条件之一的,符合无形资产定义中的可辨认性标准: 1、能够从企业中分离或者划分出来,并能够单独或者与相关合同、资产或负债一起,用于出售、转移、授予许可、租赁或者交换。 2、源自合同性权利或其他法定权利,无论这些权利是否可以从企业或其他权利和义务中转移或者分离。无形资产主要包括专利权、非专利技术、商标权、著作权、土地使用权、特许权等。商誉的存在无法与企业自身分离,不具有可辨认性,不属于本章所指无形资产。 |
| development_expenditure | 开发支出(元) | 开发支出项目是反映企业开发无形资产过程中能够资本化形成无形资产成本的支出部分。开发支出项目应当根据”研发支出”科目中所属的”资本化支出”明细科目期末余额填列。 |
| good_will | 商誉(元) | 商誉是指能在未来期间为企业经营带来超额利润的潜在经济价值,或一家企业预期的获利能力超过可辨认资产正常获利能力(如社会平均投资回报率)的资本化价值。商誉是企业整体价值的组成部分。在企业合并时,它是购买企业投资成本超过被并企业净资产公允价值的差额。 |
| long_deferred_expense | 长期待摊费用(元) | 长期待摊费用是指企业已经支出,但摊销期限在1年以上(不含1年)的各项费用,包括开办费、租入固定资产的改良支出及摊销期在1年以上的固定资产大修理支出、股票发行费用等。应由本期负担的借款利息、租金等,不得作为长期待摊费用。 |
| deferred_tax_assets | 递延所得税资产(元) | 指对于可抵扣暂时性差异,以未来期间很可能取得用来抵扣可抵扣暂时性差异的应纳税所得额为限确认的一项资产。而对于所有应纳税暂时性差异均应确认为一项递延所得税负债,但某些特殊情况除外。递延所得税资产和递延所得税负债是和暂时性差异相对应的,可抵减暂时性差异是将来可用来抵税的部分,是应该收回的资产,所以对应递延所得税资产递延所得税负债是由应纳税暂时性差异产生的,对于影响利润的暂时性差异,确认的递延所得税负债应该调整“所得税费用”。例如会计折旧小于税法折旧,导致资产的账面价值大于计税基础,如果产品已经对外销售了,就会影响利润,所以递延所得税负债应该调整当期的所得税费用。如果暂时性差异不影响利润,而是直接计入所有者权益的,则确认的递延所得税负债应该调整资本公积。例如可供出售金融资产是按照公允价值来计量的,公允价值产升高了,会计上调增了可供出售金融资产的账面价值,并确认的资本公积,因为不影响利润,所以确认的递延所得税负债不能调整所得税费用,而应该调整资本公积。 |
| other_non_current_assets | 其他非流动资产(元) | 贷款是指贷款人(我国的商业银行等金融机构)对借款人提供的并按约定的利率和期限还本付息的货币资金。贷款币可以是人民币,也可以是外币。 |
| total_non_current_assets | 非流动资产合计(元) | 公式:非流动资产合计=所有的非流动资产项目之和—一年内到期的非流动资产=固定资产—累计折旧—固定资产减值准备—一年内到期的非流动资产。 |
| total_assets | 资产总计(元) | 资产总计是指企业拥有或可控制的能以货币计量的经济资源,包括各种财产、债权和其他权利。企业的资产按其流动性划分为:流动资产、长期投资、固定资产、无形资产及递延资产、其他资产等,即为企业资产负债表的资产总计项。所谓流动性是指企业资产的变现能力和支付能力。该指标根据会计“资产负债表”中“资产总计”项的年末数填列。资产总计=流动资产+长期投资+固定资产+无形及递延资产+其他资产。 |
| shortterm_loan | 短期借款(元) | 短期借款企业用来维持正常的生产经营所需的资金或为抵偿某项债务而向银行或其他金融机构等外单位借入的、还款期限在一年以下或者一年的一个经营周期内的各种借款。 |
| borrowing_from_centralbank | 向中央银行借款(元) | 向中央银行借款的形式有两种,一种是直接借款,也称再贷款;另一种为间接借款,即所谓的再贴现。 |
| deposit_in_interbank | 吸收存款及同业存放(元) | 吸收存款是负债类科目,它核算企业(银行)吸收的除了同业存放款项以外的其他各种存款,即:收到的除金融机构以外的企业或者个人、组织的存款,包括单位存款(企业、事业单位、机关、社会团体等)、个人存款、信用卡存款、特种存款、转贷款资金和财政性存款等。同业存放,也称同业存款,全称是同业及其金融机构存入款项,是指因支付清算和业务合作等的需要,由其他金融机构存放于商业银行的款项。 |
| borrowing_capital | 拆入资金(元) | 拆入资金,是指信托投资公司向银行或其他金融机构借入的资金。拆入资金应按实际借入的金额入账。 |
| trading_liability | 交易性金融负债(元) | 交易性金融负债是指企业采用短期获利模式进行融资所形成的负债,比如短期借款、长期借款、应付债券。作为交易双方来说,甲方的金融债权就是乙方的金融负债,由于融资方需要支付利息,因比,就形成了金融负债。交易性金融负债是企业承担的交易性金融负债的公允价值。 |
| notes_payable | 应付票据(元) | 应付票据是指企业购买材料、商品和接受劳务供应等而开出、承兑的商业汇票,包括商业承兑汇票和银行承兑汇票。在我国应收票据、应付票据仅指“商业汇票”,包括“银行承兑汇票”和“商业承兑汇票”两种,属于远期票据,付款期一般在1个月以上,6个月以内。其他的银行票据(支票、本票、汇票)等,都是作为货币资金来核算的,而不作为应收应付票据。 |
| accounts_payable | 应付账款(元) | 应付账款是指因购买材料、商品或接受劳务供应等而发生的债务,这是买卖双方在购销活动中由于取得物资与支付贷款在时间上不一致而产生的负债。 |
| advance_peceipts | 预收款项(元) | 预收款项是在企业销售交易成立以前,预先收取的部分货款。 |
| sold_buyback_secu_proceeds | 卖出回购金融资产款(元) | 卖出回购金融资产款是用于核算企业(金融)按回购协议卖出票据、证券、贷款等金融资产所融入的资金。 |
| commission_payable | 应付手续费及佣金(元) | 是会计科目的一种,用以核算企业因购买材料、商品和接受劳务供应等经营活动应支付的款项。通常是指因购买材料、商品或接受劳务供应等而发生的债务,这是买卖双方在购销活动中由于取得物资与支付贷款在时间上不一致而产生的负债。 |
| salaries_payable | 应付职工薪酬(元) | 应付职工薪酬是指企业为获得职工提供的服务而给予各种形式的报酬以及其他相关支出。职工薪酬包括:职工工资、奖金、津贴和补贴;职工福利费;医疗保险费、养老保险费、失业保险费、工伤保险费和生育保险费等社会保险费;住房公积金;工会经费和职工教育经费;非货币性福利;因解除与职工的劳动关系给予的补偿;其他与获得职工提供的服务相关的支出。原“应付工资”和“应付福利费”取消,换成“应付职工薪酬”。 |
| taxs_payable | 应交税费(元) | 应交税费是指企业根据在一定时期内取得的营业收入、实现的利润等,按照现行税法规定,采用一定的计税方法计提的应交纳的各种税费。应交税费包括企业依法交纳的增值税、消费税、营业税、所得税、资源税、土地增值税、城市维护建设税、房产税、土地使用税、车船税、教育费附加、矿产资源补偿费等税费,以及在上缴国家之前,由企业代收代缴的个人所得税等。 |
| interest_payable | 应付利息(元) | 应付利息是指金融企业根据存款或债券金额及其存续期限和规定的利率,按期计提应支付给单位和个人的利息。应付利息应按已计但尚未支付的金额入账。应付利息包括分期付息到期还本的长期借款、企业债券等应支付的利息。应付利息与应计利息的区别:应付利息属于借款,应计利息属于企业存款。 |
| dividend_payable | 应付股利(元) | 应付股利是指企业根据年度利润分配方案,确定分配的股利。是企业经董事会或股东大会,或类似机构决议确定分配的现金股利或利润。企业分配的股票股利,不通过“应付股利”科目核算。确定时借记“未分配利润”帐户,贷记“应付股利”帐户;实际支付时借记“应付股利”帐户,贷记“银行存款”帐户。 |
| other_payable | 其他应付款(元) | 其他应付款是财务会计中的一个往来科目,通常情况下,该科目只核算企业应付其他单位或个人的零星款项,如应付经营租入固定资产和包装物的租金、存入保证金、应付统筹退休金等。 |
| reinsurance_payables | 应付分保账款(元) | 应付分保账款表示债务,这样一来,债权、债务关系更加一目了然。另外,财产保险公司应收分保账款是指本公司与其他保险公司之间开展分保业务发生的各种应收款项。 |
| insurance_contract_reserves | 保险合同准备金(元) | 险准备金是指保险人为保证其如约履行保险赔偿或给付义务,根据政府有关法律规定或业务特定需要,从保费收入或盈余中提取的与其所承担的保险责任相对应的一定数量的基金。 |
| proxy_secu_proceeds | 代理买卖证券款(元) | 代理买卖证券款是指公司接受客户委托,代理客户买卖股票、债券和基金等有价证券而收到的款项,包括公司代理客户认购新股的款项、代理客户领取的现金股利和债券利息,代客户向证券交易所支付的配股款等。 |
| receivings_from_vicariously_sold_securities | 代理承销证券款(元) | 代理承销证券款是指公司接受委托,采用承购包销方式或代销方式承销证券所形成的、应付证券发行人的承销资金。 |
| non_current_liability_in_one_year | 一年内到期的非流动负债(元) | 是反映企业各种非流动负债在一年之内到期的金额,包括一年内到期的长期借款、长期应付款和应付债券。本项目应根据上述账户分析计算后填列。计入(收录)流动负债中。 |
| other_current_liability | 其他流动负债(元) | 其他流动负债是指不能归属于短期借款,应付短期债券券,应付票据,应付帐款,应付所得税,其他应付款,预收账款这七款项目的流动负债。但以上各款流动负债,其金额未超过流动负债合计金额百分之五者,得并入其他流动负债内。 |
| total_current_liability | 流动负债合计(元) | 流动负债合计是指企业在一年内或超过一年的一个营业周期内需要偿还的债务,包括短期借款、应付帐款、其他应付款、应付工资、应付福利费、未交税金和未付利润、其他应付款、预提费用等。 |
| longterm_loan | 长期借款(元) | 长期借款是指企业从银行或其他金融机构借入的期限在一年以上(不含一年)的借款。我国股份制企业的长期借款主要是向金融机构借人的各项长期性借款,如从各专业银行、商业银行取得的贷款;除此之外,还包括向财务公司、投资公司等金融企业借人的款项。 |
| bonds_payable | 应付债券(元) | 应付债券是指企业为筹集资金而对外发行的期限在一年以上的长期借款性质的书面证明,约定在一定期限内还本付息的一种书面承诺。 |
| longterm_account_payable | 长期应付款(元) | 长期应付款是指企业除了长期借款和应付债券以外的长期负债,包括应付引进设备款、应付融资租入固定资产的租赁费等。 |
| specific_account_payable | 专项应付款(元) | 专项应付款是企业接受国家拨入的具有专门用途的款项所形成的不需要以资产或增加其他负债偿还的负债。专项应付款指企业接受国家拨入的具有专门用途的拨款,如新产品试制费拨款、中间试验费拨款和重要科学研究补助费拨款等科技三项拨款等。 |
| estimate_liability | 预计负债(元) | 预计负债是因或有事项可能产生的负债。根据或有事项准则的规定,与或有事项相关的义务同时符合以下三个条件的,企业应将其确认为负债:一是该义务是企业承担的现时义务;二是该义务的履行很可能导致经济利益流出企业,这里的“很可能”指发生的可能性为“大于50%,但小于或等于95%”;三是该义务的金额能够可靠地计量。 |
| deferred_tax_liability | 递延所得税负债(元) | 递延所得税负债是指根据应纳税暂时性差异计算的未来期间应付所得税的金额;递延所得税资产和递延所得税负债是和暂时性差异相对应的,可抵减暂时性差异是将来可用来抵税的部分,是应该收回的资产,所以对应递延所得税资产;递延所得税负债是由应纳税暂时性差异产生的,对于影响利润的暂时性差异,确认的递延所得税负债应该调整“所得税费用”。 |
| other_non_current_liability | 其他非流动负债(元) | 其他非流动负债项目是反映企业除长期借款、应付债券等项目以外的其他非流动负债。其他非流动负债项目应根据有关科目的期末余额填列。其他非流动负债项目应根据有关科目期末余额减去将于一年内(含一年)到期偿还数后的余额填列。非流动负债各项目中将于一年内(含一年)到期的非流动负债,应在”一年内到期的非流动负债”项目内单独反映。 |
| total_non_current_liability | 非流动负债合计(元) | 流动负债合计是指企业在一年内或超过一年的一个营业周期内需要偿还的债务,包括短期借款、应付帐款、其他应付款、应付工资、应付福利费、未交税金和未付利润、其他应付款、预提费用等。 |
| total_liability | 负债合计(元) | 负债合计是指企业所承担的能以,将以资产或劳务偿还的债务,偿还形式包括货币、资产或提供劳务。 |
| paidin_capital | 实收资本(或股本)(元) | 实收资本是指企业的投资者按照企业章程或合同、协议的约定,实际投入企业的资本。我国实行的是注册资本制,因而,在投资者足额缴纳资本之后,企业的实收资本应该等于企业的注册资本。“实收资本”科目用于核算企业实际收到的投资人投入的资本。 |
| capital_reserve_fund | 资本公积金(元) | 资本公积金是在公司的生产经营之外,由资本、资产本身及其他原因形成的股东权益收入。股份公司的资本公积金,主要来源于的股票发行的溢价收入、接受的赠与、资产增值、因合并而接受其他公司资产净额等。其中,股票发行溢价是上市公司最常见、是最主要的资本公积金来源。 |
| treasury_stock | 库存股(元) | 指股份有限公司已发行的股票,由于公司的重新回购或其他原因且不是为了注销的目的而由公司持有的股票。 |
| specific_reserves | 专项储备(元) | 专项储备用于核算高危行业企业按照规定提取的安全生产费以及维持简单再生产费用等具有类似性质的费用。 |
| surplus_reserve_fund | 盈余公积金(元) | 盈余公积是指企业按照规定从净利润中提取的各种积累资金。 |
| ordinary_risk_reserve_fund | 一般风险准备(元) | 指从事证券业务的金融企业按规定从 净利润中提取,用于弥补亏损的 风险准备。 |
| retained_profit | 未分配利润(元) | 未分配利润是企业未作分配的利润。它在以后年度可继续进行分配,在未进行分配之前,属于所有者权益的组成部分。 |
| foreign_currency_report_conv_diff | 外币报表折算差额(元) | 是指在编制合并财务报表时,把国外子公司或分支机构以所在国家货币编制的财务报表折算成以记账本位币表达的财务报表时,由于报表项目采用不同汇率折算而形成的汇兑损益。 |
| equities_parent_company_owners | 归属于母公司股东权益合计(元) | 母公司股东权益反映的是母公司所持股份部分的所有者权益数,所有者权益合计是反映的是所有的股东包括母公司与少数股东一起100%的股东所持股份的总体所有者权益合计数。即所有者权益合计=母公司股东权益合计母+少数股东权益合计。 |
| minority_interests | 少数股东权益(元) | 少数股东权益简称少数股权,是反映除母公司以外的其他投资者在子公司中的权益,表示其他投资者在子公司所有者权益中所拥有的份额。在控股合并形式下,子公司股东权益中未被母公司持有部分。在母公司拥有子公司股份不足100%,即只拥有子公司净资产的部分产权时,子公司股东权益的一部分属于母公司所有,即多数股权,其余部分仍属外界其他股东所有,由于后者在子公司全部股权中不足半数,对子公司没有控制能力,故被称为少数股权。 |
| total_owner_equities | 股东权益合计(元) | 指股本、资本公积、盈余公积、未分配利润的之和,代表了股东对企业的所有权,反映了股东在企业资产中享有的经济利益。 |
| total_sheet_owner_equities | 负债和股东权益合计 | 负债和股东权益总计是等于负债总额加上股东权益总额,也等于资产总额。 |
获取所有公司最近季度的资产负债表
df=get_fundamentals(query(balance))
print(df[:4])
id code day pubDate statDate \
0 31771107 000001.XSHE 2021-03-14 2021-02-02 2020-12-31
1 32297446 000002.XSHE 2021-03-14 2020-10-30 2020-09-30
2 32297662 000004.XSHE 2021-03-14 2020-10-30 2020-09-30
3 32126926 000005.XSHE 2021-03-14 2020-10-29 2020-09-30
cash_equivalents settlement_provi lend_capital trading_assets \
0 2.839820e+11 NaN 7.099600e+10 3.112700e+11
1 1.730500e+11 NaN NaN 2.270278e+08
2 1.293766e+08 NaN NaN NaN
3 6.283763e+07 NaN NaN 2.531232e+07
bill_receivable ... treasury_stock \
0 NaN ... NaN
1 21815870.0 ... NaN
2 484800.0 ... NaN
3 3513000.0 ... NaN
specific_reserves surplus_reserve_fund ordinary_risk_reserve_fund \
0 NaN 1.078100e+10 5.153600e+10
1 NaN 7.082625e+10 NaN
2 NaN 1.341421e+07 NaN
3 NaN 1.495191e+08 NaN
retained_profit foreign_currency_report_conv_diff \
0 1.311860e+11 NaN
1 1.034041e+11 NaN
2 7.160281e+07 NaN
3 -1.715857e+08 NaN
equities_parent_company_owners minority_interests total_owner_equities \
0 3.641310e+11 NaN 3.641310e+11
1 2.026750e+11 9.996741e+10 3.026424e+11
2 1.449622e+09 1.207967e+07 1.461701e+09
3 1.622737e+09 9.179124e+07 1.714528e+09
total_sheet_owner_equities
0 4.468514e+12
1 1.814466e+12
2 1.548313e+09
3 2.939184e+09
[4 rows x 86 columns]
获取某只股票的资产负债表数据
# 查询'000001.XSHE'的资产负债表数据
q = query(
balance
).filter(
balance.code == '000001.XSHE'
)
# 运行时间2020-10-15
df = get_fundamentals(q,'2020-10-15')
# pubDate公司发布财报的日期,statDate财报统计的季度的最后一天,cash_equivalents货币资金
print(df[['pubDate','statDate','cash_equivalents']])
#输出
pubDate statDate cash_equivalents
0 2020-08-28 2020-06-30 2.524260e+11
按季度更新, 统计周期是一季度。可以使用get_fundamentals() 的 statDate 参数查询年度数据。
表名: cash_flow
| 列名 | 列的含义 | 解释 |
|---|---|---|
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2015-03-31, 2015-06-30 |
| goods_sale_and_service_render_cash | 销售商品、提供劳务收到的现金(元) | 反映企业本期销售商品、提供劳务收到的现金,以及前期销售商品、提供劳务本期收到的现金(包括销售收入和应向购买者收取的增值税销项税额)和本期预收的款项,减去本期销售本期退回的商品和前期销售本期退回的商品支付的现金。企业销售材料和代购代销业务收到的现金,也在本项目反映。 |
| net_deposit_increase | 客户存款和同业存放款项净增加额(元) | 客户存款和同业存款净增加额=客户存款和同业存款期末余额-客户存款和同业存款期初余额。 |
| net_borrowing_from_central_bank | 向中央银行借款净增加额(元) | 向中央银行借款净增加额=向中央银行借款期末余额-向中央银行借款期初余额。 |
| net_borrowing_from_finance_co | 向其他金融机构拆入资金净增加额(元) | 向其他金融机构拆入资金净增加额=向其他金融机构拆入资金期末余额-向其他金融机构拆入资金期初余额。 |
| net_original_insurance_cash | 收到原保险合同保费取得的现金(元) | 收到原保险合同保费取得的现金 |
| net_cash_received_from_reinsurance_business | 收到再保险业务现金净额(元) | 再保险是指一个保险人,分出一定的保险金额给另一个保险人。 |
| net_insurer_deposit_investment | 保户储金及投资款净增加额(元) | 保户储金,是指保险公司以储金利息作为保费的保险业务,收到保户缴存的储金。投资款是收到股东的款项。 |
| net_deal_trading_assets | 处置交易性金融资产净增加额(元) | 交易性金融资产是指企业为了近期内出售而持有的债券投资、股票投资和基金投资。 |
| interest_and_commission_cashin | 收取利息、手续费及佣金的现金(元) | 收取利息、手续费及佣金的现金 |
| net_increase_in_placements | 拆入资金净增加额(元) | 拆入资金净增加额=拆入资金期末余额-拆入资金期初余额。 |
| net_buyback | 回购业务资金净增加额(元) | 回购交易是质押贷款的一种方式,通常用在政府债券上。债券经纪人向投资者临时出售一定的债券,同时签约在一定的时间内以稍高价格买回来。债券经纪人从中取得资金再用来投资,而投资者从价格差中得利。 |
| tax_levy_refund | 收到的税费返还(元) | 反映企业收到返还的增值税、营业税、所得税、消费税、关税和教育费附加返还款等各种税费。 |
| other_cashin_related_operate | 收到其他与经营活动有关的现金(元) | 反映企业收到的罚款收入、经营租赁收到的租金等其他与经营活动有关的现金流入,金额较大的应当单独列示。 |
| subtotal_operate_cash_inflow | 经营活动现金流入小计(元) | 销售商品、提供劳务+收到的现金收到的税费返还+收到其他与经营活动有关的现金。 |
| goods_and_services_cash_paid | 购买商品、接受劳务支付的现金(元) | 反映企业本期购买商品、接受劳务实际支付的现金(包括增值税进项税额),以及本期支付前期购买商品、接受劳务的未付款项和本期预付款项,减去本期发生的购货退回收到的现金。 |
| net_loan_and_advance_increase | 客户贷款及垫款净增加额(元) | 客户贷款是科目核算信托项目管理运用、处分信托财产而持有的各项贷款。垫款是指银行在客户无力支付到期款项的情况下,被迫以自有资金代为支付的行为。 |
| net_deposit_in_cb_and_ib | 存放中央银行和同业款项净增加额(元) | 存放中央银行款项是指各金融企业在中央银行开户而存入的用于支付清算、调拨款项、提取及缴存现金、往来资金结算以及按吸收存款的一定比例缴存于中央银行的款项和其他需要缴存的款项。存放同业是指商业银行存放在其他银行和非银行金融机构的存款。 |
| original_compensation_paid | 支付原保险合同赔付款项的现金(元) | 赔付支出主要指核算企业(保险)支付的原保险合同赔付款项和再保险合同赔付款项。原保险即是区别于再保险的名词。 |
| handling_charges_and_commission | 支付利息、手续费及佣金的现金(元) | 一般是指涉及到贷款利息,银行扣缴的手续费及佣金等现金的流出,用在利息指出,或者银行手续费支出,佣金支出等业务上。 |
| policy_dividend_cash_paid | 支付保单红利的现金(元) | 保单红利支出是根据原保险合同的约定,按照分红保险产品的红利分配方法及有关精算结果而估算,支付给保单持有人的红利。 |
| staff_behalf_paid | 支付给职工以及为职工支付的现金(元) | 这个项目反映企业实际支付给职工的现金以及为职工支付的现金,包括本期实际支付给职工的工资、奖金、各种津贴和补贴等,以及为职工支付的其他费用。不包括支付的离退休人员的各项费用和支付给在建工程人员的工资等。 |
| tax_payments | 支付的各项税费(元) | 反映企业本期发生并支付的、本期支付以前各期发生的以及预交的教育费附加、矿产资源补偿费、印花税、房产税、土地增值税、车船使用税、预交的营业税等税费,计入固定资产价值、实际支付的耕地占用税、本期退回的增值税、所得税等除外。 |
| other_operate_cash_paid | 支付其他与经营活动有关的现金(元) | 反映企业支付的罚款支出、支付的差旅费、业务招待费、保险费、经营租赁支付的现金等其他与经营活动有关的现金流出,金额较大的应当单独列示。 |
| subtotal_operate_cash_outflow | 经营活动现金流出小计(元) | 购买商品、接受劳务支付的现金+支付给职工以及为职工支付的现金+支付的各项税费+支付其他与经营活动有关的现金。 |
| net_operate_cash_flow | 经营活动产生的现金流量净额(元) | 公式: 经营活动产生的现金流量净额 |
| invest_withdrawal_cash | 收回投资收到的现金(元) | 反映企业出售、转让或到期收回除现金等价物以外的交易性金融资产、长期股权投资而收到的现金,以及收回长期债权投资本金而收到的现金,但长期债权投资收回的利息除外。 |
| invest_proceeds | 取得投资收益收到的现金(元) | 反映企业因股权性投资而分得的现金股利,从子公司、联营企业或合营企业分回利润而收到的现金,以及因债权性投资而取得的现金利息收入,但股票股利除外。 |
| fix_intan_other_asset_dispo_cash | 处置固定资产、无形资产和其他长期资产收回的现金净额(元) | 反映企业出售、报废固定资产、无形资产和其他长期资产所取得的现金(包括因资产毁损而收到的保险赔偿收入),减去为处置这些资产而支付的有关费用后的净额,但现金净额为负数的除外。 |
| net_cash_deal_subcompany | 处置子公司及其他营业单位收到的现金净额(元) | 反映企业处置子公司及其他营业单位所取得的现金减去相关处置费用后的净额。 |
| other_cash_from_invest_act | 收到其他与投资活动有关的现金(元) | 反映企业除上述各项目外收到或支付的其他与投资活动有关的现金流入或流出,金额较大的应当单独列示。 |
| subtotal_invest_cash_inflow | 投资活动现金流入小计(元) | 取得投资收益收到的现金+处置固定资产、无形资产和其他长期资产收回的现金净额+处置子公司及其他营业单位收到的现金净额+收到其他与投资活动有关的现金。 |
| fix_intan_other_asset_acqui_cash | 购建固定资产、无形资产和其他长期资产支付的现金(元) | 反映企业购买、建造固定资产、取得无形资产和其他长期资产所支付的现金及增值税款、支付的应由在建工程和无形资产负担的职工薪酬现金支出,但为购建固定资产而发生的借款利息资本化部分、融资租入固定资产所支付的租赁费除外。 |
| invest_cash_paid | 投资支付的现金(元) | 反映企业取得的除现金等价物以外的权益性投资和债权性投资所支付的现金以及支付的佣金、手续费等附加费用。 |
| impawned_loan_net_increase | 质押贷款净增加额(元) | 质押贷款是指贷款人按《担保法》规定的质押方式以借款人或第三人的动产或权利为质押物发放的贷款。 |
| net_cash_from_sub_company | 取得子公司及其他营业单位支付的现金净额(元) | 反映企业购买子公司及其他营业单位购买出价中以现金支付的部分,减去子公司或其他营业单位持有的现金和现金等价物后的净额。 |
| other_cash_to_invest_act | 支付其他与投资活动有关的现金(元) | 现金流量表科目。 |
| subtotal_invest_cash_outflow | 投资活动现金流出小计(元) | 购建固定资产、无形资产和其他长期资产支付的现金+投资支付的现金+取得子公司及其他营业单位支付的现金净额+支付其他与投资活动有关的现金。 |
| net_invest_cash_flow | 投资活动产生的现金流量净额(元) | 现金流量表科目。 |
| cash_from_invest | 吸收投资收到的现金(元) | 反映企业以发行股票、债券等方式筹集资金实际收到的款项,减去直接支付给金融企业的佣金、手续费、宣传费、咨询费、印刷费等发行费用后的净额。 |
| cash_from_mino_s_invest_sub | 子公司吸收少数股东投资收到的现金(元) | 《企业会计准则第33 号——合并财务报表》合并现金流量表科目。具体核算范围和方法参见上市公司定期报告。 |
| cash_from_borrowing | 取得借款收到的现金(元) | 反映企业举借各种短期、长期借款而收到的现金。 |
| cash_from_bonds_issue | 发行债券收到的现金(元) | 反映商业银行本期发行债券收到的本金。 |
| other_finance_act_cash | 收到其他与筹资活动有关的现金(元) | 反映企业除上述项目外,收到或支付的其他与筹资活动有关的现金流入或流出,包括以发行股票、债券等方式筹集资金而由企业直接支付的审计和咨询等费用、为购建固定资产而发生的借款利息资本化部分、融资租入固定资产所支付的租赁费、以分期付款方式购建固定资产以后各期支付的现金等。 |
| subtotal_finance_cash_inflow | 筹资活动现金流入小计(元) | 吸收投资收到的现金+取得借款收到的现金+收到其他与筹资活动有关的现金+发行债券收到的现金。 |
| borrowing_repayment | 偿还债务支付的现金(元) | 反映企业以现金偿还债务的本金。 |
| dividend_interest_payment | 分配股利、利润或偿付利息支付的现金(元) | 反映企业实际支付的现金股利、支付给其他投资单位的利润或用现金支付的借款利息、债券利息。 |
| proceeds_from_sub_to_mino_s | 子公司支付给少数股东的股利、利润(元) | 一般企业现金流量表科目。 |
| other_finance_act_payment | 支付其他与筹资活动有关的现金(元) | 包括:筹资费用所支付的现金,融资租赁所支付的现金,减少注册资本所支付的现金(收购本公司股票、退还联营单位的联营投资等)企业以分期付款方式构建固定资产除首期付款支付的现金以外的其他各期所支付的现金。 |
| subtotal_finance_cash_outflow | 筹资活动现金流出小计(元) | 现金流量表科目。 |
| net_finance_cash_flow | 筹资活动产生的现金流量净额(元) | 现金流量表科目。 |
| exchange_rate_change_effect | 汇率变动对现金及现金等价物的影响 | 指企业外币现金流量及境外子公司的现金流量折算成记账本位币时,所采用的是现金流量发生日的汇率或即期汇率的近似汇率。 |
| cash_equivalent_increase | 现金及现金等价物净增加额 | 中外币现金净增加额按期末汇率折算的金额。 |
| cash_equivalents_at_beginning | 期初现金及现金等价物余额(元) | 现金流量表科目。 |
| cash_and_equivalents_at_end | 期末现金及现金等价物余额(元) | 现金流量表科目。 |
获取所有公司最近季度的现金流量表
df=get_fundamentals(query(cash_flow))
print(df[:4])
id code day pubDate statDate \
0 30720327 000001.XSHE 2021-03-14 2021-02-02 2020-12-31
1 31251228 000002.XSHE 2021-03-14 2020-10-30 2020-09-30
2 31251444 000004.XSHE 2021-03-14 2020-10-30 2020-09-30
3 31080491 000005.XSHE 2021-03-14 2020-10-29 2020-09-30
goods_sale_and_service_render_cash net_deposit_increase \
0 NaN 1.679780e+11
1 1.241204e+11 NaN
2 2.250687e+07 NaN
3 7.293948e+07 NaN
net_borrowing_from_central_bank net_borrowing_from_finance_co \
0 2.162000e+09 NaN
1 NaN NaN
2 NaN NaN
3 NaN NaN
net_original_insurance_cash ... \
0 NaN ...
1 NaN ...
2 NaN ...
3 NaN ...
borrowing_repayment dividend_interest_payment \
0 1.789500e+11 -1.834000e+09
1 2.968062e+10 1.606759e+10
2 NaN 1.161236e+05
3 1.652172e+07 -5.030181e+06
proceeds_from_sub_to_mino_s other_finance_act_payment \
0 NaN NaN
1 942942016.0 6.971033e+09
2 NaN NaN
3 NaN NaN
subtotal_finance_cash_outflow net_finance_cash_flow \
0 1.818450e+11 3.475700e+10
1 5.668232e+10 -3.631014e+10
2 1.161236e+05 1.427376e+06
3 1.149154e+07 1.550846e+07
exchange_rate_change_effect cash_equivalent_increase \
0 -1.888000e+09 -1.412100e+10
1 -4.846036e+08 -2.098908e+10
2 NaN 4.059006e+07
3 NaN -1.240253e+06
cash_equivalents_at_beginning cash_and_equivalents_at_end
0 2.930710e+11 2.789500e+11
1 1.881395e+11 1.671504e+11
2 8.861202e+07 1.292021e+08
3 3.398542e+07 3.274517e+07
[4 rows x 59 columns]
获取某只股票的现金流量表数据
# 查询'000002.XSHE'的现金流量表数据
q = query(
cash_flow
).filter(
cash_flow.code == '000002.XSHE'
)
# 运行时间2020-10-15
df = get_fundamentals(q,'2020-10-15')
# pubDate公司发布财报的日期,statDate财报统计的季度的最后一天,goods_sale_and_service_render_cash销售商品、提供劳务收到的现金(元)
print(df[['pubDate','statDate','goods_sale_and_service_render_cash']])
#输出
pubDate statDate goods_sale_and_service_render_cash
0 2020-08-28 2020-06-30 1.185840e+11
按季度更新, 统计周期是一季度。可以使用get_fundamentals() 的statDate参数查询年度数据。
表名: income
| 列名 | 列的含义 | 解释 |
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2015-03-31, 2015-06-30 |
| total_operating_revenue | 营业总收入(元) | 具体核算范围和方法参见上市公司定期报告 |
| operating_revenue | 营业收入(元) | 具体核算范围和方法参见上市公司定期报告 |
| interest_income | 利息收入(元) | 利息收入是指纳税人购买各种债券等有价证券的利息,外单位欠款付给的利息以及其他利息收入。包括:购买各种债券等有价证券的利息,如购买国库券,重点企业建设债券、国家保值公债以及政府部门和企业发放的各类有价证券;企业各项存款所取得的利息外单位欠本企业款而取得的利息;其他利息收入等。 |
| premiums_earned | 已赚保费(元) | 已赚保费是指保险起期已经预先缴付的保险费,过去的保险期间的保费就成为已赚的保费。 |
| commission_income | 手续费及佣金收入(元) | 手续费及佣金收入是指公司为客户办理各种业务收取的手续费及佣金收入,包括办理咨询业务、担保业务、代保管等代理业务以及办理投资业务等取得的手续费及佣金,如业务代办手续费收入、咨询服务收入、担保收入、资产管理收入、代保管收入,代理买卖证券、代理承销证券、代理兑付证券、代理保管证券等代理业务以及其他相关服务实现的手续费及佣金收入等。 |
| total_operating_cost | 营业总成本(元) | 营业总成本=主营业务成本+其他业务成本+利息支出+手续费及佣金支出+退保金+赔付支出净额+提取保险合同准备金净额+保单红利支出+分保费用+营业税金及附加+销售费用+管理费用+财务费用+资产减值损失+其他 |
| operating_cost | 营业成本(元) | 营业成本,也称运营成本。是指企业所销售商品或者提供劳务的成本。营业成本应当与所销售商品或者所提供劳务而取得的收入进行配比。 |
| interest_expense | 利息支出(元) | 利息支出是指临时借款的利息支出。在以收付实现制作为记帐基础的前提条件下,所谓支出应以实际支付为标准,即资金流出,标志着现金、银行存款的减少。就利息支出而言、给个人帐户计息,其资金并没有流出,现金、银行存款并没有减少,因此,给个人计息不应作为利息支出列支。 |
| commission_expense | 手续费及佣金支出(元) | 手续费及佣金支出,本科目主要核算企业(金融)发生的与其经营活动相关的各项手续费、佣金等支出。 |
| refunded_premiums | 退保金(元) | 退保金是指公司经营的长期人身保险业务中,投保人办理退保时,按保险条款规定支付给投保人的金额。 |
| net_pay_insurance_claims | 赔付支出净额(元) | 赔付支出主要指核算企业(保险)支付的原保险合同赔付款项和再保险合同赔付款项。企业(保险)可以单独设置“赔款支出”、“满期给付”、“年金给付”、“死伤医疗给付”、“分保赔付支出”等科目。可按保险合同和险种进行明细核算。 |
| withdraw_insurance_contract_reserve | 提取保险合同准备金净额(元) | 保险准备金是指保险人为保证其如约履行保险赔偿或给付义务,根据政府有关法律规定或业务特定需要,从保费收入或盈余中提取的与其所承担的保险责任相对应的一定数量的基金。 |
| policy_dividend_payout | 保单红利支出(元) | 保单红利支出是根据原保险合同的约定,按照分红保险产品的红利分配方法及有关精算结果而估算,支付给保单持有人的红利。 |
| reinsurance_cost | 分保费用(元) | 分保费用,是办理初保业务的保险公司向其他保险公司分保保险业务,在向对方支付分保费的同时,向对方收取的一定费用,用以弥补初保人的费用支出。 |
| operating_tax_surcharges | 营业税金及附加(元) | 反映企业经营主要业务应负担的营业税、消费税、城市维护建设税、资源税和教育费附加等。填报此项指标时应注意,实行新税制后,会计上规定应交增值税不再计入“主营业务税金及附加”项,无论是一般纳税企业还是小规模纳税企业均应在“应交增值税明细表”中单独反映。根据企业会计“利润表”中对应指标的本年累计数填列。 |
| sale_expense | 销售费用(元) | 销售费用是指企业在销售产品、自制半成品和提供劳务等过程中发生的各项费用。包括由企业负担的包装费、运输费、广告费、装卸费、保险费、委托代销手续费、展览费、租赁费(不含融资租赁费)和销售服务费、销售部门人员工资、职工福利费、差旅费、折旧费、修理费、物料消耗、低值易耗品摊销以及其他经费等。与销售有关的差旅费应计入销售费用。 |
| administration_expense | 管理费用(元) | 管理费用是指 企业行政管理部门为组织和管理生产经营活动而发生的各项费用。管理费用属于期间费用,在发生的当期就计入当期的损失或是利益。 |
| financial_expense | 财务费用(元) | 财务费用指企业在生产经营过程中为筹集资金而发生的筹资费用。包括企业生产经营期间发生的利息支出(减利息收入)、汇兑损益(有的企业如商品流通企业、保险企业进行单独核算,不包括在财务费用)、金融机构手续费,企业发生的现金折扣或收到的现金折扣等。但在企业筹建期间发生的利息支出,应计入开办费;为购建或生产满足资本化条件的资产发生的应予以资本化的借款费用,在“在建工程”、“制造费用”等账户核算。 |
| asset_impairment_loss | 资产减值损失(元) | 资产减值损失是指因资产的账面价值高于其可收回金额而造成的损失。 新会计准则规定资产减值范围主要是固定资产、无形资产以及除特别规定外的其他资产减值的处理。《资产减值》准则改变了固定资产、无形资产等的减值准备计提后可以转回的做法,资产减值损失一经确认,在以后会期间不得转回,消除了一些企业通过计提秘密准备来调节利润的可能,限制了利润的人为波动。资产减值损失在会计核算中属于损益类科目。 |
| fair_value_variable_income | 公允价值变动收益(元) | “公允价值变动收益” 这个科目,是“以公允价值计量且其变动计入当期损益的交易性金融资产”的一个科目。在资产负债表日,“交易性金融资产”的公允价值高于其账面价值的差额,应借记“交易性金融资产-公允价值变动”,贷记“公允价值变动损益”,公允价值低于其账面价值的差额,则做相反的分录。 |
| investment_income | 投资收益(元) | 投资收益是对外投资所取得的利润、股利和债券利息等收入减去投资损失后的净收益。严格地讲,所谓投资收益是指以项目为边界的货币收入等。 |
| invest_income_associates | 对联营企业和合营企业的投资收益(元) | 持有的对联营企业及合营企业的投资,按照《企业会计准则第2号——长期股权投资》的规定,应当采用权益法核算,在按持股比例等计算确认应享有或应分担被投资单位的净损益时,应当考虑以下因素:投资企业与联营企业及合营企业之间发生的内部交易损益按照持股比例计算归属于投资企业的部分,应当予以抵销,在此基础上确认投资损益。<br>投资企业与被投资单位发生的内部交易损失,按照《企业会计准则第8号———资产减值》等规定属于资产减值损失的,应当全额确认。<br>投资企业对于纳入其合并范围的子公司与其联营企业及合营企业之间发生的内部交易损益,也应当按照上述原则进行抵销,在此基础上确认投资损益。<br>投资企业对于首次执行日之前已经持有的对联营企业及合营企业的长期股权投资,如存在与该投资相关的股权投资借方差额,还应扣除按原剩余期限直线摊销的股权投资借方差额,确认投资损益。<br>投资企业在被投资单位宣告发放现金股利或利润时,按照规定计算应分得的部分确认应收股利,同时冲减长期股权投资的账面价值。 |
| exchange_income | 汇兑收益(元) | 汇兑收益,是指用记账本位币,按照不同的汇率报告相同数量的外币而产生的差额。简单地说,就是公司的外币货币性项目和非货币性项目因汇率变动,在折算成本币时造成损益。而这部分汇兑差额作为财务费用,计入当期损益,从而影响公司利润。 |
| operating_profit | 营业利润(元) | 营业利润是企业最基本经营活动的成果,也是企业一定时期获得利润中最主要、最稳定的来源。2006年财政部颁布的新企业会计准则-30号财务报表列报中已对营业利润进行了调整,将投资收益调入营业利润,同时取消了主营业务利润和其他业务利润的提法,补贴收入被并入营业外收入,营业利润减营业外收支调整即得到利润总额。 |
| non_operating_revenue | 营业外收入(元) | 营业外收入是指企业确认与企业生产经营活动没有直接关系的各种收入。 |
| non_operating_expense | 营业外支出(元) | 营业外支出是企业发生的与其日常活动无直接关系的各项损失,主要包括非流动资产处置损失、公益性捐赠支出、盘亏损失、非常损失、罚款支出等。 |
| disposal_loss_non_current_liability | 非流动资产处置净损失(元) | “非流动资产处置损失”属于损益类的科目,在编制利润表时这些科目如果有本期发生额,要填在利润表中。“非流动资产处置损失”是营业外支出的明细科目,在损益表中计入“营业外支出”,“营业外支出”下方会单独列示“非流动资产处置损失”,但是包括在“营业外支出”项目中。 |
| total_profit | 利润总额(元) | 利润总额指企业在生产经营过程中各种收入扣除各种耗费后的盈余,反映企业在报告期内实现的盈亏总额。 |
| income_tax_expense | 所得税费用(元) | 所得税费用是指企业经营利润应交纳的所得税。“所得税费用”,核算企业负担的所得税,是损益类科目;这一般不等于当期应交所得税,因为可能存在“暂时性差异”。如果只有永久性差异,则等于当期应交所得税。 |
| net_profit | 净利润(元) | 净利润(收益)是指在利润总额中按规定交纳了所得税后公司的利润留成,一般也称为税后利润或净利润。净利润的计算公式为:净利润=利润总额-所得税费用.净利润是一个企业经营的最终成果,净利润多,企业的经营效益就好;净利润少,企业的经营效益就差,它是衡量一个企业经营效益的主要指标。 |
| np_parent_company_owners | 归属于母公司股东的净利润(元) | 准确来讲应称之为“归属于上市公司股东的净利润”,这是因为净利润都归属于股东,只是在合并报表中的净利润有一部分是归属于子公司的其它股东的,这些子公司的其它股东也依法按比例享有子公司的净利润。 |
| minority_profit | 少数股东损益(元) | 少数股东损益是一个流量概念,是指公司合并报表的子公司其它非控股股东享有的损益,需要在利润表中予以扣除。利润表的“净利润”项下可以分“归属于母公司所有者的净利润”和“少数股东损益”。其对应的存量概念是“少数股东权益”。 |
| basic_eps | 基本每股收益(元) | 理论算法:归属于普通股股东的当期净利润/(当期实际发行在外的普通股加权平均数=∑(发行在外普通股股数×发行在外月份数)/12) |
| diluted_eps | 稀释每股收益(元) | 理论算法:归属于普通股股东的当期净利润(扣除当期已确认为费用的稀释性潜在普通股的利息、稀释性潜在普通股转换时将产生的收益或费用、相关所得税的影响)/假设稀释性潜在普通股于当期期初(或发行日)已经全部转换为普通股,于此计算的普通股股数的加权平均数。 |
| other_composite_income | 其他综合收益(元) | 其他综合收益是指企业根据企业会计准则规定未在损益中确认的各项利得和损失扣除所得税影响后的净额。企业在计算利润表中的其他综合收益时,应当扣除所得税影响;在计算合并利润表中的其他综合收益时,除了扣除所得税影响以外,还需要分别计算归属于母公司所有者的其他综合收益和归属于少数股东的其他综合收益。 |
| total_composite_income | 综合收益总额(元) | 综合收益总额项目,反映企业净利润与其他综合收益的合计金额。综合收益,包括其他综合收益和综合收益总额。其中,其他综合收益反映企业根据企业会计准则规定未在损益中确认的各项利得和损失扣除所得税影响后的净额;综合收益总额是企业净利润与其他综合收益的合计金额。 |
| ci_parent_company_owners | 归属于母公司所有者的综合收益总额(元) | 综合收益是指除所有者的出资额和各种为第三方或客户代收的款项以外的各种收入。根据美国财务会计准则委员会(FASB)1980年在第3号财务会计概念公告(SFAC3)(企业财务报表的要素)(后为1985年发布的SFAC6所取代)的解释,综合收益是指“一个主体在某一期间与非业主方面进行交易或发生其他事项和情况所引起的权益(净资产)变动。它包括这一期间内除业主投资和派给业主款外,一切权益上的变动。” |
| ci_minority_owners | 归属于少数股东的综合收益总额(元) | 综合收益是指除所有者的出资额和各种为第三方或客户代收的款项以外的各种收入。根据美国财务会计准则委员会(FASB)1980年在第3号财务会计概念公告(SFAC3)(企业财务报表的要素)(后为1985年发布的SFAC6所取代)的解释,综合收益是指“一个主体在某一期间与非业主方面进行交易或发生其他事项和情况所引起的权益(净资产)变动。它包括这一期间内除业主投资和派给业主款外,一切权益上的变动。” |
获取所有公司最近季度的利润表
df=get_fundamentals(query(income))
print(df[:4])
id code day pubDate statDate \
0 30660113 000001.XSHE 2021-03-14 2021-02-02 2020-12-31
1 31192442 000002.XSHE 2021-03-14 2020-10-30 2020-09-30
2 31366704 000004.XSHE 2021-03-14 2020-10-30 2020-09-30
3 31021334 000005.XSHE 2021-03-14 2020-10-29 2020-09-30
total_operating_revenue operating_revenue interest_income \
0 3.697800e+10 3.697800e+10 4.640600e+10
1 9.514196e+10 9.514196e+10 NaN
2 9.349824e+07 9.349824e+07 NaN
3 8.484838e+07 8.484838e+07 NaN
premiums_earned commission_income ... income_tax_expense \
0 NaN 1.345300e+10 ... 1.398000e+09
1 NaN NaN ... 3.945203e+09
2 NaN NaN ... 4.272845e+06
3 NaN NaN ... 2.525845e+04
net_profit np_parent_company_owners minority_profit basic_eps \
0 6.530000e+09 6.530000e+09 NaN 0.2900
1 1.144235e+10 7.355308e+09 4.087041e+09 0.6330
2 5.275023e+07 5.486628e+07 -2.116048e+06 0.3324
3 5.743845e+06 4.557176e+06 1.186669e+06 0.0043
diluted_eps other_composite_income total_composite_income \
0 0.2900 -350000000.0 6.180000e+09
1 0.6330 174751840.0 1.161710e+10
2 0.3324 NaN 5.275023e+07
3 0.0043 NaN 5.743845e+06
ci_parent_company_owners ci_minority_owners
0 NaN NaN
1 7.553908e+09 4.063192e+09
2 5.486628e+07 -2.116048e+06
3 4.557176e+06 1.186669e+06
[4 rows x 43 columns]
获取某只股票的利润表数据
# 查询'000002.XSHE'的利润表数据
q = query(
income
).filter(
income.code == '000002.XSHE'
)
# 运行时间2020-10-15
df = get_fundamentals(q,'2020-10-15')
# pubDate公司发布财报的日期,statDate财报统计的季度的最后一天,total_operating_revenue 营业总收入
df[['pubDate','statDate','total_operating_revenue']]
#输出
pubDate statDate total_operating_revenue
0 2020-08-28 2020-06-30 9.857516e+10
按年度更新,统计周期是一年度。 通过get_fundamentals(query_object,statDate=None) statDate传入年查询。当传入 date 参数 或 statDate 传入季度时返回空。
注意: (详细内容可看get_fundamentals接口)
表名: bank_indicator
| 列名 | 列的含义 | 解释 |
|---|---|---|
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2016-12-31 |
| total_loan | 贷款总额 | 银行发放的贷款总额 |
| total_deposit | 存款总额 | 银行的存款总额 |
| interest_earning_assets | 生息资产 | 生息资产是指贷款、投资等业务形式上的资产,能为银行的经营带来收入 |
| non_interest_earning_assets | 非生息资产 | 非生息资产 |
| interest_earning_assets_yield | 生息资产收益率 | 生息资产收益率 |
| interest_bearing_liabilities | 计息负债 | 计息负债指银行负债当中需要支付利息的债务 |
| non_interest_bearing_liabilities | 非计息负债 | 非计息负债 |
| interest_bearing_liabilities_interest_rate | 计息负债成本率 | 计息负债成本率 |
| non_interest_income | 非利息收入 | 非利息收入 |
| non_interest_income_ratio | 非利息收入占比 | 非利息收入占比为非利息收入占全部收入的比例 |
| net_interest_margin | 净息差 | 净息差指的是银行净利息收入和银行全部生息资产的比值 |
| net_profit_margin | 净利差 | 净利差是指平均生息资产收益率与平均计息负债成本率之差 |
| core_level_capital | 核心一级资本(2013) | 核心一级资本 |
| net_core_level_capital | 核心一级资本净额(2013) | 核心一级资本净额 |
| core_level_capital_adequacy_ratio | 核心一级资本充足率(2013) | 核心一级资本充足率 |
| net_level_1_capital | 一级资本净额(2013) | 一级资本净额 |
| level_1_capital_adequacy_ratio | 一级资本充足率(2013) | 一级资本充足率 |
| net_capital | 资本净额(2013) | 资本净额为核心资本加上附属资本减去扣减项 |
| capital_adequacy_ratio | 资本充足率(2013) | 资本充足率是一个银行的资产对其风险的比率 |
| weighted_risky_asset | 风险加权资产合计(2013) | 风险加权资产合计 |
| deposit_loan_ratio | 存贷款比例 | 存贷款比例是指将银行的贷款总额与存款总额进行对比 |
| short_term_asset_liquidity_ratio_CNY | 短期资产流动性比例(人民币) | 人民币的短期资产流动性比例 |
| short_term_asset_liquidity_ratio_FC | 短期资产流动性比例(外币) | 外币的短期资产流动性比例 |
| Nonperforming_loan_rate | 不良贷款率 | 金融机构不良贷款占总贷款余额的比重 |
| single_largest_customer_loan_ratio | 单一最大客户贷款比例 | 单一最大客户贷款额占全部贷款余额的比例 |
| top_ten_customer_loan_ratio | 最大十家客户贷款比例 | 最大十家客户贷款额占全部贷款余额的比例 |
| bad_debts_reserve | 贷款呆账准备金 | 贷款呆账准备金 |
| non_performing_loan_provision_coverage | 不良贷款拨备覆盖率 | 不良贷款拨备覆盖率是衡量商业银行贷款损失准备金计提是否充足的一个重要指标。该项指标从宏观上反映银行贷款的风险程度及社会经济环境、诚信等方面的情况。不良贷款拨备覆盖率=贷款损失准备/(次级类资产+可疑类资产+损失类资产)*100% |
| cost_to_income_ratio | 成本收入比 | 成本收入比为业务及管理费占营业收入的比例。成本收入比=业务及管理费/营业收入 |
| former_core_capital | 核心资本 (旧) | 核心资本净额为核心资本减去核心资本扣减项。 |
| former_net_core_capital | 核心资本净额(旧) | |
| former_net_core_capital_adequacy_ratio | 核心资本充足率 (旧) | 核心资本充足率是指核心资本与加权风险资产总额的比率 |
| former_net_capital | 资本净额 (旧) | 资本净额为核心资本加上附属资本减去扣减项 |
| former_capital_adequacy_ratio | 资本充足率 (旧) | 资本充足率是一个银行的资产对其风险的比率 |
| former_weighted_risky_asset | 加权风险资产净额(旧) | 加权风险资产净额是指对银行的资产加以分类,根据不同类别资产的风险性质确定不同的风险系数,以这种风险系数为权重求得的资产净额。 |
| 银行贷款的五级分类指标 | ||
| normal_amount | 正常-金额 | 正常类贷款余额 |
| normal_amount_ratio | 正常金额占比 | 正常类贷款占贷款总额的比例。正常金额占比=正常类贷款/(正常类贷款+关注类贷款+次级类贷款+可疑类贷款+损失类贷款)*100% |
| concerned_amount | 关注-金额 | 关注类贷款余额 |
| concerned_amount_ratio | 关注金额占比 | 关注类贷款占贷款总额的比例。关注金额占比=关注类贷款/(正常类贷款+关注类贷款+次级类贷款+可疑类贷款+损失类贷款)*100% |
| secondary_amount | 次级-金额 | 次级类贷款余额 |
| secondary_amount_ratio | 次级金额占比 | 次级类贷款占贷款总额的比例。次级金额占比=次级类贷款/(正常类贷款+关注类贷款+次级类贷款+可疑类贷款+损失类贷款)*100% |
| suspicious_amount | 可疑-金额 | 可疑类贷款余额 |
| suspicious_amount_ratio | 可疑金额占比 | 可疑类贷款占贷款总额的比例。可疑金额占比=可疑类贷款/(正常类贷款+关注类贷款+次级类贷款+可疑类贷款+损失类贷款)*100% |
| loss_amount | 损失-金额 | 损失类贷款余额 |
| loss_amount_ratio | 损失金额占比 | 损失类贷款占贷款总额的比例。损失金额占比=损失类贷款/(正常类贷款+关注类贷款+次级类贷款+可疑类贷款+损失类贷款)*100% |
| 平均贷款利率 | ||
| short_term_loan_average_balance | 短期贷款-平均余额 | 短期贷款的平均余额 |
| short_term_loan_annualized_average_interest_rate | 短期贷款-年平均利率 | 短期贷款的年平均利率 |
| mid_term_loan_annualized_average_balance | 中长期贷款-平均余额 | 中长期贷款的平均余额 |
| mid_term_loan_annualized_average_interest_rate | 中长期贷款-年平均利率 | 中长期贷款的年平均利率 |
| enterprise_deposits_average_balance | 企业存款-平均余额 | 企业存款的平均余额 |
| enterprise_deposits_average_interest_rate | 企业存款-年平均利率 | 企业存款的年平均利率 |
| savings_deposit_average_balance | 储蓄存款-平均余额 | 储蓄存款的平均余额 |
| savings_deposit_average_interest_rate | 储蓄存款-年平均利率 | 储蓄存款的年平均利率 |
# 获取2019年银行业专项指标
df=get_fundamentals(query(bank_indicator),statDate=2019)[:5]
# pubDate公司发布财报的日期,statDate财报统计的季度的最后一天,total_loan贷款总额
print(df[['code','pubDate','statDate','total_loan']])
code pubDate statDate total_loan
0 000001.XSHE 2020-02-14 2019-12-31 2.328909e+12
1 600036.XSHG 2020-03-21 2019-12-31 4.500199e+12
2 002948.XSHE 2020-03-21 2019-12-31 1.735679e+11
3 601860.XSHG 2020-03-25 2019-12-31 1.019562e+11
4 601658.XSHG 2020-03-26 2019-12-31 4.974186e+12
按年度更新,统计周期是一年度。通过get_fundamentals(query_object,statDate=None) statDate传入年查询。当传入 date 参数 或 statDate 传入季度时返回空。
表名: security_indicator
| 列名 | 列的含义 | 解释 |
|---|---|---|
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2015-03-31, 2015-06-30 |
| net_capital | 净资本 | 净资本是衡量证券公司资本充足和资产流动性状况的一个综合性监管指标,是证券公司净资产中流动性较高、可快速变现的部分,它表明证券公司可随时用于变现以满足支付需要的资金数额。为公布的母公司净资本及相关风险控制指标之一。 |
| net_assets | 净资产 | 为公布的母公司净资本及相关风险控制指标之一。 |
| net_capital_to_reserve | 净资本/各项风险准备之和 | 为公布的母公司净资本及相关风险控制指标之一。 |
| net_capital_to_net_asset | 净资本/净资产 | 净资本/净资产 |
| net_capital_to_debt | 净资本/负债 | 净资本/负债 |
| net_asset_to_debt | 净资产/负债 | 净资产/负债 |
| net_capital_to_sales_department_number | 净资本/营业部家数 | 净资本/营业部家数 |
| own_stock_to_net_capital | 自营股票规模/净资本 | 自营股票规模/净资本 |
| own_security_to_net_capital | 证券自营业务规模/净资本 | 证券自营业务规模/净资本 |
| operational_risk_reserve | 营运风险堆备 | 营运风险堆备 |
| broker_risk_reserve | 经纪业务风险堆备 | 经纪业务风险堆备 |
| own_security_risk_reserve | 证券自营业务风险准备 | 证券自营业务风险准备 |
| security_underwriting_reserve | 证券承消业务风险准备 | 证券承消业务风险准备 |
| asset_management_reserve | 证券资产菅理业务风险准备 | 证券资产菅理业务风险准备 |
| own_equity_derivatives_to_net_capital | 自营权益类证券及证券衍生品/净资本 | 自营权益类证券及证券衍生品/净资本 |
| own_fixed_income_to_net_capital | 自营固定收益类证券/净资本 | 自营固定收益类证券/净资本 |
| margin_trading_reserve | 融资融券业务风险资本准备 | 融资融券业务风险资本准备 |
| branch_risk_reserve | 分支机构风险资本堆备 | 分支机构风险资本堆备 |
# 获取券商业专项指标
df=get_fundamentals(query(security_indicator),statDate=2019)[:5]
# pubDate公司发布财报的日期,statDate财报统计的季度的最后一天,net_capital净资本
print(df[['code','pubDate','statDate','net_capital']])
code pubDate statDate net_capital
0 000987.XSHE 2020-02-29 2019-12-31 8.279037e+09
1 601878.XSHG 2020-03-19 2019-12-31 1.251134e+10
2 600030.XSHG 2020-03-20 2019-12-31 9.490422e+10
3 002736.XSHE 2020-03-20 2019-12-31 4.005491e+10
4 601211.XSHG 2020-03-25 2019-12-31 8.597149e+10
按年度更新,统计周期是一年度。 通过get_fundamentals(query_object,statDate=None) statDate传入年查询。当传入 date 参数 或 statDate 传入季度时返回空。
表名: insurance_indicator
| 列名 | 列的含义 | 解释 |
|---|---|---|
| code | 股票代码 | 带后缀.XSHE/.XSHG |
| pubDate | 日期 | 公司发布财报日期 |
| statDate | 日期 | 财报统计的季度的最后一天, 比如2016-12-31 |
| investment_assets | 投资资产 | 投资资产 |
| total_investment_rate_of_return | 总投资收益率 | 总投资收益率 |
| net_investment_rate_of_return | 净投资收益率 | 净投资收益率 |
| earned_premium | 己赚保费 | 己赚保费 |
| earned_premium_growth_rate | 己赚保费增长率 | 己赚保费增长率 |
| payoff_cost | 赔付支出 | 赔付支出 |
| compensation_rate | 退保率(寿险业务) | 寿险业务退保率 |
| not_expired_duty_reserve | 未到期责任准备金(产险业务) | 产险业务未到期责任准备金 |
| outstanding_claims_reserve | 未决赔款准备金(产险业务) | 产险业务未决赔款准备金 |
| comprehensive_cost_ratio | 综台成本率(产险业务) | 产险业务综台成本率 |
| comprehensive_compensation_rate | 综台赔付率(产险业务) | 产险业务综台赔付率 |
| solvency_adequacy_ratio | 偿付能力充足率 | 偿付能力充足率 |
| actual_capital | 实际资本 | 实际资本 |
| minimum_capital | 最低资本 | 最低资本 |
# 获取保险业专项指标
df=get_fundamentals(query(insurance_indicator),statDate=2019).tail(5)
# pubDate公司发布财报的日期,statDate财报统计的季度的最后一天,net_capital净资本
df[['code','pubDate','statDate','total_investment_rate_of_return']]
code pubDate statDate total_investment_rate_of_return
1 601601.XSHG 2020-03-23 2019-12-31 5.40
2 601628.XSHG 2020-03-26 2019-12-31 5.23
3 601336.XSHG 2020-03-26 2019-12-31 4.90
4 000627.XSHE 2020-04-15 2019-12-31 NaN
5 600291.XSHG 2020-04-30 2019-12-31 -2.18
from jqdatasdk import finance
finance.run_query(query(finance.STK_INCOME_STATEMENT).filter(finance.STK_INCOME_STATEMENT.code==code).limit(n))
获取上市公司定期公告中公布的合并利润表数据(2007版)
参数:
query(finance.STK_INCOME_STATEMENT):表示从finance.STK_INCOME_STATEMENT这张表中查询上市公司定期公告中公布的合并利润表信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_INCOME_STATEMENT:代表上市公司合并利润表,收录了上市公司定期公告中公布的合并利润表数据,表结构和字段信息如下:
filter(finance.STK_INCOME_STATEMENT.code==code):指定筛选条件,通过finance.STK_INCOME_STATEMENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_INCOME_STATEMENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司公布的合并利润表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公告的合并利润表数据,取出合并利润表中本期的营业总收入,归属于母公司的净利润
from jqdatasdk import finance
q=query(finance.STK_INCOME_STATEMENT.company_name,
finance.STK_INCOME_STATEMENT.code,
finance.STK_INCOME_STATEMENT.pub_date,
finance.STK_INCOME_STATEMENT.start_date,
finance.STK_INCOME_STATEMENT.end_date,
finance.STK_INCOME_STATEMENT.total_operating_revenue,
finance.STK_INCOME_STATEMENT.np_parent_company_owners).filter(finance.STK_INCOME_STATEMENT.code=='600519.XSHG',finance.STK_INCOME_STATEMENT.pub_date>='2015-01-01',finance.STK_INCOME_STATEMENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2014-01-01 2014-12-31
1 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2015-01-01 2015-03-31
2 贵州茅台酒股份有限公司 600519.XSHG 2015-08-28 2015-01-01 2015-06-30
3 贵州茅台酒股份有限公司 600519.XSHG 2015-10-23 2015-01-01 2015-09-30
4 贵州茅台酒股份有限公司 600519.XSHG 2016-03-24 2015-01-01 2015-12-31
5 贵州茅台酒股份有限公司 600519.XSHG 2016-04-21 2016-01-01 2016-03-31
6 贵州茅台酒股份有限公司 600519.XSHG 2016-08-27 2016-01-01 2016-06-30
7 贵州茅台酒股份有限公司 600519.XSHG 2016-10-29 2016-01-01 2016-09-30
total_operating_revenue np_parent_company_owners
0 3.221721e+10 1.534980e+10
1 8.760368e+09 4.364902e+09
2 1.618565e+10 7.888232e+09
3 2.373432e+10 1.142464e+10
4 3.344686e+10 1.550309e+10
5 1.025087e+10 4.889272e+09
6 1.873762e+10 8.802637e+09
7 2.753274e+10 1.246558e+10
from jqdatasdk import finance
finance.run_query(query(finance.STK_INCOME_STATEMENT_PARENT).filter(finance.STK_INCOME_STATEMENT_PARENT.code==code).limit(n))
获取上市公司母公司利润的信息(2007版)
参数:
query(finance.STK_INCOME_STATEMENT_PARENT):表示从finance.STK_INCOME_STATEMENT_PARENT这张表中查询上市公司母公司利润表的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_INCOME_STATEMENT_PARENT:代表上市公司母公司利润表,收录了上市公司母公司的利润信息,表结构和字段信息如下:
filter(finance.STK_INCOME_STATEMENT_PARENT.code==code):指定筛选条件,通过finance.STK_INCOME_STATEMENT_PARENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_INCOME_STATEMENT_PARENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司公布的母公司利润表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公告的母公司利润表数据,取出母公司利润表中本期的营业总收入,归属于母公司所有者的净利润
from jqdatasdk import finance
q=query(finance.STK_INCOME_STATEMENT_PARENT.company_name,
finance.STK_INCOME_STATEMENT_PARENT.code,
finance.STK_INCOME_STATEMENT_PARENT.pub_date,
finance.STK_INCOME_STATEMENT_PARENT.start_date,
finance.STK_INCOME_STATEMENT_PARENT.end_date,
finance.STK_INCOME_STATEMENT_PARENT.total_operating_revenue,
finance.STK_INCOME_STATEMENT_PARENT.np_parent_company_owners).filter(finance.STK_INCOME_STATEMENT_PARENT.code=='600519.XSHG',finance.STK_INCOME_STATEMENT_PARENT.pub_date>='2015-01-01',finance.STK_INCOME_STATEMENT_PARENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2014-01-01 2014-12-31
1 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2015-01-01 2015-03-31
2 贵州茅台酒股份有限公司 600519.XSHG 2015-08-28 2015-01-01 2015-06-30
3 贵州茅台酒股份有限公司 600519.XSHG 2015-10-23 2015-01-01 2015-09-30
4 贵州茅台酒股份有限公司 600519.XSHG 2016-03-24 2015-01-01 2015-12-31
5 贵州茅台酒股份有限公司 600519.XSHG 2016-04-21 2016-01-01 2016-03-31
6 贵州茅台酒股份有限公司 600519.XSHG 2016-08-27 2016-01-01 2016-06-30
7 贵州茅台酒股份有限公司 600519.XSHG 2016-10-29 2016-01-01 2016-09-30
total_operating_revenue np_parent_company_owners
0 6.878165e+09 1.028603e+10
1 1.886084e+09 -5.773331e+07
2 3.571872e+09 -1.556184e+08
3 5.411957e+09 9.476542e+09
4 8.843334e+09 9.611173e+09
5 1.507658e+09 8.850591e+09
6 3.608903e+09 8.733012e+09
7 5.430884e+09 8.002128e+09
字段信息展示
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| a_code | A股代码 | varchar(12) | |
| b_code | B股代码 | varchar(12) | |
| h_code | H股代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| start_date | 开始日期 | date | |
| end_date | 截止日期 | date | |
| report_date | 报告期 | date | |
| report_type | 报告期类型 | int | 0:本期,1:上期 |
| source_id | 报表来源编码 | int | 如下 报表来源编码 |
| source | 报表来源 | varchar(60) | 选择时程序自动填入 |
| total_operating_revenue | 营业总收入 | decimal(20,4) | |
| operating_revenue | 营业收入 | decimal(20,4) | |
| total_operating_cost | 营业总成本 | decimal(20,4) | |
| operating_cost | 营业成本 | decimal(20,4) | |
| operating_tax_surcharges | 营业税金及附加 | decimal(20,4) | |
| sale_expense | 销售费用 | decimal(20,4) | |
| administration_expense | 管理费用 | decimal(20,4) | |
| exploration_expense | 堪探费用 | decimal(20,4) | 勘探费用用于核算企业(石油天然气开采)核算的油气勘探过程中发生的地质调查、物理化学勘探各项支出和非成功探井等支出。 |
| financial_expense | 财务费用 | decimal(20,4) | |
| asset_impairment_loss | 资产减值损失 | decimal(20,4) | |
| fair_value_variable_income | 公允价值变动净收益 | decimal(20,4) | |
| investment_income | 投资收益 | decimal(20,4) | |
| invest_income_associates | 对联营企业和合营企业的投资收益 | decimal(20,4) | |
| exchange_income | 汇兑收益 | decimal(20,4) | |
| other_items_influenced_income | 影响营业利润的其他科目 | decimal(20,4) | |
| operating_profit | 营业利润 | decimal(20,4) | |
| subsidy_income | 补贴收入 | decimal(20,4) | |
| non_operating_revenue | 营业外收入 | decimal(20,4) | |
| non_operating_expense | 营业外支出 | decimal(20,4) | |
| disposal_loss_non_current_liability | 非流动资产处置净损失 | decimal(20,4) | |
| other_items_influenced_profit | 影响利润总额的其他科目 | decimal(20,4) | |
| total_profit | 利润总额 | decimal(20,4) | |
| income_tax | 所得税 | decimal(20,4) | |
| other_items_influenced_net_profit | 影响净利润的其他科目 | decimal(20,4) | |
| net_profit | 净利润 | decimal(20,4) | |
| np_parent_company_owners | 归属于母公司所有者的净利润 | decimal(20,4) | |
| minority_profit | 少数股东损益 | decimal(20,4) | |
| eps | 每股收益 | decimal(20,4) | |
| basic_eps | 基本每股收益 | decimal(20,4) | |
| diluted_eps | 稀释每股收益 | decimal(20,4) | |
| other_composite_income | 其他综合收益 | decimal(20,4) | |
| total_composite_income | 综合收益总额 | decimal(20,4) | |
| ci_parent_company_owners | 归属于母公司所有者的综合收益总额 | decimal(20,4) | |
| ci_minority_owners | 归属于少数股东的综合收益总额 | decimal(20,4) | |
| interest_income | 利息收入 | decimal(20,4) | |
| premiums_earned | 已赚保费 | decimal(20,4) | |
| commission_income | 手续费及佣金收入 | decimal(20,4) | |
| interest_expense | 利息支出 | decimal(20,4) | |
| commission_expense | 手续费及佣金支出 | decimal(20,4) | |
| refunded_premiums | 退保金 | decimal(20,4) | |
| net_pay_insurance_claims | 赔付支出净额 | decimal(20,4) | |
| withdraw_insurance_contract_reserve | 提取保险合同准备金净额 | decimal(20,4) | |
| policy_dividend_payout | 保单红利支出 | decimal(20,4) | |
| reinsurance_cost | 分保费用 | decimal(20,4) | |
| non_current_asset_disposed | 非流动资产处置利得 | decimal(20,4) | |
| other_earnings | 其他收益 | decimal(20,4) | |
| asset_deal_income | 资产处置收益 | decimal(20,4) | |
| sust_operate_net_profit | 持续经营净利润 | decimal(20,4) | |
| discon_operate_net_profit | 终止经营净利润 | decimal(20,4) | |
| credit_impairment_loss | 信用减值损失 | decimal(20,4) | |
| net_open_hedge_income | 净敞口套期收益 | decimal(20,4) | |
| interest_cost_fin | 财务费用-利息费用 | decimal(20,4) | |
| interest_income_fin | 财务费用-利息收入 | decimal(20,4) | |
| rd_expenses | 研发费用 | decimal(20,4) |
报表来源编码
| 编码 | 名称 |
|---|---|
| 321001 | 招募说明书 |
| 321002 | 上市公告书 |
| 321003 | 定期报告 |
| 321004 | 预披露公告 |
| 321005 | 换股报告书 |
| 321099 | 其他 |
from jqdatasdk import finance
finance.run_query(query(finance.STK_CASHFLOW_STATEMENT).filter(finance.STK_CASHFLOW_STATEMENT.code==code).limit(n))
获取上市公司定期公告中公布的合并现金流量表数据(2007版)
参数:
query(finance.STK_CASHFLOW_STATEMENT):表示从finance.STK_CASHFLOW_STATEMENT这张表中查询上市公司定期公告中公布的合并现金流量表信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_CASHFLOW_STATEMENT:代表上市公司合并现金流量表,收录了上市公司定期公告中公布的合并现金流量表数据,表结构和字段信息如下:
filter(finance.STK_CASHFLOW_STATEMENT.code==code):指定筛选条件,通过finance.STK_CASHFLOW_STATEMENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_CASHFLOW_STATEMENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司合并现金流量表数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公告的合并现金流量表数据,取出本期的经营活动现金流量净额,投资活动现金流量净额,以及筹资活动现金流量净额
from jqdatasdk import *
q=query(finance.STK_CASHFLOW_STATEMENT.company_name,
finance.STK_CASHFLOW_STATEMENT.code,
finance.STK_CASHFLOW_STATEMENT.pub_date,
finance.STK_CASHFLOW_STATEMENT.start_date,
finance.STK_CASHFLOW_STATEMENT.end_date,
finance.STK_CASHFLOW_STATEMENT.net_operate_cash_flow,
finance.STK_CASHFLOW_STATEMENT.net_invest_cash_flow,
finance.STK_CASHFLOW_STATEMENT.net_finance_cash_flow).filter(finance.STK_CASHFLOW_STATEMENT.code=='600519.XSHG',finance.STK_CASHFLOW_STATEMENT.pub_date>='2015-01-01',finance.STK_CASHFLOW_STATEMENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2014-01-01 2014-12-31
1 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2015-01-01 2015-03-31
2 贵州茅台酒股份有限公司 600519.XSHG 2015-08-28 2015-01-01 2015-06-30
3 贵州茅台酒股份有限公司 600519.XSHG 2015-10-23 2015-01-01 2015-09-30
4 贵州茅台酒股份有限公司 600519.XSHG 2016-03-24 2015-01-01 2015-12-31
5 贵州茅台酒股份有限公司 600519.XSHG 2016-04-21 2016-01-01 2016-03-31
6 贵州茅台酒股份有限公司 600519.XSHG 2016-08-27 2016-01-01 2016-06-30
7 贵州茅台酒股份有限公司 600519.XSHG 2016-10-29 2016-01-01 2016-09-30
net_operate_cash_flow net_invest_cash_flow net_finance_cash_flow
0 1.263252e+10 -4.580160e+09 -5.041427e+09
1 2.111634e+09 -8.540453e+08 -3.464185e+07
2 4.901688e+09 -1.290715e+09 -3.494246e+07
3 1.142339e+10 -1.782995e+09 -5.587555e+09
4 1.743634e+10 -2.048790e+09 -5.588020e+09
5 7.436044e+09 -4.213453e+08 -5.085073e+08
6 1.360396e+10 -5.555078e+08 -3.283074e+09
7 3.253533e+10 -7.734874e+08 -8.284064e+09
from jqdatasdk import finance
finance.run_query(query(finance.STK_CASHFLOW_STATEMENT_PARENT).filter(finance.STK_CASHFLOW_STATEMENT_PARENT.code==code).limit(n))
获取上市公司定期公告中公布的母公司现金流量表(2007版)
参数:
query(finance.STK_CASHFLOW_STATEMENT_PARENT):表示从finance.STK_CASHFLOW_STATEMENT_PARENT这张表中查询上市公司定期公告中公布的母公司现金流量表信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_CASHFLOW_STATEMENT_PARENT:代表上市公司母公司现金流量表,收录了上市公司定期公告中公布的母公司现金流量表数据,表结构和字段信息如下:
filter(finance.STK_CASHFLOW_STATEMENT_PARENT.code==code):指定筛选条件,通过finance.STK_CASHFLOW_STATEMENT_PARENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_CASHFLOW_STATEMENT_PARENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司公布的母公司现金流量表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公告的母公司现金流量表数据,取出本期的经营活动现金流量净额,投资活动现金流量净额,以及筹资活动现金流量净额
from jqdatasdk import *
q=query(finance.STK_CASHFLOW_STATEMENT_PARENT.company_name,
finance.STK_CASHFLOW_STATEMENT_PARENT.code,
finance.STK_CASHFLOW_STATEMENT_PARENT.pub_date,
finance.STK_CASHFLOW_STATEMENT_PARENT.start_date,
finance.STK_CASHFLOW_STATEMENT_PARENT.end_date,
finance.STK_CASHFLOW_STATEMENT_PARENT.net_operate_cash_flow,
finance.STK_CASHFLOW_STATEMENT_PARENT.net_invest_cash_flow,
finance.STK_CASHFLOW_STATEMENT_PARENT.net_finance_cash_flow).filter(finance.STK_CASHFLOW_STATEMENT_PARENT.code=='600519.XSHG',finance.STK_CASHFLOW_STATEMENT_PARENT.pub_date>='2015-01-01',finance.STK_CASHFLOW_STATEMENT_PARENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2014-01-01 2014-12-31
1 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2015-01-01 2015-03-31
2 贵州茅台酒股份有限公司 600519.XSHG 2015-08-28 2015-01-01 2015-06-30
3 贵州茅台酒股份有限公司 600519.XSHG 2015-10-23 2015-01-01 2015-09-30
4 贵州茅台酒股份有限公司 600519.XSHG 2016-03-24 2015-01-01 2015-12-31
5 贵州茅台酒股份有限公司 600519.XSHG 2016-04-21 2016-01-01 2016-03-31
6 贵州茅台酒股份有限公司 600519.XSHG 2016-08-27 2016-01-01 2016-06-30
7 贵州茅台酒股份有限公司 600519.XSHG 2016-10-29 2016-01-01 2016-09-30
net_operate_cash_flow net_invest_cash_flow net_finance_cash_flow
0 -2.713989e+09 6.192758e+09 -4.562999e+09
1 2.082144e+09 -1.135273e+09 2.200000e+07
2 3.259594e+09 -1.568552e+09 2.200000e+07
3 2.284079e+09 8.054632e+08 -5.040068e+09
4 1.975006e+09 7.412721e+09 -5.018068e+09
5 6.073286e+08 8.692869e+07 NaN
6 -7.648020e+08 7.468597e+09 -2.774566e+09
7 -7.797669e+08 8.882256e+09 -7.751997e+09
字段信息展示:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票主证券代码 | varchar(12) | |
| a_code | A股代码 | varchar(12) | |
| b_code | B股代码 | varchar(12) | |
| h_code | H股代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| start_date | 开始日期 | date | |
| end_date | 截止日期 | date | |
| report_date | 报告期 | date | |
| report_type | 报告期类型 | int | 0本期,1上期 |
| source_id | 报表来源编码 | int | 如下报表来源编码 |
| source | 报表来源 | varchar(60) | |
goods_sale_and_service _render_cash |
销售商品、提供劳务收到的现金 | decimal(20,4) | |
| tax_levy_refund | 收到的税费返还 | decimal(20,4) | |
| subtotal_operate_cash_inflow | 经营活动现金流入小计 | decimal(20,4) | |
| goods_and_services_cash_paid | 购买商品、接受劳务支付的现金 | decimal(20,4) | |
| staff_behalf_paid | 支付给职工以及为职工支付的现金 | decimal(20,4) | |
| tax_payments | 支付的各项税费 | decimal(20,4) | |
| subtotal_operate_cash_outflow | 经营活动现金流出小计 | decimal(20,4) | |
| net_operate_cash_flow | 经营活动现金流量净额 | decimal(20,4) | |
| invest_withdrawal_cash | 收回投资收到的现金 | decimal(20,4) | |
| invest_proceeds | 取得投资收益收到的现金 | decimal(20,4) | |
| fix_intan_other_asset_dispo_cash | 处置固定资产、无形资产和其他长期资产收回的现金净额 | decimal(20,4) | |
| net_cash_deal_subcompany | 处置子公司及其他营业单位收到的现金净额 | decimal(20,4) | |
| subtotal_invest_cash_inflow | 投资活动现金流入小计 | decimal(20,4) | |
| fix_intan_other_asset_acqui_cash | 购建固定资产、无形资产和其他长期资产支付的现金 | decimal(20,4) | |
| invest_cash_paid | 投资支付的现金 | decimal(20,4) | |
| impawned_loan_net_increase | 质押贷款净增加额 | decimal(20,4) | |
| net_cash_from_sub_company | 取得子公司及其他营业单位支付的现金净额 | decimal(20,4) | |
| subtotal_invest_cash_outflow | 投资活动现金流出小计 | decimal(20,4) | |
| net_invest_cash_flow | 投资活动现金流量净额 | decimal(20,4) | |
| cash_from_invest | 吸收投资收到的现金 | decimal(20,4) | |
| cash_from_borrowing | 取得借款收到的现金 | decimal(20,4) | |
| cash_from_bonds_issue | 发行债券收到的现金 | decimal(20,4) | |
| subtotal_finance_cash_inflow | 筹资活动现金流入小计 | decimal(20,4) | |
| borrowing_repayment | 偿还债务支付的现金 | decimal(20,4) | |
| dividend_interest_payment | 分配股利、利润或偿付利息支付的现金 | decimal(20,4) | |
| subtotal_finance_cash_outflow | 筹资活动现金流出小计 | decimal(20,4) | |
| net_finance_cash_flow | 筹资活动现金流量净额 | decimal(20,4) | |
| exchange_rate_change_effect | 汇率变动对现金的影响 | decimal(20,4) | |
| other_reason_effect_cash | 其他原因对现金的影响 | decimal(20,4) | |
| cash_equivalent_increase | 现金及现金等价物净增加额 | decimal(20,4) | |
| cash_equivalents_at_beginning | 期初现金及现金等价物余额 | decimal(20,4) | |
| cash_and_equivalents_at_end | 期末现金及现金等价物余额 | decimal(20,4) | |
| net_profit | 净利润 | decimal(20,4) | |
| assets_depreciation_reserves | 资产减值准备 | decimal(20,4) | |
| fixed_assets_depreciation | 固定资产折旧、油气资产折耗、生产性生物资产折旧 | decimal(20,4) | |
| intangible_assets_amortization | 无形资产摊销 | decimal(20,4) | |
| defferred_expense_amortization | 长期待摊费用摊销 | decimal(20,4) | |
| fix_intan_other_asset_dispo_loss | 处置固定资产、无形资产和其他长期资产的损失 | decimal(20,4) | |
| fixed_asset_scrap_loss | 固定资产报废损失 | decimal(20,4) | |
| fair_value_change_loss | 公允价值变动损失 | decimal(20,4) | |
| financial_cost | 财务费用 | decimal(20,4) | |
| invest_loss | 投资损失 | decimal(20,4) | |
| deffered_tax_asset_decrease | 递延所得税资产减少 | decimal(20,4) | |
| deffered_tax_liability_increase | 递延所得税负债增加 | decimal(20,4) | |
| inventory_decrease | 存货的减少 | decimal(20,4) | |
| operate_receivables_decrease | 经营性应收项目的减少 | decimal(20,4) | |
| operate_payable_increase | 经营性应付项目的增加 | decimal(20,4) | |
| others | 其他 | decimal(20,4) | |
| net_operate_cash_flow_indirect | 经营活动现金流量净额_间接法 | decimal(20,4) | |
| debt_to_capital | 债务转为资本 | decimal(20,4) | |
| cbs_expiring_in_one_year | 一年内到期的可转换公司债券 | decimal(20,4) | |
| financial_lease_fixed_assets | 融资租入固定资产 | decimal(20,4) | |
| cash_at_end | 现金的期末余额 | decimal(20,4) | |
| cash_at_beginning | 现金的期初余额 | decimal(20,4) | |
| equivalents_at_end | 现金等价物的期末余额 | decimal(20,4) | |
| equivalents_at_beginning | 现金等价物的期初余额 | decimal(20,4) | |
| other_reason_effect_cash_indirect | 其他原因对现金的影响_间接法 | decimal(20,4) | |
| cash_equivalent_increase_indirect | 现金及现金等价物净增加额_间接法 | decimal(20,4) | |
| net_deposit_increase | 客户存款和同业存放款项净增加额 | decimal(20,4) | |
| net_borrowing_from_central_bank | 向中央银行借款净增加额 | decimal(20,4) | |
| net_borrowing_from_finance_co | 向其他金融机构拆入资金净增加额 | decimal(20,4) | |
| net_original_insurance_cash | 收到原保险合同保费取得的现金 | decimal(20,4) | |
| net_cash_received_from_ reinsurance_business | 收到再保险业务现金净额 | decimal(20,4) | |
| net_insurer_deposit_investment | 保户储金及投资款净增加额 | decimal(20,4) | |
| net_deal_trading_assets | 处置以公允价值计量且其变动计入当期损益的金融资产净增加额 | decimal(20,4) | |
| interest_and_commission_cashin | 收取利息、手续费及佣金的现金 | decimal(20,4) | |
| net_increase_in_placements | 拆入资金净增加额 | decimal(20,4) | |
| net_buyback | 回购业务资金净增加额 | decimal(20,4) | |
| net_loan_and_advance_increase | 客户贷款及垫款净增加额 | decimal(20,4) | |
| net_deposit_in_cb_and_ib | 存放中央银行和同业款项净增加额 | decimal(20,4) | |
| original_compensation_paid | 支付原保险合同赔付款项的现金 | decimal(20,4) | |
| handling_charges_and_commission | 支付利息、手续费及佣金的现金 | decimal(20,4) | |
| policy_dividend_cash_paid | 支付保单红利的现金 | decimal(20,4) | |
| cash_from_mino_s_invest_sub | 子公司吸收少数股东投资收到的现金 | decimal(20,4) | |
| proceeds_from_sub_to_mino_s | 子公司支付给少数股东的股利、利润 | decimal(20,4) | |
| investment_property_depreciation | 投资性房地产的折旧及摊销 | decimal(20,4) | |
| credit_impairment_loss | 信用减值损失(现金流量表补充科目) | decimal(20,4) |
报表来源编码
| 编码 | 名称 |
|---|---|
| 321001 | 招募说明书 |
| 321002 | 上市公告书 |
| 321003 | 定期报告 |
| 321004 | 预披露公告 |
| 321005 | 换股报告书 |
| 321099 | 其他 |
from jqdatasdk import finance
finance.run_query(query(finance.STK_BALANCE_SHEET).filter(finance.STK_BALANCE_SHEET.code==code).limit(n))
获取上市公司定期公告中公布的合并资产负债表(2007版)
参数:
query(finance.STK_BALANCE_SHEET):表示从finance.STK_BALANCE_SHEET这张表中查询上市公司定期公告中公布的合并资产负债表信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_BALANCE_SHEET:代表上市公司合并资产负债表信息,收录了上市公司定期公告中公布的合并资产负债表数据,表结构和字段信息如下:
filter(finance.STK_BALANCE_SHEET.code==code):指定筛选条件,通过finance.STK_BALANCE_SHEET.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_BALANCE_SHEET.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司公布的合并资产负债表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公告的合并资产负债表数据,取出本期的货币资金,总资产和总负债
from jqdatasdk import *
q=query(finance.STK_BALANCE_SHEET.company_name,
finance.STK_BALANCE_SHEET.code,
finance.STK_BALANCE_SHEET.pub_date,
finance.STK_BALANCE_SHEET.start_date,
finance.STK_BALANCE_SHEET.end_date,
finance.STK_BALANCE_SHEET.cash_equivalents,
finance.STK_BALANCE_SHEET.total_assets,
finance.STK_BALANCE_SHEET.total_liability
).filter(finance.STK_BALANCE_SHEET.code=='600519.XSHG',finance.STK_BALANCE_SHEET.pub_date>='2015-01-01',finance.STK_BALANCE_SHEET.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2014-01-01 2014-12-31
1 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2015-01-01 2015-03-31
2 贵州茅台酒股份有限公司 600519.XSHG 2015-08-28 2015-01-01 2015-06-30
3 贵州茅台酒股份有限公司 600519.XSHG 2015-10-23 2015-01-01 2015-09-30
4 贵州茅台酒股份有限公司 600519.XSHG 2016-03-24 2015-01-01 2015-12-31
5 贵州茅台酒股份有限公司 600519.XSHG 2016-04-21 2016-01-01 2016-03-31
6 贵州茅台酒股份有限公司 600519.XSHG 2016-08-27 2016-01-01 2016-06-30
7 贵州茅台酒股份有限公司 600519.XSHG 2016-10-29 2016-01-01 2016-09-30
cash_equivalents total_assets total_liability
0 2.771072e+10 6.587317e+10 1.056161e+10
1 2.842068e+10 6.876902e+10 8.838873e+09
2 3.023650e+10 7.233774e+10 8.675962e+09
3 3.053612e+10 7.755903e+10 1.564019e+10
4 3.680075e+10 8.630146e+10 2.006729e+10
5 4.377574e+10 9.069045e+10 1.974919e+10
6 4.752806e+10 9.554650e+10 2.819334e+10
7 6.199974e+10 1.051460e+11 3.386253e+10
from jqdatasdk import finance
finance.run_query(query(finance.STK_BALANCE_SHEET_PARENT).filter(finance.STK_BALANCE_SHEET_PARENT.code==code).limit(n))
获取上市公司定期公告中公布的母公司资产负债表(2007版)
参数:
query(finance.STK_BALANCE_SHEET_PARENT):表示从finance.STK_BALANCE_SHEET_PARENT这张表中查询上市公司定期公告中公布的母公司资产负债表信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_BALANCE_SHEET_PARENT:代表上市公司母公司资产负债表信息,收录了上市公司定期公告中公布的母公司资产负债表数据,表结构和字段信息如下:
filter(finance.STK_BALANCE_SHEET_PARENT.code==code):指定筛选条件,通过finance.STK_BALANCE_SHEET_PARENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_BALANCE_SHEET_PARENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司公布的母公司资产负债表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公告的母公司资产负债表数据,取出本期的货币资金,总资产和总负债
from jqdatasdk import *
q=query(finance.STK_BALANCE_SHEET_PARENT.company_name,
finance.STK_BALANCE_SHEET_PARENT.code,
finance.STK_BALANCE_SHEET_PARENT.pub_date,
finance.STK_BALANCE_SHEET_PARENT.start_date,
finance.STK_BALANCE_SHEET_PARENT.end_date,
finance.STK_BALANCE_SHEET_PARENT.cash_equivalents,
finance.STK_BALANCE_SHEET_PARENT.total_assets,
finance.STK_BALANCE_SHEET_PARENT.total_liability
).filter(finance.STK_BALANCE_SHEET_PARENT.code=='600519.XSHG',finance.STK_BALANCE_SHEET_PARENT.pub_date>='2015-01-01',finance.STK_BALANCE_SHEET_PARENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2014-01-01 2014-12-31
1 贵州茅台酒股份有限公司 600519.XSHG 2015-04-21 2015-01-01 2015-03-31
2 贵州茅台酒股份有限公司 600519.XSHG 2015-08-28 2015-01-01 2015-06-30
3 贵州茅台酒股份有限公司 600519.XSHG 2015-10-23 2015-01-01 2015-09-30
4 贵州茅台酒股份有限公司 600519.XSHG 2016-03-24 2015-01-01 2015-12-31
5 贵州茅台酒股份有限公司 600519.XSHG 2016-04-21 2016-01-01 2016-03-31
6 贵州茅台酒股份有限公司 600519.XSHG 2016-08-27 2016-01-01 2016-06-30
7 贵州茅台酒股份有限公司 600519.XSHG 2016-10-29 2016-01-01 2016-09-30
cash_equivalents total_assets total_liability
0 1.070530e+10 4.662489e+10 1.693767e+10
1 1.165218e+10 4.903731e+10 1.940782e+10
2 1.239635e+10 5.079041e+10 2.125881e+10
3 8.754779e+09 5.396424e+10 1.979558e+10
4 1.505296e+10 5.512518e+10 2.082189e+10
5 1.574722e+10 6.608276e+10 2.292887e+10
6 1.898219e+10 6.186466e+10 2.658035e+10
7 1.540346e+10 5.697338e+10 2.241995e+10
字段信息展示:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| a_code | A股代码 | varchar(12) | |
| b_code | B股代码 | varchar(12) | |
| h_code | H股代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| end_date | 截止日期 | date | |
| report_date | 报告期 | date | |
| report_type | 报告期类型 | int | 0本期,1上期 |
| source_id | 报表来源编码 | int | 如下 报表来源编码 |
| source | 报表来源 | varchar(60) | |
| cash_equivalents | 货币资金 | decimal(20,4) | |
| trading_assets | 交易性金融资产 | decimal(20,4) | |
| bill_receivable | 应收票据 | decimal(20,4) | |
| account_receivable | 应收账款 | decimal(20,4) | |
| advance_payment | 预付款项 | decimal(20,4) | |
| other_receivable | 其他应收款 | decimal(20,4) | |
| affiliated_company_receivable | 应收关联公司款 | decimal(20,4) | |
| interest_receivable | 应收利息 | decimal(20,4) | |
| dividend_receivable | 应收股利 | decimal(20,4) | |
| inventories | 存货 | decimal(20,4) | |
| expendable_biological_asset | 消耗性生物资产 | decimal(20,4) | 消耗性生物资产,是指为出售而持有的、或在将来收获为农产品的生物资产,包括生长中的大田作物、蔬菜、用材林,以及存栏代售的牲畜等 |
| non_current_asset_in_one_year | 一年内到期的非流动资产 | decimal(20,4) | |
| total_current_assets | 流动资产合计 | decimal(20,4) | |
| hold_for_sale_assets | 可供出售金融资产 | decimal(20,4) | |
| hold_to_maturity_investments | 持有至到期投资 | decimal(20,4) | |
| longterm_receivable_account | 长期应收款 | decimal(20,4) | |
| longterm_equity_invest | 长期股权投资 | decimal(20,4) | |
| investment_property | 投资性房地产 | decimal(20,4) | |
| fixed_assets | 固定资产 | decimal(20,4) | |
| constru_in_process | 在建工程 | decimal(20,4) | |
| construction_materials | 工程物资 | decimal(20,4) | |
| fixed_assets_liquidation | 固定资产清理 | decimal(20,4) | |
| biological_assets | 生产性生物资产 | decimal(20,4) | |
| oil_gas_assets | 油气资产 | decimal(20,4) | |
| intangible_assets | 无形资产 | decimal(20,4) | |
| development_expenditure | 开发支出 | decimal(20,4) | |
| good_will | 商誉 | decimal(20,4) | |
| long_deferred_expense | 长期待摊费用 | decimal(20,4) | |
| deferred_tax_assets | 递延所得税资产 | decimal(20,4) | |
| total_non_current_assets | 非流动资产合计 | decimal(20,4) | |
| total_assets | 资产总计 | decimal(20,4) | |
| shortterm_loan | 短期借款 | decimal(20,4) | |
| trading_liability | 交易性金融负债 | decimal(20,4) | |
| notes_payable | 应付票据 | decimal(20,4) | |
| accounts_payable | 应付账款 | decimal(20,4) | |
| advance_peceipts | 预收款项 | decimal(20,4) | |
| salaries_payable | 应付职工薪酬 | decimal(20,4) | |
| taxs_payable | 应交税费 | decimal(20,4) | |
| interest_payable | 应付利息 | decimal(20,4) | |
| dividend_payable | 应付股利 | decimal(20,4) | |
| other_payable | 其他应付款 | decimal(20,4) | |
| affiliated_company_payable | 应付关联公司款 | decimal(20,4) | |
| non_current_liability_in_one_year | 一年内到期的非流动负债 | decimal(20,4) | |
| total_current_liability | 流动负债合计 | decimal(20,4) | |
| longterm_loan | 长期借款 | decimal(20,4) | |
| bonds_payable | 应付债券 | decimal(20,4) | |
| longterm_account_payable | 长期应付款 | decimal(20,4) | |
| specific_account_payable | 专项应付款 | decimal(20,4) | |
| estimate_liability | 预计负债 | decimal(20,4) | |
| deferred_tax_liability | 递延所得税负债 | decimal(20,4) | |
| total_non_current_liability | 非流动负债合计 | decimal(20,4) | |
| total_liability | 负债合计 | decimal(20,4) | |
| paidin_capital | 实收资本(或股本) | decimal(20,4) | |
| capital_reserve_fund | 资本公积 | decimal(20,4) | |
| specific_reserves | 专项储备 | decimal(20,4) | |
| surplus_reserve_fund | 盈余公积 | decimal(20,4) | |
| treasury_stock | 库存股 | decimal(20,4) | |
| retained_profit | 未分配利润 | decimal(20,4) | |
| equities_parent_company_owners | 归属于母公司所有者权益 | decimal(20,4) | |
| minority_interests | 少数股东权益 | decimal(20,4) | |
| foreign_currency_report_conv_diff | 外币报表折算价差 | decimal(20,4) | |
| irregular_item_adjustment | 非正常经营项目收益调整 | decimal(20,4) | |
| total_owner_equities | 所有者权益(或股东权益)合计 | decimal(20,4) | |
| total_sheet_owner_equities | 负债和所有者权益(或股东权益)合计 | decimal(20,4) | |
| other_comprehensive_income | 其他综合收益 | decimal(20,4) | |
| deferred_earning | 递延收益-非流动负债 | decimal(20,4) | |
| settlement_provi | 结算备付金 | decimal(20,4) | |
| lend_capital | 拆出资金 | decimal(20,4) | |
| loan_and_advance_current_assets | 发放贷款及垫款-流动资产 | decimal(20,4) | |
| derivative_financial_asset | 衍生金融资产 | decimal(20,4) | |
| insurance_receivables | 应收保费 | decimal(20,4) | |
| reinsurance_receivables | 应收分保账款 | decimal(20,4) | |
reinsurance_contract_ reserves_receivable |
应收分保合同准备金 | decimal(20,4) | |
| bought_sellback_assets | 买入返售金融资产 | decimal(20,4) | |
| hold_sale_asset | 划分为持有待售的资产 | decimal(20,4) | |
| loan_and_advance_noncurrent_assets | 发放贷款及垫款-非流动资产 | decimal(20,4) | |
| borrowing_from_centralbank | 向中央银行借款 | decimal(20,4) | |
| deposit_in_interbank | 吸收存款及同业存放 | decimal(20,4) | |
| borrowing_capital | 拆入资金 | decimal(20,4) | |
| derivative_financial_liability | 衍生金融负债 | decimal(20,4) | |
| sold_buyback_secu_proceeds | 卖出回购金融资产款 | decimal(20,4) | |
| commission_payable | 应付手续费及佣金 | decimal(20,4) | |
| reinsurance_payables | 应付分保账款 | decimal(20,4) | |
| insurance_contract_reserves | 保险合同准备金 | decimal(20,4) | |
| proxy_secu_proceeds | 代理买卖证券款 | decimal(20,4) | |
receivings_from_vicariously _sold_securities |
代理承销证券款 | decimal(20,4) | |
| hold_sale_liability | 划分为持有待售的负债 | decimal(20,4) | |
| estimate_liability_current | 预计负债-流动负债 | decimal(20,4) | |
| deferred_earning_current | 递延收益-流动负债 | decimal(20,4) | |
| preferred_shares_noncurrent | 优先股-非流动负债 | decimal(20,4) | |
| pepertual_liability_noncurrent | 永续债-非流动负债 | decimal(20,4) | |
| longterm_salaries_payable | 长期应付职工薪酬 | decimal(20,4) | |
| other_equity_tools | 其他权益工具 | decimal(20,4) | |
| preferred_shares_equity | 其中:优先股-所有者权益 | decimal(20,4) | |
| pepertual_liability_equity | 永续债-所有者权益 | decimal(20,4) | |
| other_current_assets | 其他流动资产 | decimal(20,4) | |
| other_non_current_assets | 其他非流动资产 | decimal(20,4) | |
| other_current_liability | 其他流动负债 | decimal(20,4) | |
| other_non_current_liability | 其他非流动负债 | decimal(20,4) | |
| ordinary_risk_reserve_fund | 一般风险准备 | decimal(20,4) | |
| contract_assets | 合同资产 | decimal(20,4) | |
| bond_invest | 债权投资 | decimal(20,4) | |
| other_bond_invest | 其他债权投资 | decimal(20,4) | |
| other_equity_tools_invest | 其他权益工具投资 | decimal(20,4) | |
| other_non_current_financial_assets | 其他非流动金融资产 | decimal(20,4) | |
| contract_liability | 合同负债 | decimal(20,4) | |
| receivable_fin | 应收款项融资 | decimal(20,4) | |
| usufruct_assets | 使用权资产 | decimal(20,4) | |
| bill_and_account_payable | 应付票据及应付账款 | decimal(20,4) | |
| bill_and_account_receivable | 应收票据及应收账款 | decimal(20,4) | |
| lease_liability | 租赁负债 | decimal(20,4) |
报表来源编码
| 编码 | 名称 |
|---|---|
| 321001 | 招募说明书 |
| 321002 | 上市公告书 |
| 321003 | 定期报告 |
| 321004 | 预披露公告 |
| 321005 | 换股报告书 |
| 321099 | 其他 |
from jqdatasdk import finance
finance.run_query(query(finance.FINANCE_INCOME_STATEMENT).filter(finance.FINANCE_INCOME_STATEMENT.code==code).limit(n))
获取金融类上市公司的合并利润表信息
参数:
query(finance.FINANCE_INCOME_STATEMENT):表示从finance.FINANCE_INCOME_STATEMENT这张表中查询金融类上市公司合并利润表的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.FINANCE_INCOME_STATEMENT:代表金融类上市公司合并利润表,收录了金融类上市公司的合并利润表,表结构和字段信息如下:
filter(finance.FINANCE_INCOME_STATEMENT.code==code)**:指定筛选条件,通过finance.FINANCE_INCOME_STATEMENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_INCOME_STATEMENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日金融类上市公司公布的合并利润表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询中国平安2015年之后公告的合并利润表数据,指定只取出本期数据
from jqdatasdk import finance
q=query(finance.FINANCE_INCOME_STATEMENT).filter(finance.FINANCE_INCOME_STATEMENT.code=='601318.XSHG',finance.FINANCE_INCOME_STATEMENT.pub_date>='2015-01-01',finance.FINANCE_INCOME_STATEMENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
id company_id company_name code a_code b_code h_code \
0 246 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
1 248 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
2 250 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
3 252 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
4 254 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
5 256 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
6 258 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
7 260 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
pub_date start_date end_date ... net_profit \
0 2015-03-20 2014-01-01 2014-12-31 ... 4.793000e+10
1 2015-04-30 2015-01-01 2015-03-31 ... 2.243600e+10
2 2015-08-21 2015-01-01 2015-06-30 ... 3.991100e+10
3 2015-10-28 2015-01-01 2015-09-30 ... 5.640500e+10
4 2016-03-16 2015-01-01 2015-12-31 ... 6.517800e+10
5 2016-04-27 2016-01-01 2016-03-31 ... 2.338900e+10
6 2016-08-18 2016-01-01 2016-06-30 ... 4.630800e+10
7 2016-10-28 2016-01-01 2016-09-30 ... 6.481300e+10
np_parent_company_owners minority_profit eps basic_eps diluted_eps \
0 3.927900e+10 8.651000e+09 None 4.93 4.68
1 1.996400e+10 2.472000e+09 None 2.19 2.19
2 3.464900e+10 5.262000e+09 None 1.90 1.90
3 4.827600e+10 8.129000e+09 None 2.64 2.64
4 5.420300e+10 1.097500e+10 None 2.98 2.98
5 2.070000e+10 2.689000e+09 None 1.16 1.16
6 4.077600e+10 5.532000e+09 None 2.28 2.28
7 5.650800e+10 8.305000e+09 None 3.17 3.16
other_composite_income total_composite_income ci_parent_company_owners \
0 3.077400e+10 7.870400e+10 6.959000e+10
1 -3.572000e+09 1.886400e+10 1.633600e+10
2 7.100000e+07 3.998200e+10 3.450800e+10
3 -1.316100e+10 4.324400e+10 3.488100e+10
4 7.520000e+08 6.593000e+10 5.456500e+10
5 -1.124600e+10 1.214300e+10 9.509000e+09
6 -9.129000e+09 3.717900e+10 3.167900e+10
7 -5.917000e+09 5.889600e+10 5.050300e+10
ci_minority_owners
0 9.114000e+09
1 2.528000e+09
2 5.474000e+09
3 8.363000e+09
4 1.136500e+10
5 2.634000e+09
6 5.500000e+09
7 8.393000e+09
[8 rows x 66 columns]
from jqdatasdk import finance
finance.run_query(query(finance.FINANCE_INCOME_STATEMENT_PARENT).filter(finance.FINANCE_INCOME_STATEMENT_PARENT.code==code).limit(n))
获取金融类上市公司的母公司利润表信息
参数:
query(finance.FINANCE_INCOME_STATEMENT_PARENT):表示从finance.FINANCE_INCOME_STATEMENT_PARENT这张表中查询金融类上市公司母公司利润表的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.FINANCE_INCOME_STATEMENT_PARENT:代表金融类上市公司母公司利润表,收录了金融类上市公司的母公司利润表,表结构和字段信息如下:
filter(finance.FINANCE_INCOME_STATEMENT_PARENT.code==code)**:指定筛选条件,通过finance.FINANCE_INCOME_STATEMENT_PARENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_INCOME_STATEMENT_PARENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日金融类上市公司公布的母公司利润表信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询中国平安2015年之后公告的母公司利润表数据,指定只取出本期数据
from jqdatasdk import finance
q=query(finance.FINANCE_INCOME_STATEMENT_PARENT).filter(finance.FINANCE_INCOME_STATEMENT_PARENT.code=='601318.XSHG',finance.FINANCE_INCOME_STATEMENT_PARENT.pub_date>='2015-01-01',finance.FINANCE_INCOME_STATEMENT_PARENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
id company_id company_name code a_code b_code h_code \
0 214 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
1 216 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
2 218 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
3 220 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
4 222 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
5 224 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
6 226 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
7 228 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None None
pub_date start_date end_date ... net_profit \
0 2015-03-20 2014-01-01 2014-12-31 ... 7.214000e+09
1 2015-04-30 2015-01-01 2015-03-31 ... 3.160000e+08
2 2015-08-21 2015-01-01 2015-06-30 ... 8.390000e+09
3 2015-10-28 2015-01-01 2015-09-30 ... 8.969000e+09
4 2016-03-16 2015-01-01 2015-12-31 ... 1.028000e+10
5 2016-04-27 2016-01-01 2016-03-31 ... 1.810000e+08
6 2016-08-18 2016-01-01 2016-06-30 ... 1.385000e+10
7 2016-10-28 2016-01-01 2016-09-30 ... 1.374700e+10
np_parent_company_owners minority_profit eps basic_eps diluted_eps \
0 7.214000e+09 None None None None
1 3.160000e+08 None None None None
2 8.390000e+09 None None None None
3 8.969000e+09 None None None None
4 1.028000e+10 None None None None
5 1.810000e+08 None None None None
6 1.385000e+10 None None None None
7 1.374700e+10 None None None None
other_composite_income total_composite_income ci_parent_company_owners \
0 235000000.0 7.449000e+09 NaN
1 -47000000.0 2.690000e+08 NaN
2 85000000.0 8.475000e+09 NaN
3 191000000.0 9.160000e+09 NaN
4 436000000.0 1.071600e+10 NaN
5 -38000000.0 1.430000e+08 NaN
6 -48000000.0 1.380200e+10 1.380200e+10
7 7000000.0 1.375400e+10 1.375400e+10
ci_minority_owners
0 None
1 None
2 None
3 None
4 None
5 None
6 None
7 None
[8 rows x 66 columns]
字段信息展示:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 公司主证券代码 | varchar(12) | |
| a_code | A股代码 | varchar(12) | |
| b_code | B股代码 | varchar(12) | |
| h_code | H股代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| start_date | 开始日期 | date | |
| end_date | 截止日期 | date | |
| report_date | 报告期 | date | |
| report_type | 报告期类型 | int | 0本期,1上期 |
| source_id | 报表来源编码 | int | 如下报表来源编码 |
| source | 报表来源 | varchar(60) | |
| operating_revenue | 营业收入 | decimal(20,4) | |
| interest_net_revenue | 利息净收入 | decimal(20,4) | |
| interest_income | 利息收入 | decimal(20,4) | |
| interest_expense | 利息支出 | decimal(20,4) | |
| commission_net_income | 手续费及佣金净收入 | decimal(20,4) | |
| commission_income | 手续费及佣金收入 | decimal(20,4) | |
| commission_expense | 手续费及佣金支出 | decimal(20,4) | |
| agent_security_income | 代理买卖证券业务净收入 | decimal(20,4) | |
| sell_security_income | 证券承销业务净收入 | decimal(20,4) | |
| manage_income | 委托客户管理资产业务净收入 | decimal(20,4) | |
| premiums_earned | 已赚保费 | decimal(20,4) | |
| assurance_income | 保险业务收入 | decimal(20,4) | |
| premiums_income | 分保费收入 | decimal(20,4) | |
| premiums_expense | 分出保费 | decimal(20,4) | |
| prepare_money | 提取未到期责任准备金 | decimal(20,4) | |
| investment_income | 投资收益 | decimal(20,4) | |
| invest_income_associates | 对联营企业和合营企业的投资收益 | decimal(20,4) | |
| fair_value_variable_income | 公允价值变动收益 | decimal(20,4) | |
| exchange_income | 汇兑收益 | decimal(20,4) | |
| other_income | 其他业务收入 | decimal(20,4) | |
| operation_expense | 营业支出 | decimal(20,4) | |
| refunded_premiums | 退保金 | decimal(20,4) | |
| compensate_loss | 赔付支出 | decimal(20,4) | |
| compensation_back | 摊回赔付支出 | decimal(20,4) | |
| insurance_reserve | 提取保险责任准备金 | decimal(20,4) | |
| insurance_reserve_back | 摊回保险责任准备金 | decimal(20,4) | |
| policy_dividend_payout | 保单红利支出 | decimal(20,4) | |
| reinsurance_cost | 分保费用 | decimal(20,4) | |
| operating_tax_surcharges | 营业税金及附加 | decimal(20,4) | |
| commission_expense2 | 手续费及佣金支出(保险专用) | decimal(20,4) | |
| operation_manage_fee | 业务及管理费 | decimal(20,4) | |
| separate_fee | 摊回分保费用 | decimal(20,4) | |
| asset_impairment_loss | 资产减值损失 | decimal(20,4) | |
| other_cost | 其他业务成本 | decimal(20,4) | |
| operating_profit | 营业利润 | decimal(20,4) | |
| subsidy_income | 补贴收入 | decimal(20,4) | |
| non_operating_revenue | 营业外收入 | decimal(20,4) | |
| non_operating_expense | 营业外支出 | decimal(20,4) | |
| other_items_influenced_profit | 影响利润总额的其他科目 | decimal(20,4) | |
| total_profit | 利润总额 | decimal(20,4) | |
| income_tax_expense | 所得税费用 | decimal(20,4) | |
| other_influence_net_profit | 影响净利润的其他科目 | decimal(20,4) | |
| net_profit | 净利润 | decimal(20,4) | |
| np_parent_company_owners | 归属于母公司股东的净利润 | decimal(20,4) | |
| minority_profit | 少数股东损益 | decimal(20,4) | |
| eps | 每股收益 | decimal(20,4) | |
| basic_eps | 基本每股收益 | decimal(20,4) | |
| diluted_eps | 稀释每股收益 | decimal(20,4) | |
| other_composite_income | 其他综合收益 | decimal(20,4) | |
| total_composite_income | 综合收益总额 | decimal(20,4) | |
| ci_parent_company_owners | 归属于母公司的综合收益 | decimal(20,4) | |
| ci_minority_owners | 归属于少数股东的综合收益 | decimal(20,4) | |
| other_earnings | 其他收益 | decimal(20,4) | |
| asset_deal_income | 资产处置收益 | decimal(20,4) | |
| sust_operate_net_profit | 持续经营净利润 | decimal(20,4) | |
| discon_operate_net_profit | 终止经营净利润 | decimal(20,4) | |
| credit_impairment_loss | 信用减值损失 | decimal(20,4) |
报表来源编码
| 编码 | 名称 |
|---|---|
| 321001 | 招募说明书 |
| 321002 | 上市公告书 |
| 321003 | 定期报告 |
| 321004 | 预披露公告 |
| 321005 | 换股报告书 |
| 321099 | 其他 |
from jqdatasdk import finance
finance.run_query(query(finance.FINANCE_CASHFLOW_STATEMENT).filter(finance.FINANCE_CASHFLOW_STATEMENT.code==code).limit(n))
获取金融类上市公司的合并现金流量表信息
参数:
query(finance.FINANCE_CASHFLOW_STATEMENT):表示从finance.FINANCE_CASHFLOW_STATEMENT这张表中查询金融类上市公司合并现金流量的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.FINANCE_CASHFLOW_STATEMENT:代表金融类上市公司合并现金流量表,收录了金融类上市公司的合并现金流量,表结构和字段信息如下:
filter(finance.FINANCE_CASHFLOW_STATEMENT.code==code):指定筛选条件,通过finance.FINANCE_CASHFLOW_STATEMENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_CASHFLOW_STATEMENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日金融类上市公司公布的合并现金流量信息;多个筛选条件用英文逗号分隔。
返回结果:
注意:
示例:
#查询中国平安2015年之后公告的合并现金流量表数据,指定只取出本期数据经营活动现金流量净额,投资活动现金流量净额,以及筹资活动现金流量净额
from jqdatasdk import *
q=query(finance.FINANCE_CASHFLOW_STATEMENT.company_name,
finance.FINANCE_CASHFLOW_STATEMENT.code,
finance.FINANCE_CASHFLOW_STATEMENT.pub_date,
finance.FINANCE_CASHFLOW_STATEMENT.start_date,
finance.FINANCE_CASHFLOW_STATEMENT.end_date,
finance.FINANCE_CASHFLOW_STATEMENT.net_operate_cash_flow,
finance.FINANCE_CASHFLOW_STATEMENT.net_invest_cash_flow,
finance.FINANCE_CASHFLOW_STATEMENT.net_finance_cash_flow).filter(finance.FINANCE_CASHFLOW_STATEMENT.code=='601318.XSHG',finance.FINANCE_CASHFLOW_STATEMENT.pub_date>='2015-01-01',finance.FINANCE_CASHFLOW_STATEMENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 中国平安保险(集团)股份有限公司 601318.XSHG 2015-03-20 2014-01-01 2014-12-31
1 中国平安保险(集团)股份有限公司 601318.XSHG 2015-04-30 2015-01-01 2015-03-31
2 中国平安保险(集团)股份有限公司 601318.XSHG 2015-08-21 2015-01-01 2015-06-30
3 中国平安保险(集团)股份有限公司 601318.XSHG 2015-10-28 2015-01-01 2015-09-30
4 中国平安保险(集团)股份有限公司 601318.XSHG 2016-03-16 2015-01-01 2015-12-31
5 中国平安保险(集团)股份有限公司 601318.XSHG 2016-04-27 2016-01-01 2016-03-31
6 中国平安保险(集团)股份有限公司 601318.XSHG 2016-08-18 2016-01-01 2016-06-30
7 中国平安保险(集团)股份有限公司 601318.XSHG 2016-10-28 2016-01-01 2016-09-30
net_operate_cash_flow net_invest_cash_flow net_finance_cash_flow
0 1.702600e+11 -2.368890e+11 8.536800e+10
1 6.114900e+10 -4.478700e+10 1.996200e+10
2 2.478960e+11 -1.355150e+11 1.059350e+11
3 1.710670e+11 -1.442380e+11 1.675280e+11
4 1.356180e+11 -2.737320e+11 2.049760e+11
5 1.192720e+11 -1.241580e+11 5.367100e+10
6 6.599800e+10 -2.663960e+11 1.714720e+11
7 -1.702500e+10 -1.942610e+11 1.291400e+11
from jqdatasdk import finance
finance.run_query(query(finance.FINANCE_CASHFLOW_STATEMENT_PARENT).filter(finance.FINANCE_CASHFLOW_STATEMENT_PARENT.code==code).limit(n))
获取金融类上市公司的母公司现金流量表信息
参数:
query(finance.FINANCE_CASHFLOW_STATEMENT_PARENT):表示从finance.FINANCE_CASHFLOW_STATEMENT_PARENT这张表中查询金融类上市公司母公司现金流量的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.FINANCE_CASHFLOW_STATEMENT_PARENT:代表金融类上市公司母公司现金流量表,收录了金融类上市公司的母公司现金流量,表结构和字段信息如下:
filter(finance.FINANCE_CASHFLOW_STATEMENT_PARENT.code==code):指定筛选条件,通过finance.FINANCE_CASHFLOW_STATEMENT_PARENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_CASHFLOW_STATEMENT_PARENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日金融类上市公司公布的母公司现金流量信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询中国平安2015年之后公告的母公司现金流量表数据,指定只取出本期经营活动现金流量净额,投资活动现金流量净额,以及筹资活动现金流量净额
from jqdatasdk import *
q=query(finance.FINANCE_CASHFLOW_STATEMENT_PARENT.company_name,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.code,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.pub_date,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.start_date,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.end_date,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.net_operate_cash_flow,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.net_invest_cash_flow,
finance.FINANCE_CASHFLOW_STATEMENT_PARENT.net_finance_cash_flow).filter(finance.FINANCE_CASHFLOW_STATEMENT_PARENT.code=='601318.XSHG',finance.FINANCE_CASHFLOW_STATEMENT_PARENT.pub_date>='2015-01-01',finance.FINANCE_CASHFLOW_STATEMENT_PARENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 中国平安保险(集团)股份有限公司 601318.XSHG 2015-03-20 2014-01-01 2014-12-31
1 中国平安保险(集团)股份有限公司 601318.XSHG 2015-04-30 2015-01-01 2015-03-31
2 中国平安保险(集团)股份有限公司 601318.XSHG 2015-08-21 2015-01-01 2015-06-30
3 中国平安保险(集团)股份有限公司 601318.XSHG 2015-10-28 2015-01-01 2015-09-30
4 中国平安保险(集团)股份有限公司 601318.XSHG 2016-03-16 2015-01-01 2015-12-31
5 中国平安保险(集团)股份有限公司 601318.XSHG 2016-04-27 2016-01-01 2016-03-31
6 中国平安保险(集团)股份有限公司 601318.XSHG 2016-08-18 2016-01-01 2016-06-30
7 中国平安保险(集团)股份有限公司 601318.XSHG 2016-10-28 2016-01-01 2016-09-30
net_operate_cash_flow net_invest_cash_flow net_finance_cash_flow
0 -88000000.0 -1.433300e+10 2.354300e+10
1 -202000000.0 -7.180000e+08 6.910000e+08
2 -88000000.0 -8.063000e+09 3.010000e+09
3 -25000000.0 -1.116800e+10 -7.130000e+09
4 -203000000.0 -1.099000e+10 -5.711000e+09
5 -533000000.0 4.560000e+08 -3.000000e+08
6 -236000000.0 3.237000e+09 -1.620000e+09
7 -418000000.0 1.089500e+10 -1.039000e+10
字段信息展示:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 公司主证券代码 | varchar(12) | |
| a_code | A股代码 | varchar(12) | |
| b_code | B股代码 | varchar(12) | |
| h_code | H股代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| start_date | 开始日期 | date | |
| end_date | 截止日期 | date | |
| report_date | 报告期 | date | |
| report_type | 报告期类型 | int | 0本期,1上期 |
| source_id | 报表来源编码 | int | 如下报表来源编码 |
| source | 报表来源 | varchar(60) | |
| operate_cash_flow | 经营活动产生的现金流量 | decimal(20,4) | |
| net_loan_and_advance_decrease | 客户贷款及垫款净减少额 | decimal(20,4) | |
| net_deposit_increase | 客户存款和同业存放款项净增加额 | decimal(20,4) | |
| net_borrowing_from_central_bank | 向中央银行借款净增加额 | decimal(20,4) | |
| net_deposit_in_cb_and_ib_de | 存放中央银行和同业款项净减少额 | decimal(20,4) | |
| net_borrowing_from_finance_co | 向其他金融机构拆入资金净增加额 | decimal(20,4) | |
| interest_and_commission_cashin | 收取利息、手续费及佣金的现金 | decimal(20,4) | |
| trade_asset_increase | 处置交易性金融资产净增加额 | decimal(20,4) | |
| net_increase_in_placements | 拆入资金净增加额 | decimal(20,4) | |
| net_buyback | 回购业务资金净增加额 | decimal(20,4) | |
| goods_sale_and_service_render_cash | 销售商品、提供劳务收到的现金 | decimal(20,4) | |
| tax_levy_refund | 收到的税费返还 | decimal(20,4) | |
| net_original_insurance_cash | 收到原保险合同保费取得的现金 | decimal(20,4) | |
| insurance_cash_amount | 收到再保业务现金净额 | decimal(20,4) | |
| net_insurer_deposit_investment | 保户储金及投资款净增加额 | decimal(20,4) | |
| subtotal_operate_cash_inflow | 经营活动现金流入小计 | decimal(20,4) | |
| net_loan_and_advance_increase | 客户贷款及垫款净增加额 | decimal(20,4) | |
| saving_clients_decrease_amount | 客户存放及同业存放款项净减少额 | decimal(20,4) | |
| net_deposit_in_cb_and_ib | 存放中央银行和同业款项净增加额 | decimal(20,4) | |
| central_borrowing_decrease | 向中央银行借款净减少额 | decimal(20,4) | |
| other_money_increase | 向其他金融机构拆出资金净增加额 | decimal(20,4) | |
| purchase_trade_asset_increase | 购入交易性金融资产净增加额 | decimal(20,4) | |
| repurchase_decrease | 回购业务资金净减少额 | decimal(20,4) | |
| handling_charges_and_commission | 支付利息、手续费及佣金的现金 | decimal(20,4) | |
| goods_and_services_cash_paid | 购买商品、提供劳务支付的现金 | decimal(20,4) | |
| net_cash_re_insurance | 支付再保业务现金净额 | decimal(20,4) | |
| reserve_investment_decrease | 保户储金及投资款净减少额 | decimal(20,4) | |
| original_compensation_paid | 支付原保险合同赔付款项的现金 | decimal(20,4) | |
| policy_dividend_cash_paid | 支付保单红利的现金 | decimal(20,4) | |
| staff_behalf_paid | 支付给职工以及为职工支付的现金 | decimal(20,4) | |
| tax_payments | 支付的各项税费 | decimal(20,4) | |
| subtotal_operate_cash_outflow | 经营活动现金流出小计 | decimal(20,4) | |
| net_operate_cash_flow | 经营活动现金流量净额 | decimal(20,4) | |
| invest_cash_flow | 投资活动产生的现金流量 | decimal(20,4) | |
| invest_withdrawal_cash | 收回投资收到的现金 | decimal(20,4) | |
| invest_proceeds | 取得投资收益收到的现金 | decimal(20,4) | |
| gain_from_disposal | 处置固定资产、无形资产和其他长期资产所收回的现金 | decimal(20,4) | |
| subtotal_invest_cash_inflow | 投资活动现金流入小计 | decimal(20,4) | |
| invest_cash_paid | 投资支付的现金 | decimal(20,4) | |
| impawned_loan_net_increase | 质押贷款净增加额 | decimal(20,4) | |
| fix_intan_other_asset_acqui_cash | 购建固定资产、无形资产和其他长期资产支付的现金 | decimal(20,4) | |
| subtotal_invest_cash_outflow | 投资活动现金流出小计 | decimal(20,4) | |
| net_invest_cash_flow | 投资活动现金流量净额 | decimal(20,4) | |
| finance_cash_flow | 筹资活动产生的现金流量 | decimal(20,4) | |
| cash_from_invest | 吸收投资收到的现金 | decimal(20,4) | |
| cash_from_bonds_issue | 发行债券收到的现金 | decimal(20,4) | |
| cash_from_borrowing | 取得借款收到的现金 | decimal(20,4) | |
| subtotal_finance_cash_inflow | 筹资活动现金流入小计 | decimal(20,4) | |
| borrowing_repayment | 偿还债务支付的现金 | decimal(20,4) | |
| dividend_interest_payment | 分配股利、利润或偿付利息支付的现金 | decimal(20,4) | |
| subtotal_finance_cash_outflow | 筹资活动现金流出小计 | decimal(20,4) | |
| net_finance_cash_flow | 筹资活动产生的现金流量净额 | decimal(20,4) | |
| exchange_rate_change_effect | 汇率变动对现金的影响 | decimal(20,4) | |
| other_reason_effect_cash | 其他原因对现金的影响 | decimal(20,4) | |
| cash_equivalent_increase | 现金及现金等价物净增加额 | decimal(20,4) | |
| cash_equivalents_at_beginning | 期初现金及现金等价物余额 | decimal(20,4) | |
| cash_and_equivalents_at_end | 期末现金及现金等价物余额 | decimal(20,4) | |
| net_profit_cashflow_adjustment | 将净利润调节为经营活动现金流量 | decimal(20,4) | |
| net_profit | 净利润 | decimal(20,4) | |
| assets_depreciation_reserves | 资产减值准备 | decimal(20,4) | |
| fixed_assets_depreciation | 固定资产折旧、油气资产折耗、生产性生物资产折旧 | decimal(20,4) | |
| intangible_assets_amortization | 无形资产摊销 | decimal(20,4) | |
| defferred_expense_amortization | 长期待摊费用摊销 | decimal(20,4) | |
| fix_intan_other_asset_dispo_loss | 处置固定资产、无形资产和其他长期资产的损失 | decimal(20,4) | |
| fixed_asset_scrap_loss | 固定资产报废损失 | decimal(20,4) | |
| fair_value_change_loss | 公允价值变动损失 | decimal(20,4) | |
| financial_cost | 财务费用 | decimal(20,4) | |
| invest_loss | 投资损失 | decimal(20,4) | |
| deffered_tax_asset_decrease | 递延所得税资产减少 | decimal(20,4) | |
| deffered_tax_liability_increase | 递延所得税负债增加 | decimal(20,4) | |
| inventory_decrease | 存货的减少 | decimal(20,4) | |
| operate_receivables_decrease | 经营性应收项目的减少 | decimal(20,4) | |
| operate_payable_increase | 经营性应付项目的增加 | decimal(20,4) | |
| others | 其他 | decimal(20,4) | |
| net_operate_cash_flow2 | 经营活动产生的现金流量净额_间接法 | decimal(20,4) | |
| activities_not_relate_major | 不涉及现金收支的重大投资和筹资活动 | decimal(20,4) | |
| debt_to_capital | 债务转为资本 | decimal(20,4) | |
| cbs_expiring_in_one_year | 一年内到期的可转换公司债券 | decimal(20,4) | |
| financial_lease_fixed_assets | 融资租入固定资产 | decimal(20,4) | |
| change_info_cash | 现金及现金等价物净变动情况 | decimal(20,4) | |
| cash_at_end | 现金的期末余额 | decimal(20,4) | |
| cash_at_beginning | 现金的期初余额 | decimal(20,4) | |
| equivalents_at_end | 现金等价物的期末余额 | decimal(20,4) | |
| equivalents_at_beginning | 现金等价物的期初余额 | decimal(20,4) | |
| other_influence2 | 其他原因对现金的影响2 | decimal(20,4) | |
| cash_equivalent_increase2 | 现金及现金等价物净增加额2 | decimal(20,4) | |
| investment_property_depreciation | 投资性房地产的折旧及摊销 | decimal(20,4) | |
| net_dec_finance_out | 融出资金净减少额 | decimal(20,4) | |
| net_cash_received_from_proxy_secu | 代理买卖证券收到的现金净额 | decimal(20,4) | |
| net_inc_finance_out | 融出资金净增加额 | decimal(20,4) | |
| net_cash_paid_to_proxy_secu | 代理买卖证券支付的现金净额 | decimal(20,4) | |
| net_dec_in_placements | 拆入资金净减少额 | decimal(20,4) | |
| credit_impairment_loss | 信用减值损失(现金流量表补充科目) | decimal(20,4) |
报表来源编码
| 编码 | 名称 |
|---|---|
| 321001 | 招募说明书 |
| 321002 | 上市公告书 |
| 321003 | 定期报告 |
| 321004 | 预披露公告 |
| 321005 | 换股报告书 |
| 321099 | 其他 |
from jqdatasdk import finance
finance.run_query(query(finance.FINANCE_BALANCE_SHEET).filter(finance.FINANCE_BALANCE_SHEET.code==code).limit(n))
获取金融类上市公司的合并资产负债表信息
参数:
query(finance.FINANCE_BALANCE_SHEET):表示从finance.FINANCE_BALANCE_SHEET这张表中查询金融类上市公司合并资产负债的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.FINANCE_BALANCE_SHEET:代表金融类上市公司合并资产负债表,收录了金融类上市公司的合并资产负债,表结构和字段信息如下:
filter(finance.FINANCE_BALANCE_SHEET.code==code):指定筛选条件,通过finance.FINANCE_BALANCE_SHEET.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_BALANCE_SHEET.pub_date>='2015-01-01',表示公告日期大于2015年1月1日金融类上市公司公布的合并资产负债信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
示例:
#查询中国平安2015年之后公告的合并资产负债表数据,取出本期的货币资金,总资产和总负债
from jqdatasdk import finance
q=query(finance.FINANCE_BALANCE_SHEET.company_name,
finance.FINANCE_BALANCE_SHEET.code,
finance.FINANCE_BALANCE_SHEET.pub_date,
finance.FINANCE_BALANCE_SHEET.start_date,
finance.FINANCE_BALANCE_SHEET.end_date,
finance.FINANCE_BALANCE_SHEET.cash_equivalents,
finance.FINANCE_BALANCE_SHEET.total_assets,
finance.FINANCE_BALANCE_SHEET.total_liability
).filter(finance.FINANCE_BALANCE_SHEET.code=='601318.XSHG',finance.FINANCE_BALANCE_SHEET.pub_date>='2015-01-01',finance.FINANCE_BALANCE_SHEET.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 中国平安保险(集团)股份有限公司 601318.XSHG 2015-03-20 2014-01-01 2014-12-31
1 中国平安保险(集团)股份有限公司 601318.XSHG 2015-04-30 2015-01-01 2015-03-31
2 中国平安保险(集团)股份有限公司 601318.XSHG 2015-08-21 2015-01-01 2015-06-30
3 中国平安保险(集团)股份有限公司 601318.XSHG 2015-10-28 2015-01-01 2015-09-30
4 中国平安保险(集团)股份有限公司 601318.XSHG 2016-03-16 2015-01-01 2015-12-31
5 中国平安保险(集团)股份有限公司 601318.XSHG 2016-04-27 2016-01-01 2016-03-31
6 中国平安保险(集团)股份有限公司 601318.XSHG 2016-08-18 2016-01-01 2016-06-30
7 中国平安保险(集团)股份有限公司 601318.XSHG 2016-10-28 2016-01-01 2016-09-30
cash_equivalents total_assets total_liability
0 4.427070e+11 4.005911e+12 3.652095e+12
1 4.131880e+11 4.215240e+12 3.833842e+12
2 4.510800e+11 4.632287e+12 4.227789e+12
3 4.654240e+11 4.667113e+12 4.262293e+12
4 4.750570e+11 4.765159e+12 4.351588e+12
5 5.668130e+11 5.006993e+12 4.566653e+12
6 5.210790e+11 5.219782e+12 4.757190e+12
7 5.230110e+11 5.296564e+12 4.815950e+12
from jqdatasdk import finance
finance.run_query(query(finance.FINANCE_BALANCE_SHEET_PARENT).filter(finance.FINANCE_BALANCE_SHEET_PARENT.code==code).limit(n))
获取金融类上市公司的母公司资产负债表信息
参数:
query(finance.FINANCE_BALANCE_SHEET_PARENT):表示从finance.FINANCE_BALANCE_SHEET_PARENT这张表中查询金融类上市公司母公司资产负债的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.FINANCE_BALANCE_SHEET_PARENT:代表金融类上市公司母公司资产负债表,收录了金融类上市公司的母公司资产负债,表结构和字段信息如下:
filter(finance.FINANCE_BALANCE_SHEET_PARENT.code==code):指定筛选条件,通过finance.FINANCE_BALANCE_SHEET_PARENT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_BALANCE_SHEET_PARENT.pub_date>='2015-01-01',表示公告日期大于2015年1月1日金融类上市公司公布的母公司资产负债信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询中国平安2015年之后公告的母公司资产负债表数据,取出本期的货币资金,总资产和总负债
from jqdatasdk import finance
q=query(finance.FINANCE_BALANCE_SHEET_PARENT.company_name,
finance.FINANCE_BALANCE_SHEET_PARENT.code,
finance.FINANCE_BALANCE_SHEET_PARENT.pub_date,
finance.FINANCE_BALANCE_SHEET_PARENT.start_date,
finance.FINANCE_BALANCE_SHEET_PARENT.end_date,
finance.FINANCE_BALANCE_SHEET_PARENT.cash_equivalents,
finance.FINANCE_BALANCE_SHEET_PARENT.total_assets,
finance.FINANCE_BALANCE_SHEET_PARENT.total_liability
).filter(finance.FINANCE_BALANCE_SHEET_PARENT.code=='601318.XSHG',finance.FINANCE_BALANCE_SHEET_PARENT.pub_date>='2015-01-01',finance.FINANCE_BALANCE_SHEET_PARENT.report_type==0).limit(8)
df=finance.run_query(q)
print(df)
company_name code pub_date start_date end_date \
0 中国平安保险(集团)股份有限公司 601318.XSHG 2015-03-20 2014-01-01 2014-12-31
1 中国平安保险(集团)股份有限公司 601318.XSHG 2015-04-30 2015-01-01 2015-03-31
2 中国平安保险(集团)股份有限公司 601318.XSHG 2015-08-21 2015-01-01 2015-06-30
3 中国平安保险(集团)股份有限公司 601318.XSHG 2015-10-28 2015-01-01 2015-09-30
4 中国平安保险(集团)股份有限公司 601318.XSHG 2016-03-16 2015-01-01 2015-12-31
5 中国平安保险(集团)股份有限公司 601318.XSHG 2016-04-27 2016-01-01 2016-03-31
6 中国平安保险(集团)股份有限公司 601318.XSHG 2016-08-18 2016-01-01 2016-06-30
7 中国平安保险(集团)股份有限公司 601318.XSHG 2016-10-28 2016-01-01 2016-09-30
cash_equivalents total_assets total_liability
0 2.621400e+10 1.970230e+11 1.733100e+10
1 2.589900e+10 1.980580e+11 8.930000e+09
2 2.080900e+10 2.096090e+11 1.610500e+10
3 8.815000e+09 2.004830e+11 9.538000e+09
4 1.017900e+10 2.033480e+11 1.080500e+10
5 9.906000e+09 2.031290e+11 1.034900e+10
6 1.023400e+10 2.155980e+11 1.557700e+10
7 1.045300e+10 2.069940e+11 1.058500e+10
字段信息展示
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 公司主证券代码 | varchar(12) | |
| a_code | A股代码 | varchar(12) | |
| b_code | B股代码 | varchar(12) | |
| h_code | H股代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| start_date | 开始日期 | date | |
| end_date | 截止日期 | date | |
| report_date | 报告期 | date | |
| report_type | 报告期类型 | int | 0本期,1上期 |
| source_id | 报表来源编码 | int | 如下报表编码表 |
| source | 报表来源 | varchar(60) | |
| deposit_in_ib | 存放同业款项 | decimal(20,4) | |
| cash_equivalents | 货币资金 | decimal(20,4) | |
| deposit_client | 客户资金存款 | decimal(20,4) | |
| cash_in_cb | 现金及存放中央银行款项 | decimal(20,4) | |
| settlement_provi | 结算备付金 | decimal(20,4) | |
| settlement_provi_client | 客户备付金 | decimal(20,4) | |
| metal | 贵金属 | decimal(20,4) | |
| lend_capital | 拆出资金 | decimal(20,4) | |
| fairvalue_fianancial_asset | 以公允价值计量且其变动计入当期损益的金融资产 | decimal(20,4) | |
| other_grow_asset | 衍生金融资产 | decimal(20,4) | |
| bought_sellback_assets | 买入返售金融资产 | decimal(20,4) | |
| interest_receivable | 应收利息 | decimal(20,4) | |
| insurance_receivables | 应收保费 | decimal(20,4) | |
| recover_receivable | 应收代位追偿款 | decimal(20,4) | |
| separate_receivable | 应收分保帐款 | decimal(20,4) | |
| not_time_fund | 应收分保未到期责任准备金 | decimal(20,4) | |
| not_decide_fund | 应收分保未决赔款准备金 | decimal(20,4) | |
| response_fund | 应收分保寿险责任准备金 | decimal(20,4) | |
| health_fund | 应收分保长期健康险责任准备金 | decimal(20,4) | |
| margin_loan | 保户质押贷款 | decimal(20,4) | |
| deposit_period | 定期存款 | decimal(20,4) | |
| loan_and_advance | 发放贷款及垫款 | decimal(20,4) | |
| margin_out | 存出保证金 | decimal(20,4) | |
| agent_asset | 代理业务资产 | decimal(20,4) | |
| investment_reveiable | 应收款项类投资 | decimal(20,4) | |
| advance_payment | 预付款项 | decimal(20,4) | |
| hold_for_sale_assets | 可供出售金融资产 | decimal(20,4) | |
| hold_to_maturity_investments | 持有至到期投资 | decimal(20,4) | |
| longterm_equity_invest | 长期股权投资 | decimal(20,4) | |
| finance_out | 融出资金 | decimal(20,4) | |
| capital_margin_out | 存出资本保证金 | decimal(20,4) | |
| investment_property | 投资性房地产 | decimal(20,4) | |
| inventories | 存货 | decimal(20,4) | |
| fixed_assets | 固定资产 | decimal(20,4) | |
| constru_in_process | 在建工程 | decimal(20,4) | |
| intangible_assets | 无形资产 | decimal(20,4) | |
| trade_fee | 交易席位费 | decimal(20,4) | |
| long_deferred_expense | 长期待摊费用 | decimal(20,4) | |
| fixed_assets_liquidation | 固定资产清理 | decimal(20,4) | |
| independent_account_asset | 独立帐户资产 | decimal(20,4) | |
| deferred_tax_assets | 递延所得税资产 | decimal(20,4) | |
| other_asset | 其他资产 | decimal(20,4) | |
| total_assets | 资产总计 | decimal(20,4) | |
| borrowing_from_centralbank | 向中央银行借款 | decimal(20,4) | |
| deposit_in_ib_and_other | 同业及其他金融机构存放款项 | decimal(20,4) | |
| shortterm_loan | 短期借款 | decimal(20,4) | |
| loan_pledge | 其中:质押借款 | decimal(20,4) | |
| borrowing_capital | 拆入资金 | decimal(20,4) | |
| fairvalue_financial_liability | 以公允价值计量且其变动计入当期损益的金融负债 | decimal(20,4) | |
| derivative_financial_liability | 衍生金融负债 | decimal(20,4) | |
| sold_buyback_secu_proceeds | 卖出回购金融资产款 | decimal(20,4) | |
| deposit_absorb | 吸收存款 | decimal(20,4) | |
| proxy_secu_proceeds | 代理买卖证券款 | decimal(20,4) | |
| proxy_sell_proceeds | 代理承销证券款 | decimal(20,4) | |
| accounts_payable | 应付账款 | decimal(20,4) | |
| notes_payable | 应付票据 | decimal(20,4) | |
| advance_peceipts | 预收款项 | decimal(20,4) | |
| insurance_receive_early | 预收保费 | decimal(20,4) | |
| commission_payable | 应付手续费及佣金 | decimal(20,4) | |
| insurance_payable | 应付分保帐款 | decimal(20,4) | |
| salaries_payable | 应付职工薪酬 | decimal(20,4) | |
| taxs_payable | 应交税费 | decimal(20,4) | |
| interest_payable | 应付利息 | decimal(20,4) | |
| proxy_liability | 代理业务负债 | decimal(20,4) | |
| estimate_liability | 预计负债 | decimal(20,4) | |
| compensation_payable | 应付赔付款 | decimal(20,4) | |
| interest_insurance_payable | 应付保单红利 | decimal(20,4) | |
| investment_money | 保户储金及投资款 | decimal(20,4) | |
| not_time_reserve | 未到期责任准备金 | decimal(20,4) | |
| not_decide_reserve | 未决赔款准备金 | decimal(20,4) | |
| live_reserve | 寿险责任准备金 | decimal(20,4) | |
| longterm_reserve | 长期健康险责任准备金 | decimal(20,4) | |
| longterm_loan | 长期借款 | decimal(20,4) | |
| bonds_payable | 应付债券 | decimal(20,4) | |
| independent_account | 独立帐户负债 | decimal(20,4) | |
| deferred_tax_liability | 递延所得税负债 | decimal(20,4) | |
| other_liability | 其他负债 | decimal(20,4) | |
| total_liability | 负债合计 | decimal(20,4) | |
| paidin_capital | 实收资本(或股本) | decimal(20,4) | |
| capital_reserve_fund | 资本公积 | decimal(20,4) | |
| treasury_stock | 减:库存股 | decimal(20,4) | |
| surplus_reserve_fund | 盈余公积 | decimal(20,4) | |
| equities_parent_company_owners | 归属于母公司所有者权益 | decimal(20,4) | |
| retained_profit | 未分配利润 | decimal(20,4) | |
| minority_interests | 少数股东权益 | decimal(20,4) | |
| currency_mis | 外币报表折算差额 | decimal(20,4) | |
| total_owner_equities | 所有者权益合计 | decimal(20,4) | |
| total_liability_equity | 负债和所有者权益总计 | decimal(20,4) | |
| perferred_share_liability | 优先股-负债 | decimal(20,4) | |
| account_receivable | 应收账款 | decimal(20,4) | |
| other_equity_tools | 其他权益工具 | decimal(20,4) | |
| perferred_share_equity | 优先股-权益 | decimal(20,4) | |
| pep_debt_equity | 永续债-权益 | decimal(20,4) | |
| other_comprehensive_income | 其他综合收益 | decimal(20,4) | |
| good_will | 商誉 | decimal(20,4) | |
| shortterm_loan_payable | 应付短期融资款 | decimal(20,4) | |
| accounts_payable | 应付账款 | decimal(20,4) | |
| contract_assets | 合同资产 | decimal(20,4) | |
| hold_sale_asset | 持有待售资产 | decimal(20,4) | |
| bond_invest | 债权投资 | decimal(20,4) | |
| other_bond_invest | 其他债权投资 | decimal(20,4) | |
| other_equity_tools_invest | 其他权益工具投资 | decimal(20,4) | |
| contract_liability | 合同负债 | decimal(20,4) | |
| usufruct_assets | 使用权资产 | decimal(20,4) | |
| liease_liability | 租赁负债 | decimal(20,4) | |
| ordinary_risk_reserve_fund | 一般风险准备 | decimal(20,4) | |
| other_operate_cash_paid | 支付其他与经营活动有关的现金(元) | decimal(20, 4) | |
| subtotal_operate_cash_outflow | 经营活动现金流出小计(元) | decimal(20, 4) | |
| net_operate_cash_flow | 经营活动现金流量净额(元) | decimal(20, 4) | |
| invest_cash_flow | 投资活动产生的现金流量(元) | decimal(20, 4) | |
| invest_withdrawal_cash | 收回投资收到的现金(元) | decimal(20, 4) | |
| invest_proceeds | 取得投资收益收到的现金(元) | decimal(20, 4) | |
| other_cash_from_invest_act | 收到其他与投资活动有关的现金(元) | decimal(20, 4) | |
| gain_from_disposal | 处置固定资产、无形资产和其他长期资产所收回的现金(元) | decimal(20, 4) | |
| subtotal_invest_cash_inflow | 投资活动现金流入小计(元) | decimal(20, 4) | |
| long_deferred_expense | 长期待摊费用(元) | decimal(20, 4) |
报表来源编码
| 编码 | 名称 |
|---|---|
| 321001 | 招募说明书 |
| 321002 | 上市公告书 |
| 321003 | 定期报告 |
| 321004 | 预披露公告 |
| 321005 | 换股报告书 |
| 321099 | 其他 |
from jqdatasdk import finance
finance.run_query(query(finance.STK_FIN_FORCAST).filter(finance.STK_FIN_FORCAST.code==code).limit(n))
获取上市公司业绩预告等信息
参数:
query(finance.STK_FIN_FORCAST):表示从finance.STK_FIN_FORCAST这张表中查询上市公司业绩报告的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_FIN_FORCAST:代表上市公司业绩预告表,收录了上市公司的业绩预告信息,表结构和字段信息如下:
| 字段 | 名称 | 类型 | 注释 |
|---|---|---|---|
| company_id | 公司ID | int | |
| code | 股票代码 | varchar(12) | |
| name | 公司名称 | varchar(64) | |
| end_date | 报告期 | date | |
| report_type_id | 预告期类型编码 | int | 如下 预告期类型编码 |
| report_type | 预告期类型 | varchar(32) | |
| pub_date | 公布日期 | date | |
| type_id | 预告类型编码 | int | 如下 业绩类型编码 |
| type | 预告类型 | varchar(32) | |
| profit_min | 预告净利润(下限) | decimal(22,6) | |
| profit_max | 预告净利润(上限) | decimal(22,6) | |
| profit_last | 去年同期净利润 | decimal(22,6) | |
| profit_ratio_min | 预告净利润变动幅度(下限) | decimal(10,4) | 单位:% |
| profit_ratio_max | 预告净利润变动幅度(上限) | decimal(10,4) | 单位:% |
| content | 预告内容 | varchar(2048) |
预告期类型编码
| 预告期编码 | 预告期类型 |
|---|---|
| 304001 | 一季度预告 |
| 304002 | 中报预告 |
| 304003 | 三季度预告 |
| 304004 | 四季度预告 |
业绩类型编码
| 业绩类型编码 | 305001 | 305002 | 305003 | 305004 | 305005 | 305006 | 305007 |
| 业绩类型 | 业绩大幅上升 | 业绩预增 | 业绩预盈 | 预计扭亏 | 业绩持平 | 无大幅变动 | 业绩 预亏 |
| 业绩类型编码 | 305008 | 305009 | 305010 | 305011 | 305012 | 305013 | |
| 业绩类型 | 业绩大幅下降 | 大幅减亏 | 业绩预降 | 预计减亏 | 不确定 | 取消预测 |
filter(finance.STK_FIN_FORCAST.code==code):指定筛选条件,通过finance.STK_FIN_FORCAST.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_FIN_FORCAST.pub_date>='2015-01-01',表示公告日期在2015年1月1日之后发布的业绩预告;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#查询贵州茅台2015年之后公布的业绩预告信息
from jqdatasdk import finance
q=query(finance.STK_FIN_FORCAST).filter(finance.STK_FIN_FORCAST.code=='600519.XSHG',finance.STK_FIN_FORCAST.pub_date>='2015-01-01')
df=finance.run_query(q)
print(df)
id company_id code name end_date report_type_id \
0 581144 420600519 600519.XSHG 贵州茅台酒股份有限公司 2017-12-31 304004
1 590510 420600519 600519.XSHG 贵州茅台酒股份有限公司 2018-12-31 304004
2 592412 420600519 600519.XSHG 贵州茅台酒股份有限公司 2019-03-31 304001
3 594174 420600519 600519.XSHG 贵州茅台酒股份有限公司 2019-06-30 304002
4 598280 420600519 600519.XSHG 贵州茅台酒股份有限公司 2019-12-31 304004
5 605646 420600519 600519.XSHG 贵州茅台酒股份有限公司 2020-12-31 304004
report_type pub_date type_id type profit_min profit_max \
0 四季度预告 2018-01-31 305001 业绩大幅上升 NaN NaN
1 四季度预告 2019-01-02 305002 业绩预增 3.400000e+10 3.400000e+10
2 一季度预告 2019-04-05 305002 业绩预增 NaN NaN
3 中报预告 2019-07-13 305002 业绩预增 1.990000e+10 1.990000e+10
4 四季度预告 2020-01-02 305002 业绩预增 4.050000e+10 4.050000e+10
5 四季度预告 2021-01-04 305002 业绩预增 4.550000e+10 4.550000e+10
profit_last profit_ratio_min profit_ratio_max \
0 1.671836e+10 58.0 58.0
1 2.707936e+10 25.0 25.0
2 8.506907e+09 30.0 30.0
3 1.576419e+10 26.2 26.2
4 3.520363e+10 15.0 15.0
5 4.120647e+10 10.0 10.0
content
0 预计公司2017年01-12月归属于上市公司股东的净利润与上年同期相比增长58%。
1 预计公司2018年01-12月归属于上市公司股东的净利润为3400000万元,与上年同期相比...
2 预计公司2019年01-03月归属于上市公司股东的净利润与上年同期相比增长30%。
3 预计公司2019年01-06月归属于上市公司股东的净利润为1990000万元,与上年同期相比...
4 预计公司2019年01-12月归属于上市公司股东的净利润为4050000万元,与上年同期相比...
5 预计公司2020年01-12月归属于上市公司股东的净利润为4550000万元,与上年同期相比...
from jqdatasdk import finance
finance.run_query(query(finance.STK_STATUS_CHANGE).filter(finance.STK_STATUS_CHANGE.code==code).limit(n))
获取上市公司已发行未上市、正常上市、实行ST、*ST、暂停上市、终止上市的变动情况等
参数:
query(finance.STK_STATUS_CHANGE):表示从finance.STK_STATUS_CHANGE这张表中查询上市公司的状态变动信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_STATUS_CHANGE:代表上市公司状态变动表,收录了上市公司已发行未上市、正常上市、实行ST、*ST、暂停上市、终止上市的变动情况等,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| company_id | 机构ID | int | |
| code | 股票代码 | varchar(12) | |
| name | 股票名称 | varchar(40) | |
| pub_date | 公告日期 | date | |
| change_date | 变更日期(实际变动日期) | date | |
| public_status_id | 上市状态编码 | int | 如下上市状态编码 |
| public_status | 上市状态 | varchar(32) | |
| change_reason | 变更原因 | varchar(500) | |
| change_type_id | 变更类型编码 | int | 如下变更类型编码 |
| change_type | 变更类型 | varchar(60) | |
| comments | 备注 | varchar(255) |
上市状态编码
| 上市状态编码 | 上市状态 |
|---|---|
| 301001 | 正常上市 |
| 301002 | ST |
| 301003 | *ST |
| 301004 | 暂停上市 |
| 301005 | 进入退市整理期 |
| 301006 | 终止上市 |
| 301007 | 已发行未上市 |
| 301008 | 预披露 |
| 301009 | 未过会 |
| 301010 | 发行失败 |
| 301011 | 暂缓发行 |
| 301012 | 暂缓上市 |
| 301013 | 停止转让 |
| 301014 | 正常转让 |
| 301015 | 实行投资者适当性管理表示 |
| 301099 | 其他 |
| 变更类型编码 | 变更类型 |
|---|---|
| 303001 | 恢复上市 |
| 303002 | 摘星 |
| 303003 | 摘帽 |
| 303004 | 摘星摘帽 |
| 303005 | 披星 |
| 303006 | 戴帽 |
| 303007 | 戴帽披星 |
| 303008 | 拟上市 |
| 303009 | 新股上市 |
| 303010 | 发行失败 |
| 303011 | 暂停上市 |
| 303012 | 终止上市 |
| 303013 | 退市整理 |
| 303014 | 暂缓发行 |
| 303015 | 暂缓上市 |
| 303016 | 实行投资者适当性管理标识 |
| 303017 | 未过会 |
| 303018 | 预披露 |
| 303019 | 正常转让 |
| 303020 | 停止转让 |
| 303021 | 重新上市 |
| 303099 | 其他 |
filter(finance.STK_STATUS_CHANGE.code==code):指定筛选条件,通过finance.STK_STATUS_CHANGE.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_STATUS_CHANGE.pub_date>='2015-01-01',表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
# 指定查询对象为恒瑞医药(600276.XSHG)的上市公司状态变动
q=query(finance.STK_STATUS_CHANGE).filter(finance.STK_STATUS_CHANGE.code=='600276.XSHG').limit(10)
df=finance.run_query(q)
print(df)
id company_id code name pub_date public_status_id \
0 2840 420600276 600276.XSHG 恒瑞医药 2000-10-18 301001
public_status change_date change_reason change_type_id change_type comments
0 正常上市 2000-10-18 NaN 303009 新股上市 NaN
from jqdatasdk import finance
finance.run_query(query(finance.STK_COMPANY_INFO).filter(finance.STK_COMPANY_INFO.code==code).limit(n))
获取上市公司最新公布的基本信息,包含注册资本,主营业务,行业分类等。
参数:
query(finance.STK_COMPANY_INFO):表示从finance.STK_COMPANY_INFO这张表中查询上市公司最新公布的基本信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_COMPANY_INFO:代表上市公司基本信息表,收录了上市公司最新公布的基本信息,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| company_id | 公司ID | int | |
| code | 证券代码 | varchar(12) | 多证券代码的优先级:A股>B股 |
| full_name | 公司名称 | varchar(100) | |
| short_name | 公司简称 | varchar(40) | |
| a_code | A股股票代码 | varchar(12) | |
| b_code | B股股票代码 | varchar(12) | |
| h_code | H股股票代码 | varchar(12) | |
| fullname_en | 英文名称 | varchar(100) | |
| shortname_en | 英文简称 | varchar(40) | |
| legal_representative | 法人代表 | varchar(40) | |
| register_location | 注册地址 | varchar(100) | |
| office_address | 办公地址 | varchar(150) | |
| zipcode | 邮政编码 | varchar(10) | |
| register_capital | 注册资金 | decimal(20,4) | 单位:万元 |
| currency_id | 货币编码 | int | |
| currency | 货币名称 | varchar(32) | |
| establish_date | 成立日期 | date | |
| website | 机构网址 | varchar(80) | |
| 电子信箱 | varchar(80) | ||
| contact_number | 联系电话 | varchar(60) | |
| fax_number | 联系传真 | varchar(60) | |
| main_business | 主营业务 | varchar(500) | |
| business_scope | 经营范围 | varchar(4000) | |
| description | 机构简介 | varchar(4000) | |
| tax_number | 税务登记号 | varchar(50) | |
| license_number | 法人营业执照号 | varchar(40) | |
| pub_newspaper | 指定信息披露报刊 | varchar(120) | |
| pub_website | 指定信息披露网站 | varchar(120) | |
| secretary | 董事会秘书 | varchar(40) | |
| secretary_number | 董秘联系电话 | varchar(60) | |
| secretary_fax | 董秘联系传真 | varchar(60) | |
| secretary_email | 董秘电子邮箱 | varchar(80) | |
| security_representative | 证券事务代表 | varchar(40) | |
| province_id | 所属省份编码 | varchar(12) | |
| province | 所属省份 | varchar(60) | |
| city_id | 所属城市编码 | varchar(12) | |
| city | 所属城市 | varchar(60) | |
| industry_id | 行业编码 | varchar(12) | 证监会行业分类 |
| industry_1 | 行业一级分类 | varchar(60) | |
| industry_2 | 行业二级分类 | varchar(60) | |
| cpafirm | 会计师事务所 | varchar(200) | |
| lawfirm | 律师事务所 | varchar(200) | |
| ceo | 总经理 | varchar(100) | |
| comments | 备注 | varchar(300) |
filter(finance.STK_COMPANY_INFO.code==code):指定筛选条件,通过finance.STK_COMPANY_INFO.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_COMPANY_INFO.city=='北京市',表示所属城市为北京市;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
# 指定查询对象为恒瑞医药(600276.XSHG)的上市公司基本信息,限定返回条数为10
q=query(finance.STK_COMPANY_INFO).filter(finance.STK_COMPANY_INFO.code=='600276.XSHG').limit(10)
df=finance.run_query(q)
print(df)
id company_id code full_name short_name a_code b_code \
0 2474 420600276 600276.XSHG 江苏恒瑞医药股份有限公司 恒瑞医药 600276 NaN
h_code fullname_en shortname_en \
0 NaN Jiangsu Hengrui Medicine Co., Ltd. Hengrui Medicine
... province city_id city \
0 ... 江苏 320700 连云港市
industry_id industry_1 industry_2 cpafirm \
0 C27 制造业 医药制造业 江苏苏亚金诚会计师事务所(特殊普通合伙)
lawfirm ceo comments
0 浩天律师事务所 周云曙 公司是国内少有的在研发方面投入较大的企业,现有多个品种在研,不仅在国内建 立了研究机构,投入较...
[1 rows x 45 columns]
from jqdatasdk import finance
finance.run_query(query(finance.STK_LIST).filter(finance.STK_LIST.code==code).limit(n))
获取沪深A股的上市信息,包含上市日期、交易所、发行价格、初始上市数量等
参数:
query(finance.STK_LIST):表示从STK_LIST这张表中查询沪深A股的上市信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_LIST:代表股票上市信息表,收录了沪深A股的上市信息,包含上市日期、交易所、发行价格、初始上市数量等,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| code | 证券代码 | varchar(12) | |
| name | 证券简称 | varchar(40) | |
| short_name | 拼音简称 | varchar(20) | |
| category | 证券类别 | varchar(4) | A/B |
| exchange | 交易所 | varchar(12) | XSHG/XSHE |
| start_date | 上市日期 | date | |
| end_date | 终止上市日期 | date | |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| ipo_shares | 初始上市数量 | decimal(20,2) | 股 |
| book_price | 发行价格 | decimal(20,4) | 元 |
| par_value | 面值 | decimal(20,4) | 元 |
| state_id | 上市状态编码 | int | |
| state | 上市状态 | varchar(32) |
filter(finance.STK_LIST.code==code):指定筛选条件,通过finance.STK_LIST.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_LIST.start_date>='2015-01-01',表示筛选上市日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
# 指定查询对象为格力电器(000651.XSHG)的上市信息
q=query(finance.STK_LIST).filter(finance.STK_LIST.code=='000651.XSHE')
df=finance.run_query(q)
print(df)
id code name short_name category exchange start_date end_date \
0 1789 000651.XSHE 格力电器 GLDQ A XSHE 1996-11-18 None
company_id company_name ipo_shares book_price par_value state_id state
0 430000651 珠海格力电器股份有限公司 21000000.0 2.5 1.0 301001 正常上市
from jqdatasdk import finance
finance.run_query(query(finance.STK_NAME_HISTORY).filter(finance.STK_NAME_HISTORY.code==code).limit(n))
获取在A股市场和B股市场上市的股票简称的变更情况
参数:
query(finance.STK_NAME_HISTORY):表示从finance.STK_NAME_HISTORY这张表中查询股票简称的变更情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_NAME_HISTORY:代表股票简称变更表,收录了在A股市场和B股市场上市的股票简称的变更情况,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| code | 股票代码 | varchar(12) | |
| company_id | 公司ID | int | |
| new_name | 新股票简称 | varchar(40) | |
| new_spelling | 新英文简称 | varchar(40) | |
| org_name | 原证券简称 | varchar(40) | |
| org_spelling | 原证券英文简称 | varchar(40) | |
| start_date | 开始日期 | date | |
| pub_date | 公告日期 | date | |
| reason | 变更原因 | varchar(255) |
filter(finance.STK_NAME_HISTORY.code==code):指定筛选条件,通过finance.STK_NAME_HISTORY.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_NAME_HISTORY.pub_date>='2015-01-01',表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
# 指定查询对象为恒瑞医药(600276.XSHG)的股票简称变更信息
q=query(finance.STK_NAME_HISTORY).filter(finance.STK_NAME_HISTORY.code=='600276.XSHG')
df=finance.run_query(q)
print(df)
id code company_id new_name new_spelling org_name org_spelling \
0 1459 600276.XSHG 420600276 恒瑞医药 HRYY NaN NaN
1 3588 600276.XSHG 420600276 G恒瑞 GHR NaN NaN
2 4007 600276.XSHG 420600276 恒瑞医药 HRYY NaN NaN
start_date pub_date reason
0 2000-10-18 2000-10-18 NaN
1 2006-06-20 2006-06-15 NaN
2 2006-10-09 2006-09-28 NaN
from jqdatasdk import finance
finance.run_query(query(finance.STK_EMPLOYEE_INFO).filter(finance.STK_EMPLOYEE_INFO.code==code).limit(n))
获取上市公司在公告中公布的员工情况,包括员工人数、学历等信息
参数:
query(finance.STK_EMPLOYEE_INFO):表示从finance.STK_EMPLOYEE_INFO这张表中查询上市公司员工情况的字段信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_EMPLOYEE_INFO:代表上市公司员工情况表,收录了上市公司在公告中公布的员工情况,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| company_id | 公司ID | int | |
| code | 证券代码 | varchar(12) | '600276.XSHG','000001.XSHE' |
| name | 证券名称 | varchar(64) | |
| end_date | 报告期截止日 | date | 统计截止该报告期的员工信息 |
| pub_date | 公告日期 | date | |
| employee | 在职员工总数 | int | 人 |
| retirement | 离退休人员 | int | 人 |
| graduate_rate | 研究生以上人员比例 | decimal(10,4) | % |
| college_rate | 大学专科以上人员比例 | decimal(10,4) | % |
| middle_rate | 中专及以下人员比例 | decimal(10,4) | % |
filter(finance.STK_EMPLOYEE_INFO.code==code):指定筛选条件,通过finance.STK_EMPLOYEE_INFO.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EMPLOYEE_INFO.pub_date>='2015-01-01',表示公告日期大于2015年1月1日上市公司公布的员工信息;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
# 指定查询对象为恒瑞医药(600276.XSHG)的员工信息且公告日期大于2015年1月1日,限定返回条数为4
q=query(finance.STK_EMPLOYEE_INFO).filter(finance.STK_EMPLOYEE_INFO.code=='600276.XSHG',finance.STK_EMPLOYEE_INFO.pub_date>='2015-01-01').limit(4)
df=finance.run_query(q)
print(df)
id company_id code name end_date pub_date employee \
0 21542 420600276 600276.XSHG 恒瑞医药 2014-12-31 2015-03-31 8770
1 21543 420600276 600276.XSHG 恒瑞医药 2015-12-31 2016-04-13 10191
2 21544 420600276 600276.XSHG 恒瑞医药 2016-12-31 2017-03-11 12653
3 34881 420600276 600276.XSHG 恒瑞医药 2017-12-31 2018-04-16 14864
retirement graduate_rate college_rate middle_rate
0 None 7.4344 None 55.1083
1 None 10.0677 None 50.5937
2 None 10.8907 None 45.9338
3 None 11.3294 None 41.9806
from jqdatasdk import finance
finance.run_query(query(finance.STK_MANAGEMENT_INFO).filter(finance.STK_MANAGEMENT_INFO.code==code).order_by(finance.STK_MANAGEMENT_INFO.pub_date).limit(n)
记录上市公司管理人员的任职情况。
参数:
query(finance.STK_MANAGEMENT_INFO):表示从finance.STK_MANAGEMENT_INFO这张表中查询上市公司管理人员任职情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_MANAGEMENT_INFO:代表了公司管理人员任职情况表,收录了上市公司管理人员的任职情况,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| person_id | 个人ID | int | |
| name | 姓名 | varchar(40) | |
| title_class_id | 职务类别编码 | int | |
| title_class | 职务类别 | varchar(60) | |
| title | 职务名称 | varchar(60) | |
| start_date | 任职日期 | date | |
| leave_date | 离职日期 | date | |
| leave_reason | 离职原因 | varchar(255) | |
| on_job | 是否在职 | char(1) | 0-否,1-是 |
| gender | 性别 | char(1) | F-女;M-男 |
| birth_year | 出生年份 | varchar(8) | |
| highest_degree_id | 最高学历编码 | int | |
| highest_degree | 最高学历 | varchar(60) | |
| title_level_id | 职级编码 | int | |
| titile_level | 职级 | varchar(120) | 职级代表工作的难易程度、责任轻重以及所需的资格条件相同 或充分相似的职系的集合。如初级、中级、高级。 |
| profession_certificate | 专业技术资格 | varchar(120) | |
| profession_certificate | 专业技术资格 | varchar(120) | |
| nationality | 国籍 | varchar(60) | |
| security_career_start_year | 从事证券业开始年份 | varchar(8) | |
| resume | 个人简历 | varchar(3000) |
返回结果:
注意:
**为了防止返回数据量过大, 我们每次最多返回5000行 **
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_MANAGEMENT_INFO).filter(finance.STK_MANAGEMENT_INFO.code=='000001.XSHE').order_by(finance.STK_MANAGEMENT_INFO.pub_date).limit(5)
df=finance.run_query(q)
print(df)
# 输出
id company_id company_name code pub_date person_id \
0 138262 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201309346
1 138263 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201309346
2 138264 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201309346
3 138265 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201313341
4 138266 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201313342
name title_class_id title_class title \
0 肖遂宁 314001 董事会成员 董事
1 肖遂宁 314003 高管成员 行长
2 肖遂宁 314001 董事会成员 董事长
3 罗伯特·巴内姆 314001 董事会成员 独立董事
4 孙昌基 314001 董事会成员 独立董事
... highest_degree_id \
0 ... 316004.0
1 ... 316004.0
2 ... 316004.0
3 ... 316002.0
4 ... NaN
highest_degree title_level_id title_level profession_certificate_id \
0 大专及其他 317003.0 高级 None
1 大专及其他 317003.0 高级 None
2 大专及其他 317003.0 高级 None
3 硕士研究生 NaN None None
4 None 317003.0 高级 None
profession_certificate nationality_id nationality \
0 None None None
1 None None None
2 None None None
3 None None None
4 None None None
security_career_start_year \
0 None
1 None
2 None
3 None
4 None
resume
0 肖遂宁先生:出生于1948年2月,高级经济师。曾任深圳发展银行总行行长、董事长,平安银行股份...
1 肖遂宁先生:出生于1948年2月,高级经济师。曾任深圳发展银行总行行长、董事长,平安银行股份...
2 肖遂宁先生:出生于1948年2月,高级经济师。曾任深圳发展银行总行行长、董事长,平安银行股份...
3 罗伯特巴内姆先生(RobertT.Barnum)自1997年至今在美国加州的PokerFla...
4 孙昌基,男,研究员级高级工程师。1942年8月20日出生于上海,1966年9月毕业于清华大学...
[5 rows x 26 columns]
from jqdatasdk import finance
finance.run_query(query(finance.STK_XR_XD).filter(finance.STK_XR_XD.code==code).order_by(finance.STK_XR_XD.report_date).limit(n)
记录由上市公司年报、中报、一季报、三季报统计出的分红转增情况。
参数:
query(finance.STK_XR_XD):表示从finance.STK_XR_XD这张表中查询上市公司除权除息的数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_XR_XD:代表除权除息数据表,记录由上市公司年报、中报、一季报、三季报统计出的分红转增情况。表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 能否为空 | 含义 |
| code | 股票代码 | varchar(12) | N | 加后缀 |
| company_id | 机构ID | int | N | |
| company_name | 机构名称 | varchar(100) | ||
| report_date | 分红报告期 | date | N | 一般为:一季报:YYYY-03-31;中报:YYYY-06-30;三季报:YYYY-09-30;年报:YYYY-12-31同时也可能存在其他日期 |
| bonus_type | 分红类型 | varchar(60) | 201102新增,类型如下:年度分红 中期分红 季度分红 特别分红 向公众股东赠送 股改分红 | |
| board_plan_pub_date | 董事会预案公告日期 | date | ||
| board_plan_bonusnote | 董事会预案分红说明 | varchar(500) | 每10股送XX转增XX派XX元 | |
| distributed_share_base_board | 分配股本基数(董事会) | decimal(20,4) | 单位:万股 | |
| shareholders_plan_pub_date | 股东大会预案公告日期 | date | ||
| shareholders_plan_bonusnote | 股东大会预案分红说明 | varchar(200) | ||
| distributed_share_base_shareholders | 分配股本基数(股东大会�� | decimal(20,4) | 单位:万股 | |
| implementation_pub_date | 实施方案公告日期 | date | ||
| implementation_bonusnote | 实施方案分红说明 | varchar(200) | 维护规则: 每10股送XX转增XX派XX元 或:不分配不转赠 | |
| distributed_share_base_implement | 分配股本基数(实施) | 单位:万股 | ||
| dividend_ratio | 送股比例 | decimal(20,4) | 每10股送XX股 | |
| transfer_ratio | 转增比例 | decimal(20,4) | 每10股转增 XX股 ; | |
| bonus_ratio_rmb | 派息比例(人民币) | decimal(20,4) | 每10股派 XX。说明:这里的比例为最新的分配比例,预案公布的时候,预案的分配基数在此维护,如果股东大会或实施方案发生变化,再次进行修改,保证此处为最新的分配基数 | |
| bonus_ratio_usd | 派息比例(美元) | decimal(20,4) | 每10股派 XX。说明:这里的比例为最新的分配比例,预案公布的时候,预案的分配基数在此维护,如果股东大会或实施方案发生变化,再次进行修改,保证此处为最新的分配基数 如果这里只告诉了汇率,没有公布具体的外币派息,则要计算出; | |
| bonus_ratio_hkd | 派息比例(港币) | decimal(20,4) | 每10股派 XX。说明:这里的比例为最新的分配比例,预案公布的时候,预案的分配基数在此维护,如果股东大会或实施方案发生变化,再次进行修改,保证此处为最新的分配基数 如果这里只告诉了汇率,没有公布具体的外币派息,则要计算出; | |
| at_bonus_ratio_rmb | 税后派息比例(人民币) | decimal(20,4) | ||
| exchange_rate | 汇率 | decimal(20,4) | 当日以外币(美元或港币)计价的B股价格兑换成人民币的汇率 | |
| dividend_number | 送股数量 | decimal(20,4) | 单位:万股 | |
| transfer_number | 转增数量 | decimal(20,4) | 单位:万股 | |
| bonus_amount_rmb | 派息金额(人民币) | decimal(20,4) | 单位:万元 | |
| a_registration_date | A股股权登记日 | date | ||
| b_registration_date | B股股权登记日 | date | B股股权登记存在最后交易日,除权基准日以及股权登记日三个日期,由于B股实行T+3制度,最后交易日持有的股份需要在3个交易日之后确定股东身份,然后在除权基准日进行除权。 | |
| a_xr_date | A股除权日 | date | ||
| b_xr_baseday | B股除权基准日 | date | 根据B股实行T+3交收制度,则B股的“股权登记日”是“最后交易日”后的第 三个交易日,直至“股权登记日”这一日为止,B股投资者的股权登记才告完成,也 就意味着B股股份至股权登记日为止,才真正划入B股投资者的名下。 | |
| b_final_trade_date | B股最后交易日 | date | ||
| a_bonus_date | 派息日(A) | date | ||
| b_bonus_date | 派息日(B) | date | ||
| dividend_arrival_date | 红股到帐日 | date | ||
| a_increment_listing_date | A股新增股份上市日 | date | ||
| b_increment_listing_date | B股新增股份上市日 | date | ||
| total_capital_before_transfer | 送转前总股本 | decimal(20,4) | 单位:万股 | |
| total_capital_after_transfer | 送转后总股本 | decimal(20,4) | 单位:万股 | |
| float_capital_before_transfer | 送转前流通股本 | decimal(20,4) | 单位:万股 | |
| float_capital_after_transfer | 送转后流通股本 | decimal(20,4) | 单位:万股 | |
| note | 备注 | varchar(500) | ||
| a_transfer_arrival_date | A股转增股份到帐日 | date | ||
| b_transfer_arrival_date | B股转增股份到帐日 | date | ||
| b_dividend_arrival_date | B股送红股到帐日 | date | 20080801新增 | |
| note_of_no_dividend | 有关不分配的说明 | varchar(1000) | ||
| plan_progress_code | 方案进度编码 | int | ||
| plan_progress | 方案进度 | varchar(60) | 董事会预案 实施方案 股东大会预案 取消分红 公司预案 | |
| bonus_cancel_pub_date | 取消分红公告日期 | date |
filter(finance.STK_XR_XD.report_date==report_date):指定筛选条件,通过finance.STK_XR_XD.report_date==report_date可以指定你想要查询的分红报告期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_XR_XD.code=='000001.XSHE',表示筛选股票编码为000001.XSHE的数据; 多个筛选条件用英文逗号分隔。
order_by(finance.STK_XR_XD.report_date): 将返回结果按分红报告期排序
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
为了防止返回数据量过大, 我们每次最多返回5000行
不能进行连表查询,即同时查询多张表的数据
示例:
q=query(finance.STK_XR_XD).filter(finance.STK_XR_XD.report_date>='2015-01-01').limit(5)
df = finance.run_query(q)
print(df)
id company_id company_name code report_date bonus_type \
0 19 300000062 广东德美精细化工集团股份有限公司 002054.XSHE 2015-06-30 中期分红
1 20 300000062 广东德美精细化工集团股份有限公司 002054.XSHE 2015-12-31 年度分红
2 21 300000062 广东德美精细化工集团股份有限公司 002054.XSHE 2016-06-30 中期分红
3 22 300000062 广东德美精细化工集团股份有限公司 002054.XSHE 2016-12-31 年度分红
4 23 300000062 广东德美精细化工集团股份有限公司 002054.XSHE 2017-06-30 中期分红
board_plan_pub_date board_plan_bonusnote distributed_share_base_board \
0 2015-08-29 不分配不转增 NaN
1 2016-04-27 10派1.2元(含税) 41923.0828
2 2016-08-27 不分配不转增 NaN
3 2017-04-25 10派1.2元(含税) 41923.0828
4 2017-08-29 不分配不转增 NaN
shareholders_plan_pub_date ... \
0 None ...
1 2016-05-18 ...
2 None ...
3 2017-05-17 ...
4 None ...
float_capital_before_transfer float_capital_after_transfer note \
0 None None None
1 None None None
2 None None None
3 None None None
4 None None None
a_transfer_arrival_date b_transfer_arrival_date b_dividend_arrival_date \
0 None None None
1 None None None
2 None None None
3 None None None
4 None None None
note_of_no_dividend plan_progress_code plan_progress bonus_cancel_pub_date
0 None 313001 董事会预案 None
1 None 313002 实施方案 None
2 None 313001 董事会预案 None
3 None 313002 实施方案 None
4 None 313001 董事会预案 None
[5 rows x 47 columns]
from jqdatasdk import finance
finance.run_query(query(finance.STK_SHAREHOLDER_TOP10).filter(finance.STK_SHAREHOLDER_TOP10.code==code).limit(n))
获取上市公司前十大股东的持股情况,包括持股数量,所持股份性质,变动原因等。
参数:
query(finance.STK_SHAREHOLDER_TOP10):表示从finance.STK_SHAREHOLDER_TOP10这张表中查询上市公司前十大股东的持股情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_SHAREHOLDER_TOP10:代表上市公司十大股东表,收录了上市公司前十大股东的持股情况,包括持股数量,所持股份性质,变动原因等。表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | 在此是指上市公司的名称 |
| code | 股票代码 | varchar(12) | |
| end_date | 截止日期 | date | 公告中统计的十大股东截止到某一日期的更新情况。 |
| pub_date | 公告日期 | date | 公告中会提到十大股东的更新情况。 |
| change_reason_id | 变动原因编码 | int | |
| change_reason | 变动原因 | varchar(120) | |
| shareholder_rank | 股东名次 | int | |
| shareholder_name | 股东名称 | varchar(200) | |
| shareholder_name_en | 股东名称(英文) | varchar(200) | |
| shareholder_id | 股东ID | int | |
| shareholder_class_id | 股东类别编码 | int | |
| shareholder_class | 股东类别 | varchar(150) | 包括:券商、社保基金、证券投资基金、保险公司、QFII、其它机构、个人等 |
| share_number | 持股数量 | decimal(10,4) | 股 |
| share_ratio | 持股比例 | decimal(10,4) | % |
| sharesnature_id | 股份性质编码 | int | |
| sharesnature | 股份性质 | varchar(120) | 包括:国家股、法人股、个人股外资股、流通A股、流通B股、职工股、发起人股、转配股等 |
| share_pledge_freeze | 股份质押冻结数量 | decimal(10,4) | 如果股份质押数量和股份冻结数量任意一个字段有值,则等于后两者之和 |
| share_pledge | 股份质押数量 | decimal(10,4) | |
| share_freeze | 股份冻结数量 | decimal(10,4) |
filter(finance.STK_SHAREHOLDER_TOP10.code==code):指定筛选条件,通过finance.STK_SHAREHOLDER_TOP10.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHAREHOLDER_TOP10.pub_date>='2015-01-01',表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为恒瑞医药(600276.XSHG)的十大股东情况,限定返回条数为10条
q=query(finance.STK_SHAREHOLDER_TOP10).filter(finance.STK_SHAREHOLDER_TOP10.code=='600276.XSHG',finance.STK_SHAREHOLDER_TOP10.pub_date>'2015-01-01').limit(10)
df=finance.run_query(q)
print(df)
id company_name company_id code end_date pub_date \
0 753808 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
1 753809 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
2 753810 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
3 753811 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
4 753812 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
5 753813 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
6 753814 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
7 753815 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
8 753816 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
9 753817 江苏恒瑞医药股份有限公司 420600276 600276.XSHG 2014-12-31 2015-03-31
change_reason_id change_reason shareholder_rank \
0 306019 定期报告 4
1 306019 定期报告 9
2 306019 定期报告 10
3 306019 定期报告 2
4 306019 定期报告 3
5 306019 定期报告 5
6 306019 定期报告 6
7 306019 定期报告 7
8 306019 定期报告 8
9 306019 定期报告 1
shareholder_name ... shareholder_id \
0 中国医药工业有限公司 ... 100014895
1 交通银行-博时新兴成长股票型证券投资基金 ... 120050009
2 新华人寿保险股份有限公司-分红-团体分红-018L-FH001沪 ... 100000383
3 西藏达远投资有限公司 ... 100097529
4 连云港恒创医药科技有限公司 ... 100008678
5 江苏金海投资有限公司 ... 100008257
6 香港中央结算有限公司 ... 100011907
7 中国农业银行股份有限公司-国泰国证医药卫生行业指数分级证券投资基金 ... 120160219
8 兴业银行股份有限公司-兴全趋势投资混合型证券投资基金 ... 120163402
9 江苏恒瑞医药集团有限公司 ... 100008682
shareholder_class_id shareholder_class share_number share_ratio \
0 307099 其他机构 73000000.0 4.85
1 307003 证券投资基金 10107880.0 0.67
2 307014 保险投资组合 9820232.0 0.65
3 307099 其他机构 240536692.0 15.99
4 307099 其他机构 112278458.0 7.47
5 307099 其他机构 53474244.0 3.56
6 307099 其他机构 30821240.0 2.05
7 307003 证券投资基金 12489920.0 0.83
8 307003 证券投资基金 11999901.0 0.8
9 307099 其他机构 365776169.0 24.32
sharesnature_id sharesnature share_pledge_freeze share_pledge share_freeze
0 308007 流通A股 NaN NaN NaN
1 308007 流通A股 NaN NaN NaN
2 308007 流通A股 NaN NaN NaN
3 308007 流通A股 NaN NaN NaN
4 308007 流通A股 NaN NaN NaN
5 308007 流通A股 53474244.0 53474244.0 NaN
6 308007 流通A股 NaN NaN NaN
7 308007 流通A股 NaN NaN NaN
8 308007 流通A股 NaN NaN NaN
9 308007 流通A股 NaN NaN NaN
from jqdatasdk import finance
finance.run_query(query(finance.STK_SHAREHOLDER_FLOATING_TOP10).filter(finance.STK_SHAREHOLDER_FLOATING_TOP10.code==code).limit(n))
获取上市公司前十大流通股东的持股情况,包括持股数量,所持股份性质,变动原因等。
参数:
query(finance.STK_SHAREHOLDER_FLOATING_TOP10):表示从finance.STK_SHAREHOLDER_FLOATING_TOP10这张表中查询上市公司前十大流通股东的持股情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_SHAREHOLDER_FLOATING_TOP10:代表上市公司十大流通股东表,收录了上市公司前十大流通股东的持股情况,包括持股数量,所持股份性质,变动原因等。表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| end_date | 截止日期 | date | |
| pub_date | 公告日期 | date | |
| change_reason_id | 变动原因编码 | int | |
| change_reason | 变动原因 | varchar(120) | |
| shareholder_rank | 股东名次 | int | |
| shareholder_id | 股东ID | int | |
| shareholder_name | 股东名称 | varchar(200) | |
| shareholder_name_en | 股东名称(英文) | varchar(150) | |
| shareholder_class_id | 股东类别编码 | int | |
| shareholder_class | 股东类别 | varchar(150) | |
| share_number | 持股数量 | int | 股 |
| share_ratio | 持股比例 | decimal(10,4) | % |
| sharesnature_id | 股份性质编码 | int | |
| sharesnature | 股份性质 | varchar(120) |
filter(finance.STK_SHAREHOLDER_FLOATING_TOP10.code==code):指定筛选条件,通过finance.STK_SHAREHOLDER_FLOATING_TOP10.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHAREHOLDER_FLOATING_TOP10.pub_date>='2015-01-01',表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为恒瑞医药(600276.XSHG)的十大流通股东情况,返回条数为10条
q=query(finance.STK_SHAREHOLDER_FLOATING_TOP10).filter(finance.STK_SHAREHOLDER_FLOATING_TOP10.code=='600276.XSHG',finance.STK_SHAREHOLDER_FLOATING_TOP10.pub_date>'2015-01-01').limit(10)
df=finance.run_query(q)
print(df)
id company_id company_name code end_date pub_date \
0 585806 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
1 585807 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
2 585808 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
3 585809 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
4 585810 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
5 585811 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
6 585812 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
7 585813 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
8 585814 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
9 585815 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2014-12-31 2015-03-31
change_reason_id change_reason shareholder_rank shareholder_id \
0 306019 定期报告 1 100008682
1 306019 定期报告 2 100097529
2 306019 定期报告 3 100008678
3 306019 定期报告 4 100014895
4 306019 定期报告 5 100008257
5 306019 定期报告 6 100011907
6 306019 定期报告 7 120160219
7 306019 定期报告 8 120163402
8 306019 定期报告 9 120050009
9 306019 定期报告 10 100000383
shareholder_name shareholder_name_en \
0 江苏恒瑞医药集团有限公司 None
1 西藏达远投资有限公司 None
2 连云港恒创医药科技有限公司 None
3 中国医药工业有限公司 None
4 江苏金海投资有限公司 None
5 香港中央结算有限公司 None
6 中国农业银行股份有限公司-国泰国证医药卫生行业指数分级证券投资基金 None
7 兴业银行股份有限公司-兴全趋势投资混合型证券投资基金 None
8 交通银行-博时新兴成长股票型证券投资基金 None
9 新华人寿保险股份有限公司-分红-团体分红-018L-FH001沪 None
shareholder_class_id shareholder_class share_number share_ratio \
0 307099 其他机构 332523790.0 22.109
1 307099 其他机构 229034683.0 15.228
2 307099 其他机构 102094053.0 6.788
3 307099 其他机构 70203316.0 4.668
4 307099 其他机构 50367370.0 3.349
5 307099 其他机构 17207872.0 1.144
6 307003 证券投资基金 15161505.0 1.008
7 307003 证券投资基金 10299800.0 0.685
8 307003 证券投资基金 9929500.0 0.660
9 307014 保险投资组合 9296487.0 0.618
sharesnature_id sharesnature
0 308007 流通A股
1 308007 流通A股
2 308007 流通A股
3 308007 流通A股
4 308007 流通A股
5 308007 流通A股
6 308007 流通A股
7 308007 流通A股
8 308007 流通A股
9 308007 流通A股
from jqdatasdk import finance
finance.run_query(query(finance.STK_SHARES_PLEDGE).filter(finance.STK_SHARES_PLEDGE.code==code).limit(n))
获取上市公司股东股份的质押情况。
参数:
query(finance.STK_SHARES_PLEDGE):表示从finance.STK_SHARES_PLEDGE这张表中查询上市公司股东股份的质押情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_SHARES_PLEDGE:代表上市公司股东股份质押表,收录了上市公司股东股份的质押情况。表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| pledgor_id | 出质人ID | int | |
| pledgor | 出质人 | varchar(100) | 将资产质押出去的人成为出质人 |
| pledgee | 质权人 | varchar(100) | |
| pledge_item | 质押事项 | varchar(500) | 质押原因,记录借款人、借款金额、币种等内容 |
| pledge_nature_id | 质押股份性质编码 | int | |
| pledge_nature | 质押股份性质 | varchar(120) | |
| pledge_number | 质押数量 | int | 股 |
| pledge_total_ratio | 占总股本比例 | decimal(10,4) | % |
| start_date | 质押起始日 | date | |
| end_date | 质押终止日 | date | |
| unpledged_date | 质押解除日 | date | |
| unpledged_number | 质押解除数量 | int | |
| unpledged _detail | 解除质押说明 | varchar(1000) | |
| is_buy_back | 是否质押式回购交易 | char(1) |
filter(finance.STK_SHARES_PLEDGE.code==code):指定筛选条件,通过finance.STK_SHARES_PLEDGE.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHARES_PLEDGE.pub_date>='2015-01-01',表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为万科(000002.XSHE)的股东股份质押情况,返回条数为5条
q=query(finance.STK_SHARES_PLEDGE).filter(finance.STK_SHARES_PLEDGE.code=='000002.XSHE',finance.STK_SHARES_PLEDGE.pub_date>'2015-01-01').limit(5)
df=finance.run_query(q)
print(df)
id company_id company_name code pub_date pledgor_id \
0 82514 430000002 万科企业股份有限公司 000002.XSHE 2015-11-11 None
1 82515 430000002 万科企业股份有限公司 000002.XSHE 2016-07-14 None
2 82516 430000002 万科企业股份有限公司 000002.XSHE 2017-03-08 None
3 82517 430000002 万科企业股份有限公司 000002.XSHE 2017-03-08 None
4 82518 430000002 万科企业股份有限公司 000002.XSHE 2017-03-14 None
pledgor pledgee \
0 深圳市钜盛华股份有限公司 鹏华资产管理(深圳)有限公司
1 深圳市钜盛华股份有限公司 中国银河证券股份有限公司
2 深圳市钜盛华股份有限公司 鹏华资产管理(深圳)有限公司
3 深圳市钜盛华股份有限公司 鹏华资产管理(深圳)有限公司
4 深圳市钜盛华股份有限公司 平安证券股份有限公司
pledge_item pledge_nature_id \
0 本公司股东深圳市钜盛华股份有限公司将持有的公司728,000,000股无限售流通A股质押给鹏... NaN
1 本公司股东深圳市钜盛华股份有限公司将持有的本公司37357300股股权质押给中国银河证券股份... 308007.0
2 本公司股东深圳市钜盛华股份有限公司将2015年10月21日质押给鹏华资产管理(深圳)有限公司... 308007.0
3 本公司股东深圳市钜盛华股份有限公司将2015年10月28日质押给鹏华资产管理(深圳)有限公司... 308007.0
4 本公司第一大股东深圳市钜盛华股份有限公司将持有的本公司182000000股流通A股股权质押给... 308007.0
pledge_nature pledge_number pledge_total_ratio start_date end_date \
0 None 728000000.0 6.59 2015-10-15 None
1 流通A股 37357300.0 NaN 2016-07-12 None
2 流通A股 NaN NaN 2015-10-21 2017-03-03
3 流通A股 NaN NaN 2015-10-28 2017-03-03
4 流通A股 182000000.0 NaN 2017-03-09 None
unpledged_date unpledged_number unpledged_detail is_buy_back
0 None NaN None None
1 None NaN None 1
2 2017-03-03 91000000.0 None None
3 2017-03-03 91000000.0 None None
4 None NaN None 1
from jqdatasdk import finance
finance.run_query(query(finance.STK_SHARES_FROZEN).filter(finance.STK_SHARES_FROZEN.code==code).limit(n))
获取上市公司股东股份的冻结情况
参数:
query(finance.STK_SHARES_FROZEN):表示从finance.STK_SHARES_FROZEN这张表中查询股东股份的冻结情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_SHARES_FROZEN:代表上市公司股东股份冻结表,收录了上市公司股东股份的冻结情况,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| pub_date | 公告日期 | date | |
| code | 股票代码 | varchar(12) | |
| frozen_person_id | 被冻结当事人ID | int | |
| frozen_person | 被冻结当事人 | varchar(100) | |
| frozen_reason | 冻结事项 | varchar(600) | |
| frozen_share_nature_id | 被冻结股份性质编码 | int | |
| frozen_share_nature | 被冻结股份性质 | varchar(120) | 包括:国家股、法人股、个人股、外资股、 流通A股、流通B股、职工股、发起人股、转配股 |
| frozen_number | 冻结数量 | int | 股 |
| frozen_total_ratio | 占总股份比例 | decimal(10,4) | % |
| freeze_applicant | 冻结申请人 | varchar(100) | |
| freeze_executor | 冻结执行人 | varchar(100) | |
| start_date | 冻结起始日 | date | |
| end_date | 冻结终止日 | date | |
| unfrozen_date | 解冻日期 | date | 分批解冻的为最近一次解冻日期 |
| unfrozen_number | 累计解冻数量 | int | 原解冻数量 |
| unfrozen_detail | 解冻处理说明 | varchar(1000) | 冻结过程及结束后的处理结果 |
filter(finance.STK_SHARES_FROZEN.code==code):指定筛选条件,通过finance.STK_SHARES_FROZEN.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHARES_FROZEN.pub_date>='2015-01-01',表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为文一科技(600520.XSHG)的股东股份冻结情况,返回条数为5条
q=query(finance.STK_SHARES_FROZEN).filter(finance.STK_SHARES_FROZEN.code=='600520.XSHG',finance.STK_SHARES_FROZEN.pub_date>'2015-01-01').limit(5)
df=finance.run_query(q)
print(df)
id company_id company_name pub_date code frozen_person_id \
0 2360 420600520 铜陵中发三佳科技股份有限公司 2015-07-11 600520.XSHG None
1 2361 420600520 铜陵中发三佳科技股份有限公司 2015-08-13 600520.XSHG None
2 2362 420600520 铜陵中发三佳科技股份有限公司 2015-09-22 600520.XSHG None
3 2363 420600520 铜陵中发三佳科技股份有限公司 2016-03-24 600520.XSHG None
4 2364 420600520 铜陵中发三佳科技股份有限公司 2016-04-30 600520.XSHG None
frozen_person frozen_reason \
0 铜陵市三佳电子(集团)有限责任公司 本公司控股股东铜陵市三佳电子(集团)有限责任公司持有的本公司27073333股股份因上海隆灵...
1 铜陵市三佳电子(集团)有限责任公司 本公司控股股东铜陵市三佳电子(集团)有限责任公司起持有本公司的27,073,333股于201...
2 铜陵市三佳电子(集团)有限责任公司 铜陵市三佳电子(集团)有限责任公司与中信银行股份有限公司安庆分行发生金融借款纠纷,涉案金额为...
3 铜陵市三佳电子(集团)有限责任公司 本公司股东铜陵市三佳电子(集团)有限责任公司持有的被安庆市宜秀区人民法院及安庆市迎江区人民法...
4 铜陵市三佳电子(集团)有限责任公司 本公司控股股东铜陵市三佳电子(集团)有限责任公司持有的本公司27073333股股权被司法冻结...
frozen_share_nature_id frozen_share_nature frozen_number \
0 308001 境内法人股 27073333.0
1 308001 境内法人股 NaN
2 308001 境内法人股 27073333.0
3 308001 境内法人股 NaN
4 308001 境内法人股 27073333.0
frozen_total_ratio freeze_applicant freeze_executor start_date \
0 17.090 None 上海市金山区人民法院 2015-07-10
1 17.090 None None None
2 17.090 中信银行股份有限公司安庆分行 None None
3 17.089 None 安庆市宜秀区人民法院及安庆市迎江区人民法院 None
4 17.089 None 上海市浦东新区人民法院 2016-04-27
end_date unfrozen_date unfrozen_number unfrozen_detail
0 None None NaN None
1 2015-08-11 2015-08-11 27073333.0 None
2 None None NaN None
3 2016-03-16 2016-03-16 27073333.0 None
4 2019-04-20 None NaN None
from jqdatasdk import finance
finance.run_query(query(finance.STK_HOLDER_NUM).filter(finance.STK_HOLDER_NUM.code==code).limit(n))
获取上市公司全部股东户数,A股股东、B股股东、H股股东的持股户数
参数:
query(finance.STK_HOLDER_NUM):表示从finance.STK_HOLDER_NUM这张表中查询上市公司的股东户数,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_HOLDER_NUM:代表上市公司股东户数表,收录了上市公司全部股东户数,A股股东、B股股东、H股股东的持股户数情况,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
|---|---|---|---|
| code | 股票代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| end_date | 截止日期 | date | |
| share_holders | 股东总户数 | int | |
| a_share_holders | A股股东总户数 | int | |
| b_share_holders | B股股东总户数 | int | |
| h_share_holders | H股股东总户数 | int |
filter(finance.STK_HOLDER_NUM.code==code):指定筛选条件,通过finance.STK_HOLDER_NUM.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_HOLDER_NUM.pub_date>='2015-01-01',表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为万科(000002.XSHE)的股东户数情况,返回条数为5条
q=query(finance.STK_HOLDER_NUM).filter(finance.STK_HOLDER_NUM.code=='000002.XSHE',finance.STK_HOLDER_NUM.pub_date>'2015-01-01').limit(5)
df=finance.run_query(q)
print(df)
id code end_date pub_date share_holders a_share_holders \
0 139 000002.XSHE 2014-12-31 2015-03-31 496922 496907
1 140 000002.XSHE 2015-03-24 2015-03-31 586390 586373
2 141 000002.XSHE 2015-03-31 2015-04-27 652130 652113
3 142 000002.XSHE 2015-06-30 2015-08-17 479264 479246
4 143 000002.XSHE 2015-09-30 2015-10-28 332360 332339
b_share_holders h_share_holders
0 None 15
1 None 17
2 None 17
3 None 18
4 None 21
from jqdatasdk import finance
finance.run_query(query(finance.STK_SHAREHOLDERS_SHARE_CHANGE).filter(finance.STK_SHAREHOLDERS_SHARE_CHANGE.code==code).limit(n))
获取上市公司大股东的增减持情况。
参数:
query(finance.STK_SHAREHOLDERS_SHARE_CHANGE):表示从finance.STK_SHAREHOLDERS_SHARE_CHANGE这张表中查询上市公司大股东的增减持情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_SHAREHOLDERS_SHARE_CHANGE:代表上市公司大股东增减持情况表,收录了大股东的增减持情况,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 备注/示例 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| end_date | 增(减)持截止日 | date | 变动截止日期 |
| type | 增(减)持类型 | int | 0--增持;1--减持 |
| shareholder_id | 股东ID | int | |
| shareholder_name | 股东名称 | varchar(100) | |
| change_number | 变动数量 | int | 股 |
| change_ratio | 变动数量占总股本比例 | decimal(10,4) | 录入变动数量后,系统自动计算变动比例, 持股比例可以用持股数量除以股本情况表中的总股本 |
| price_ceiling | 增(减)持价格上限 | varchar(100) | 公告里面一般会给一个增持或者减持的价格区间,上限就是增持价格或减持价格的最高价。 如果公告中只披露了平均价,那price_ceiling即为成交均价 |
| after_change_ratio | 变动后占比 | decimal(10,4) | %,变动后持股数量占总股本比例 |
filter(finance.STK_SHAREHOLDERS_SHARE_CHANGE.code==code):指定筛选条件,通过finance.STK_SHAREHOLDERS_SHARE_CHANGE.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHAREHOLDERS_SHARE_CHANGE.pub_date>='2015-01-01',表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为万科(000002.XSHE)的大股东增减持情况,返回5条
q=query(finance.STK_SHAREHOLDERS_SHARE_CHANGE).filter(finance.STK_SHAREHOLDERS_SHARE_CHANGE.code=='000002.XSHE',finance.STK_SHAREHOLDERS_SHARE_CHANGE.pub_date>'2015-01-01')
df=finance.run_query(q)
print(df)
id company_id company_name code pub_date end_date type \
0 1362 430000002 万科企业股份有限公司 000002.XSHE 2015-10-22 2015-10-20 0
1 25094 430000002 万科企业股份有限公司 000002.XSHE 2015-01-24 2015-01-23 0
2 25138 430000002 万科企业股份有限公司 000002.XSHE 2015-01-28 2015-01-27 0
3 29854 430000002 万科企业股份有限公司 000002.XSHE 2015-07-11 2015-07-10 0
4 29883 430000002 万科企业股份有限公司 000002.XSHE 2015-07-11 2015-01-31 0
shareholder_id shareholder_name change_number change_ratio \
0 NaN 深圳市矩盛华股份有限公司 37357310.0 0.338
1 100097568.0 国信证券-工商银行-国信金鹏分级1号集合资产管理计划 101187211.0 0.920
2 100097568.0 国信证券-工商银行-国信金鹏分级1号集合资产管理计划 34054269.0 0.310
3 100116740.0 前海人寿保险股份有限公司 552727926.0 5.000
4 100116740.0 前海人寿保险股份有限公司 1360161.0 0.012
price_ceiling after_change_ratio
0 None None
1 12.79 None
2 13.26 None
3 13.28-15.47 None
4 13.13-13.60 None
from jqdatasdk import finance
finance.run_query(query(finance.STK_CAPITAL_CHANGE).filter(finance.STK_CAPITAL_CHANGE.code==code).limit(n))
获取上市公司的股本变动情况
参数:
query(finance.STK_CAPITAL_CHANGE):表示从finance.STK_CAPITAL_CHANGE这张表中查询股票简称的变更情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_CAPITAL_CHANGE:代表上市公司的股本变动表,收录了上市公司发生上市、增发、配股,转增等时间带来的股本变动情况。表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| change_date | 变动日期 | date | |
| pub_date | 公告日期 | date | |
| change_reason_id | 变动原因编码 | int | |
| change_reason | 变动原因 | varchar(120) | |
| share_total | 总股本 | decimal(20,4) | 未流通股份+已流通股份,单位:万股 |
| share_non_trade | 未流通股份 | decimal(20,4) | 发起人股份 + 募集法人股份 + 内部职工股 + 优先股 + 转配股+其他未流通股+配售法人股+已发行未上市股份 |
| share_start | 发起人股份 | decimal(20,4) | 国家持股 +国有法人持股+ 境内法人持股 + 境外法人持股 + 自然人持股 |
| share_nation | 国家持股 | decimal(20,4) | 单位:万股 |
| share_nation_legal | 国有法人持股 | decimal(20,4) | 单位:万股 |
| share_instate_legal | 境内法人持股 | decimal(20,4) | 单位:万股 |
| share_outstate_legal | 境外法人持股 | decimal(20,4) | 单位:万股 |
| share_natural | 自然人持股 | decimal(20,4) | 单位:万股 |
| share_raised | 募集法人股 | decimal(20,4) | 单位:万股 |
| share_inside | 内部职工股 | decimal(20,4) | 单位:万股 |
| share_convert | 转配股 | decimal(20,4) | 单位:万股 |
| share_perferred | 优先股 | decimal(20,4) | 单位:万股 |
| share_other_nontrade | 其他未流通股 | decimal(20,4) | 单位:万股 |
| share_limited | 流通受限股份 | decimal(20,4) | 单位:万股 |
| share_legal_issue | 配售法人股 | decimal(20,4) | 战略投资配售股份+证券投资基金配售股份+一般法人配售股份 |
| share_strategic_investor | 战略投资者持股 | decimal(20,4) | 单位:万股 |
| share_fund | 证券投资基金持股 | decimal(20,4) | 单位:万股 |
| share_normal_legal | 一般法人持股 | decimal(20,4) | 单位:万股 |
| share_other_limited | 其他流通受限股份 | decimal(20,4) | 单位:万股 |
| share_nation_limited | 国家持股(受限) | decimal(20,4) | 单位:万股 |
| share_nation_legal_limited | 国有法人持股(受限) | decimal(20,4) | 单位:万股 |
| other_instate_limited | 其他内资持股(受限) | decimal(20,4) | 单位:万股 |
| legal of other_instate_limited | 其他内资持股(受限)中的境内法人持股 | decimal(20,4) | 单位:万股 |
| natural of other_instate_limited | 其他内资持股(受限)中的境内自然人持股 | decimal(20,4) | 单位:万股 |
| outstate_limited | 外资持股(受限) | decimal(20,4) | 单位:万股 |
| legal of outstate_limited | 外资持股(受限)中的境外法人持股 | decimal(20,4) | 单位:万股 |
| natural of outstate_limited | 外资持股(受限)境外自然人持股 | decimal(20,4) | 单位:万股 |
| share_trade_total | 已流通股份(自由流通股) | decimal(20,4) | 人民币普通股+ 境内上市外资股(B股)+ 境外上市外资股(H股)+ 高管股+ 其他流通股 |
| share_rmb | 人民币普通股 | decimal(20,4) | 单位:万股 |
| share_b | 境内上市外资股(B股) | decimal(20,4) | 单位:万股 |
| share_b_limited | 限售B股 | decimal(20,4) | 单位:万股 |
| share_h | 境外上市外资股(H股) | decimal(20,4) | 单位:万股 |
| share_h_limited | 限售H股 | decimal(20,4) | 单位:万股 |
| share_management | 高管股 | decimal(20,4) | 单位:万股 |
| share_management_limited | 限售高管股 | decimal(20,4) | 单位:万股 |
| share_other_trade | 其他流通股 | decimal(20,4) | 单位:万股 |
| control_shareholder_limited | 控股股东、实际控制人(受限) | decimal(20,4) | 单位:万股 |
| core_employee_limited | 核心员工(受限) | decimal(20,4) | 单位:万股 |
| individual_fund_limited | 个人或基金(受限) | decimal(20,4) | 单位:万股 |
| other_legal_limited | 其他法人(受限) | decimal(20,4) | 单位:万股 |
| other_limited | 其他(受限) | decimal(20,4) | 单位:万股 |
filter(finance.STK_CAPITAL_CHANGE.code==code):指定筛选条件,通过finance.STK_CAPITAL_CHANGE.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_CAPITAL_CHANGE.pub_date>='2015-01-01',表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为恒瑞医药(600276.XSHG)的股本变动情况,返回条数为5条
q=query(finance.STK_CAPITAL_CHANGE).filter(finance.STK_CAPITAL_CHANGE.code=='600276.XSHG',finance.STK_CAPITAL_CHANGE.pub_date>'2015-01-01').limit(5)
df=finance.run_query(q)
print(df)
id company_id company_name code change_date pub_date \
0 107 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-01-16 2017-01-10
1 3506 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-05-31 2017-05-22
2 4130 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-06-29 2017-06-29
3 4417 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-07-25 2017-07-20
4 7659 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-06-30 2017-08-30
change_reason_id change_reason share_total share_non_trade ... \
0 NaN 激励股份解禁 234745.9674 0.0 ...
1 306010.0 送股 281695.1609 0.0 ...
2 306016.0 股份回购 281688.9833 0.0 ...
3 NaN 激励股份解禁 281688.9833 0.0 ...
4 306019.0 定期报告 281688.9833 0.0 ...
share_h share_h_limited share_management share_management_limited \
0 0.0 None 0.0 None
1 0.0 None 0.0 None
2 0.0 None 0.0 None
3 0.0 None 0.0 None
4 0.0 None 0.0 None
share_other_trade control_shareholder_limited core_employee_limited \
0 0.0 None None
1 0.0 None None
2 0.0 None None
3 0.0 None None
4 0.0 None None
individual_fund_limited other_legal_limited other_limited
0 None None None
1 None None None
2 None None None
3 None None None
4 None None None
[5 rows x 49 columns]
from jqdatasdk import finance
finance.run_query(query(finance.STK_LIMITED_SHARES_LIST).filter(finance.STK_LIMITED_SHARES_LIST.code==code).limit(n))
获取上市公司受限股份上市公告日期和预计解禁日期。
参数:
query(finance.STK_LIMITED_SHARES_LIST):表示从finance.STK_LIMITED_SHARES_LIST这张表中查询上市公司受限股份上市公告和预计解禁的日期,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:query简单教程
finance.STK_LIMITED_SHARES_LIST:代表受限股份上市公告日期表,收录了上市公司受限股份上市公告和预计解禁的日期,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| pub_date | 公告日期 | date | 上市流通方案公布日期 |
| shareholder_name | 股东名称 | varchar(100) | |
| expected_unlimited_date | 预计解除限售日期 | date | |
| expected_unlimited_number | 预计解除限售数量 | int | 单位:股 |
| expected_unlimited_ratio | 预计解除限售比例 | decimal(10,4) | 单位:%;预计解除限售数量占总股本比例 |
| actual_unlimited_date | 实际解除限售日期 | date | |
| actual_unlimited_number | 实际解除限售数量 | int | 单位:股 |
| actual_unlimited_ratio | 实际解除限售比例 | decimal(10,4) | 单位:%;实际解除限售数量占总股本比例 |
| limited_reason_id | 限售原因编码 | int | 如下 限售原因编码 |
| limited_reason | 限售原因 | varchar(60) | 用户选择:股改限售;发行限售 |
| trade_condition | 上市交易条件 | varchar(500) | 股份上市交易的条件限制 |
filter(finance.STK_LIMITED_SHARES_LIST.code==code):指定筛选条件,通过finance.STK_LIMITED_SHARES_LIST.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_LIMITED_SHARES_LIST.pub_date>='2015-01-01',表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为华泰证券(601688.XSHG)的受限股份上市公告日期
q=query(finance.STK_LIMITED_SHARES_LIST).filter(finance.STK_LIMITED_SHARES_LIST.code=='601688.XSHG',finance.STK_LIMITED_SHARES_LIST.pub_date>'2018-01-01')
df=finance.run_query(q)
print(df)
id company_id company_name code pub_date shareholder_name \
0 34395 460000161 华泰证券股份有限公司 601688.XSHG 2018-08-04 阿里巴巴(中国)网络技术有限公司等
expected_unlimited_date expected_unlimited_number expected_unlimited_ratio \
0 2019-08-02 1.088731e+09 None
actual_unlimited_date actual_unlimited_number actual_unlimited_ratio \
0 None None None
limited_reason_id limited_reason trade_condition
0 309008 非公开发行限售 None
from jqdatasdk import finance
finance.run_query(query(finance.STK_LIMITED_SHARES_UNLIMIT).filter(finance.STK_LIMITED_SHARES_UNLIMIT.code==code).limit(n))
获取公司已上市的受限股份实际解禁的日期。
参数:
query(finance.STK_LIMITED_SHARES_UNLIMIT):表示从finance.STK_LIMITED_SHARES_UNLIMIT这张表中查询上市公司受限股份实际解禁的日期,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
finance.STK_LIMITED_SHARES_UNLIMIT:代表上市公司受限股份实际解禁表,收录了上市公司受限股份实际解禁的日期信息,表结构和字段信息如下:
| 字段名称 | 中文名称 | 字段类型 | 含义 |
|---|---|---|---|
| company_id | 公司ID | int | |
| company_name | 公司名称 | varchar(100) | |
| code | 股票代码 | varchar(12) | |
| pub_date | 公告日期 | date | |
| shareholder_name | 股东名称 | varchar(100) | |
| actual_unlimited_date | 实际解除限售日期 | date | |
| actual_unlimited_number | 实际解除限售数量 | int | 股 |
| actual_unlimited_ratio | 实际解除限售比例 | decimal(10,4) | 实际解除限售数量占总股本比例,单位% |
| limited_reason_id | 限售原因编码 | int | |
| limited_reason | 限售原因 | varchar(60) | |
| actual_trade_number | 实际可流通数量 | int |
filter(finance.STK_LIMITED_SHARES_UNLIMIT.code==code):指定筛选条件,通过finance.STK_LIMITED_SHARES_UNLIMIT.code==code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_LIMITED_SHARES_UNLIMIT.pub_date>='2015-01-01',表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
示例:
#指定查询对象为恒瑞医药(600276.XSHG)的受限股份实际解禁日期,返回条数为5条
q=query(finance.STK_LIMITED_SHARES_UNLIMIT).filter(finance.STK_LIMITED_SHARES_UNLIMIT.code=='600276.XSHG',finance.STK_LIMITED_SHARES_UNLIMIT.pub_date>'2015-01-01').limit(5)
df=finance.run_query(q)
print(df)
id company_id company_name code pub_date shareholder_name \
0 11252 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2015-07-14 蒋素梅等
1 11889 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2016-01-16 周云曙等
2 12613 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2016-07-14 蒋素梅等
3 13335 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-01-10 周云曙等
4 14162 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-07-20 蒋素梅等
actual_unlimited_date actual_unlimited_number actual_unlimited_ratio \
0 2015-07-17 4021160.0 0.1672
1 2016-01-21 531960.0 0.0068
2 2016-07-19 3488285.0 0.1486
3 2017-01-16 478764.0 0.0051
4 2017-07-25 4024089.0 0.1167
limited_reason_id limited_reason actual_trade_number
0 309004 股权激励 3270410.0
1 309004 股权激励 132990.0
2 309004 股权激励 3488285.0
3 309004 股权激励 119691.0
4 309004 股权激励 3287409.0
normalize_code(code)
将其他形式的期货代码转换为jqdatasdk函数可用的期货代码形式。 支持传入单只期货或一个期货list
示例
#输入
normalize_code(['AU1701', 'SF9999', 'SC9999','A0603','IF9999'])
#输出
['AU1701.XSGE', 'SF9999.XZCE', 'SC9999.XINE', 'A0603.XDCE', 'IF9999.CCFX']
get_future_contracts(underlying_symbol, date)
获取某期货品种在指定日期下的可交易合约标的列表
参数
返回
示例
# 获取某期货品种在指定日期下的可交易合约标的列表
get_future_contracts('AU','2017-01-05')
# 输出
['AU1701.XSGE', 'AU1702.XSGE', 'AU1703.XSGE', 'AU1704.XSGE', 'AU1706.XSGE', 'AU1708.XSGE', 'AU1710.XSGE', 'AU1712.XSGE']
get_all_securities(types=['futures'], date=None)
参数
返回 返回[pandas.DataFrame,如案例所示
示例
#将所有期货列表转换成数组
futures = list(get_all_securities(['futures']).index)
#获取所有期货列表
get_all_securities(['futures'])[:2]
#输出
display_name name start_date end_date type
A0501.XDCE 豆一0501 a0501 2003-07-15 2005-01-17 futures
A0503.XDCE 豆一0503 a0503 2003-09-15 2005-03-14 futures
支持2005至今的期货数据
get_extras(info, security_list, start_date='2005-01-01', end_date =None, df=True, count=None)
参数
返回值
获取期货结算价:futures_sett_price
get_extras('futures_sett_price', ['A0603.XDCE','A0605.XDCE'],start_date='2005-01-18').head()
A0603.XDCE A0605.XDCE
2005-01-18 2510.0 2537.0
2005-01-19 2512.0 2537.0
2005-01-20 2512.0 2529.0
2005-01-21 2500.0 2528.0
get_futures_info(securities=None, fields=('contract_multiplier',
'tick_size',
'trade_time'))
参数
示例
from jqdatasdk import *
infos = get_futures_info(["AG2012.XSGE",'A1609.XDCE' ])
print(infos)
>>>{'AG2012.XSGE': {'tick_size': 1.0,
'trade_time': [['2019-12-17', '2020-12-15', '21:00~02:30', '09:00~10:15', '10:30~11:30', '13:30~15:00']],
'contract_multiplier': 15.0},
'A1609.XDCE': {'tick_size': 1.0,
'trade_time': [['2015-03-16', '2015-05-08', '21:00~02:30', '09:00~10:15', '10:30~11:30', '13:30~15:00'],
['2015-05-09', '2016-09-14', '21:00~23:30', '09:00~10:15', '10:30~11:30', '13:30~15:00']],
'contract_multiplier': 10.0}}
get_dominant_future(underlying_symbol,date , end_date )
参数
注意 : date和end_date参数都可以指定分时秒,返回的数据会对应日期参数所属的交易日 , 21:00:00 及之后属于下一交易日
返回
示例
# 获取某一天的主力合约对应的期货合约代码,指定日期为'2018-05-06'
get_dominant_future('AU','2018-05-06')
>>> 'AU1812.XSGE'
金融期货:1. 沪深300指数期货合约表 2. 上证50股指期货合约表 3. 中证500股指期货合约表 4. 中证1000股指期货合约表 5. 2年期国债期货合约表 6. 5年期国债期货合约表 7. 10年期国债期货合约表
商品期货:中金所 上海国际能源交易中心 上期所 郑商所 大商所
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None, panel=True, fill_paused=True)
关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,
我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充. 如想跳过, 请使用 skip_paused=True 参数, 注意当 panel=True 且获取多标的时不支持(panel结构需要索引对齐)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后(或夜盘结束)时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close','paused','open_interest'], open_interest为期货持仓量 |
| skip_paused | 是否跳过不交易日期(含:停牌/未上市/退市后的日期) | 如果不跳过, 停牌时会使用停牌前的数据填充,上市前或者退市后数据都为 nan。 |
| fill_paused | 对于停牌股票的价格处理,默认为True | 默认为True,用pre_close价格填充);False 表示使用NAN填充停牌的股票价格。 |
| fq | 复权选项,默认为前复权(fq='pre') | pre':前复权 / 'none':不复权, 返回实际价格/'post': 后复权 |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如本地pandas版本大于0.25将强制返回dataframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的股票数量 | |
| money | 时间段中的成交的金额 | |
| factor | pre':前复权(默认)/None:不复权,返回实际价格/'post':后复权 | 前(后)复权数据=价格×前(后)复权因子; 前(后)复权后的成交量=成交量 / 前(后)复权因子; 成交额不处理 |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:股票是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
| pre_close | 前一个单位时间结束时的价格,按天则是前一天的收盘价 | 期货:pre_close--前一天结算;建议使用get_extras获取结算价;在分钟频率下pre_close=open |
| paused | bool值,股票是否停牌; | 停牌时open/close/low/high/pre_close;都等于停牌前的收盘价, volume=money=0 |
| open_interest | 期货持仓量 |
返回
代码示例
获取一支期货
# 获得AU1812.XSGE的2018年07月02日 23:30:00-2018年07月02日 23:35:00的分钟数据
df = get_price('AU1812.XSGE', start_date='2018-07-02 23:30:00', end_date='2018-07-02 23:35:00', frequency='1m')
# 返回[pandas.DataFrame]对象, 行索引是[datetime.datetime]对象, 列索引是行情字段名字
df[:5]
open close high low volume money
2018-07-02 23:30:00 272.20 272.25 272.25 272.2 252.0 68594900.0
2018-07-02 23:31:00 272.20 272.25 272.25 272.2 214.0 58260700.0
2018-07-02 23:32:00 272.25 272.25 272.25 272.2 100.0 27224800.0
2018-07-02 23:33:00 272.20 272.25 272.25 272.2 194.0 52815300.0
2018-07-02 23:34:00 272.25 272.20 272.25 272.2 112.0 30489500.0
获取多只期货
# 获取豆一0603和豆一0605的开盘价,则返回[pandas.Panel]对象
panel=get_price(['A0603.XDCE','A0605.XDCE'],start_date='2005-01-18')
#返回[pandas.DataFrame]对象,行索引是[datetime.datetime]对象, 列索引是期货代号
df=panel['open'][:4]
print(df)
A0603.XDCE A0605.XDCE
2005-01-18 2510.0 2534.0
2005-01-19 2491.0 2537.0
2005-01-20 2512.0 2528.0
2005-01-21 2504.0 2528.0
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流股票软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
返回
返回一个pandas.dataframe对象,可以按任意周期返回期货的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
#获取豆一0603按120分钟为周期以"2018-12-05"为基础往前5个时间单位的数据
df = get_bars('A0603.XDCE', 5, unit='120m',fields=['date','open','high','low','close'],include_now=False,end_dt='2018-12-05')
print(df)
date open high low close
0 2006-03-13 11:30:00 2603.0 2603.0 2603.0 2603.0
1 2006-03-13 15:00:00 2603.0 2603.0 2603.0 2603.0
2 2006-03-14 11:00:00 2603.0 2603.0 2581.0 2581.0
3 2006-03-14 11:30:00 2581.0 2610.0 2581.0 2610.0
4 2006-03-14 15:00:00 2610.0 2610.0 2581.0 2595.0
#获取豆一0603和豆一0605按120分钟为周期以"2018-12-05"为基础往前5个时间单位的数据
df = get_bars(['A0603.XDCE','A0605.XDCE'], 5, unit='120m',fields=['date','open','high','low','close'],include_now=False,end_dt='2018-12-05')
print(df)
date open high low close
A0603.XDCE 0 2006-03-13 11:30:00 2603.0 2603.0 2603.0 2603.0
1 2006-03-13 15:00:00 2603.0 2603.0 2603.0 2603.0
2 2006-03-14 11:00:00 2603.0 2603.0 2581.0 2581.0
3 2006-03-14 11:30:00 2581.0 2610.0 2581.0 2610.0
4 2006-03-14 15:00:00 2610.0 2610.0 2581.0 2595.0
A0605.XDCE 0 2006-05-18 11:30:00 2498.0 2498.0 2498.0 2498.0
1 2006-05-18 15:00:00 2498.0 2498.0 2498.0 2498.0
2 2006-05-19 11:00:00 2499.0 2499.0 2499.0 2499.0
3 2006-05-19 11:30:00 2499.0 2499.0 2499.0 2499.0
4 2006-05-19 15:00:00 2499.0 2499.0 2499.0 2499.0
get_ticks(security, start_dt, end_dt, count, fields, skip,df=True)
期货部分, 支持 2010-01-01 至今的tick数据,提供买一卖一数据。(每0.5秒一次快照)如果要获取主力合约的tick数据,可以先使用get_dominant_future(underlying_symbol,dt)获取主力合约对应的标的,然后再用get_ticks()获取该合约的tick数据
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 期货代码
start_dt: 开始日期
end_dt: 结束日期
count: 取出指定时间区间内前多少条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下:
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据。
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
期货tick返回结果:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(手) | float |
| money | 累计成交额 | float |
| position | 持仓量 | float |
| a1_v | 一档卖量 | float |
| a1_p | 一档卖价 | float |
| b1_v | 一档买量 | float |
| b1_p | 一档买价 | float |
期货tick数据示例:
#获取AU1812期货合约在“2018-07-03”前8个时间单位的tick数据,start_dt和count只能有一个不为None值
df=get_ticks('AU1812.XSGE',end_dt='2018-07-03',count=8)
print(df)
time current high low volume money \
0 2018-07-02 23:59:35.500 272.00 272.95 272.0 42922.0 1.170027e+10
1 2018-07-02 23:59:37.000 272.05 272.95 272.0 42942.0 1.170571e+10
2 2018-07-02 23:59:37.500 272.05 272.95 272.0 42966.0 1.171224e+10
3 2018-07-02 23:59:38.000 272.05 272.95 272.0 42974.0 1.171442e+10
4 2018-07-02 23:59:43.000 272.05 272.95 272.0 42978.0 1.171550e+10
5 2018-07-02 23:59:45.500 272.05 272.95 272.0 42986.0 1.171768e+10
6 2018-07-02 23:59:46.000 272.05 272.95 272.0 42994.0 1.171986e+10
7 2018-07-02 23:59:59.000 272.05 272.95 272.0 42998.0 1.172094e+10
position a1_p a1_v b1_p b1_v
0 361578.0 272.05 57.0 272.00 281.0
1 361570.0 272.05 12.0 272.00 289.0
2 361562.0 272.10 96.0 272.05 14.0
3 361554.0 272.10 97.0 272.05 25.0
4 361554.0 272.10 97.0 272.05 24.0
5 361546.0 272.10 95.0 272.05 20.0
6 361538.0 272.10 91.0 272.05 16.0
7 361534.0 272.10 85.0 272.05 17.0
from jqdatasdk import finance
df=finance.run_query(query(finance.FUT_GLOBAL_DAILY).filter(finance.FUT_GLOBAL_DAILY.day==date).limit(n))
描述:记录主要外盘商品期货的日行情数据,包含开盘价、收盘价、最高价、最低价、成交量等
参数:
字段设计
| 字段 | 名称 | 类型 | 非空 | 含义 |
|---|---|---|---|---|
| code | 期货代码 | varchar(64) | Y | 代码列表详见下方期货代码名称对照表 |
| name | 期货名称 | varchar(64) | ||
| day | 日期 | date | Y | |
| open | 开盘价 | decimal(20,6) | ||
| close | 收盘价 | decimal(20,6) | ||
| low | 最低价 | decimal(20,6) | ||
| high | 最高价 | decimal(20,6) | ||
| volume | 成交量 | decimal(20,6) | ||
| change_pct | 涨跌幅(%) | decimal(20,4) | (当日收盘价-前收价)/前收价 | |
| amplitude | 振幅(%) | decimal(20,6) | (当日最高点的价格-当日最低点的价格)/前收价 | |
| pre_close | 前收价 | decimal(20,6) |
期货代码名称对照表
| 代码 | AHD | BO | C | CAD | CL | ES | GC | HG | LHC | NG | NID |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 名称 | LME铝3个月 | CBOT-黄豆油 | CBOT-玉米 | LME铜3个月 | NYMEX原油 | 标普期货 | COMEX黄金 | COMEX铜 | CME-瘦肉猪 | NYMEX天然气 | LME镍3个月 |
| 代码 | OIL | PBD | S | SI | SM | SND | W | XAG | XAU | XPD | XPT | ZSD |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 名称 | 布伦特原油 | LME铅3个月 | CBOT-黄豆 | COMEX白银 | CBOT-黄豆粉 | LME锡3个月 | CBOT-小麦 | 伦敦银 | 伦敦金 | 伦敦钯金 | 伦敦铂金 | LME锌3个月 |
返回结果:
注意:
示例:
#查询品种为铜('CU')的2018年12月05日的仓单数据,从大到小,返回8条
q=query(finance.FUT_WAREHOUSE_RECEIPT.day,
finance.FUT_WAREHOUSE_RECEIPT.underlying_code,
finance.FUT_WAREHOUSE_RECEIPT.warehouse_name,
finance.FUT_WAREHOUSE_RECEIPT.warehouse_receipt_number).filter(finance.FUT_WAREHOUSE_RECEIPT.underlying_code=='CU',finance.FUT_WAREHOUSE_RECEIPT.day=='2018-12-05').order_by(finance.FUT_WAREHOUSE_RECEIPT.warehouse_receipt_number.desc()).limit(8)
df=finance.run_query(q)
print(df)
day underlying_code warehouse_name warehouse_receipt_number
0 2018-12-05 CU 江苏-中储无锡 10517
1 2018-12-05 CU 广东-八三O黄浦 9141
2 2018-12-05 CU 江苏-常州融达 6787
3 2018-12-05 CU 上海-中储吴淞 5238
4 2018-12-05 CU 广东-南储仓储 5025
5 2018-12-05 CU 浙江-国储837处 4205
6 2018-12-05 CU 上海-上港物流 3524
7 2018-12-05 CU 上海-中海华东宝山 2804
from jqdatasdk import finance
finance.run_query(query(finance.FUT_MEMBER_POSITION_RANK).filter(finance.FUT_MEMBER_POSITION_RANK.code==code).limit(n))
描述:记录各个期货交易所对不同商品下的期货合约,记录该交易所会员持仓排名前20的信息。(每天更新)
获取期货交易所会员持仓(龙虎榜)
参数:
字段设计
| 字段名称 | 中文名称 | 字段类型 | 含义 |
| day | 交易日 | date | |
| code | 合约编码 | varchar(12) | 同一商品根据交割日的不同对应不同的期货合约,比如:'CU1807.XSGE' |
| exchange | 交易所编码 | varchar(10) | 英文编码:XSGE:上海期货交易所, XDCE:大连商品交易所, XZCE:郑州商品交易所, CCFX:中国金融期货交易所 |
| exchange_name | 交易所名称 | varchar(30) | |
| underlying_code | 标的编码 | varchar(10) | |
| underlying_name | 标的名称 | varchar(50) | |
| rank_type_ID | 排名类别编码 | int | 501001-成交量排名, 501002-持买单量排名, 501003-持卖单量排名 |
| rank_type | 排名类别 | varchar(50) | 包含:成交量排名,持买单量排名,持卖单量排名 |
| rank | 排名 | int | |
| member_name | 会员简称 | varchar(50) | |
| indicator | 统计指标 | int | 统计指标根据排名类别确定,分别代表:成交量,持买单量,持卖单量。单位:手 |
| indicator_increase | 统计指标比上交易日增减 | int | 单位:手 |
一手:是指交易单位,也就是一张合约所代表的单位数量的标的物,一般根据品种有所不同,比如:大豆一手是10吨,铜一手是5吨,国债期货交易单位是钱,一手几万元。
交易所编码
| 交易所名称 | 编码 |
|---|---|
| 上海期货交易所 | XSGE |
| 大连商品交易所 | XDCE |
| 郑州商品交易所 | XZCE |
| 中国金融期货交易所 | CCFX |
排名类别编码
| 交易所名称 | 编码 |
|---|---|
| 成交量排名 | 501001 |
| 持买单量排名 | 501002 |
| 持卖单量排名 | 501003 |
返回结果:
注意:
示例:
#查询A1905.XDCE 2019-04-24交易日的持仓量龙虎榜数据
q=query(finance.FUT_MEMBER_POSITION_RANK.day,
finance.FUT_MEMBER_POSITION_RANK.code,
finance.FUT_MEMBER_POSITION_RANK.rank_type,
finance.FUT_MEMBER_POSITION_RANK.rank,
finance.FUT_MEMBER_POSITION_RANK.member_name,
finance.FUT_MEMBER_POSITION_RANK.indicator
).filter(finance.FUT_MEMBER_POSITION_RANK.code=='A1905.XDCE',
finance.FUT_MEMBER_POSITION_RANK.rank_type_ID==501002,
finance.FUT_MEMBER_POSITION_RANK.day == '2019-04-24'
).order_by( finance.FUT_MEMBER_POSITION_RANK.rank ).limit(8)
df=finance.run_query(q)
print(df)
day code rank_type rank member_name indicator
0 2019-04-24 A1905.XDCE 持买单量排名 1 国投安信 1330
1 2019-04-24 A1905.XDCE 持买单量排名 2 广州金控 1026
2 2019-04-24 A1905.XDCE 持买单量排名 3 东证期货 986
3 2019-04-24 A1905.XDCE 持买单量排名 4 中信期货 844
4 2019-04-24 A1905.XDCE 持买单量排名 5 华泰期货 654
5 2019-04-24 A1905.XDCE 持买单量排名 6 东方财富 483
6 2019-04-24 A1905.XDCE 持买单量排名 7 摩根大通 462
7 2019-04-24 A1905.XDCE 持买单量排名 8 广州期货 442
from jqdatasdk import finance
finance.run_query(query(finance.FUT_WAREHOUSE_RECEIPT).filter(finance.FUT_WAREHOUSE_RECEIPT.underlying_code==underlying_code).limit(n))
描述:期货仓单是指由期货交易所指定交割仓库,按照期货交易所指定的程序,签发的符合合约规定质量的实物提货凭证。记录了交易所所有期货实物的库存情况以及变更情况。
参数:
字段设计
| 字段名称 | 中文名称 | 字段类型 | 注释 |
| day | 日期 | date | |
| exchange | 交易所编码 | varchar(10) | 英文编码 |
| exchange_name | 交易所名称 | varchar(30) | 上海期货交易所 大连商品交易所 郑州商商品交易所 中国金融期货交易所 |
| underlying_code | 品种编码 | varchar(10) | |
| product_name | 品种名称 | varchar(20) | |
| warehouse_name | 仓库名称 | varchar(20) | 上期所:将地区和仓库数据合并成一条,仓库名称=“地区”+“仓库”。 大商所:仓库名称存在多个不同的名字的,取第一个字体加粗的仓库名称。 郑商所:不区分品牌,对每个仓库取仓库小计值 |
| warehouse_receipt_number | 今日期货仓单 | int | |
| unit | 单位 | varchar(10) | |
| warehouse_receipt_number_increase | 比昨日增减 | int |
交易所名称编码
| 交易所名称 | 编码 |
|---|---|
| 上海期货交易所 | XSGE |
| 大连商品交易所 | XDCE |
| 郑州商商品交易所 | XZCE |
| 中国金融期货交易所 | CCFX |
返回结果:
注意:
示例:
#查询品种为铜('CU')的2018年12月05日的仓单数据
q=query(finance.FUT_WAREHOUSE_RECEIPT.day,
finance.FUT_WAREHOUSE_RECEIPT.underlying_code,
finance.FUT_WAREHOUSE_RECEIPT.warehouse_name,
finance.FUT_WAREHOUSE_RECEIPT.warehouse_receipt_number).filter(finance.FUT_WAREHOUSE_RECEIPT.underlying_code=='CU',finance.FUT_WAREHOUSE_RECEIPT.day=='2018-12-05').order_by(finance.FUT_WAREHOUSE_RECEIPT.warehouse_receipt_number.desc())
df=finance.run_query(q)
print(df[:8])
day underlying_code warehouse_name warehouse_receipt_number
0 2018-12-05 CU 江苏-中储无锡 10517
1 2018-12-05 CU 广东-八三O黄浦 9141
2 2018-12-05 CU 江苏-常州融达 6787
3 2018-12-05 CU 上海-中储吴淞 5238
4 2018-12-05 CU 广东-南储仓储 5025
5 2018-12-05 CU 浙江-国储837处 4205
6 2018-12-05 CU 上海-上港物流 3524
7 2018-12-05 CU 上海-中海华东宝山 2804
normalize_code(code)
将其他形式的场内基金代码转换为jqdatasdk函数可用的基金代码形式。 仅适用于场内基金代码,支持传入单只基金或一个基金list
示例
#输入
normalize_code(['159001', '159003', '159005','159901','159902'])
#输出
['159001.XSHE', '159003.XSHE', '159005.XSHE', '159901.XSHE', '159902.XSHE']
get_security_info(code)
获取股票/基金/指数的信息.
参数
返回值
一个对象, 有如下属性:
示例
# 获取基金的中文名称
get_security_info('502050.XSHG').display_name
>>> 上证50B
#获取基金的上市日期
get_security_info('502050.XSHG').start_date
>>> datetime.date(2015, 4, 27)
#获取基金的退市时间
get_security_info('502050.XSHG').end_date
>>> datetime.date(2021, 1, 4)
#获取基金的类型
get_security_info('502050.XSHG').type
>>> 'fjb'
# 获取基金的母基金, 下面的判断为真.
get_security_info('502050.XSHG').parent == '502048.XSHG'
>>> True
get_all_securities(types=[], date=None)
获取平台支持的所有股票、基金、指数、期货信息
参数
返回 [pandas.DataFrame]
示例
#获得etf基金列表
df = get_all_securities(['etf'])
#获得lof基金列表
df = get_all_securities(['lof'])
#获得分级A基金列表
df = get_all_securities(['fja'])
#获得分级B基金列表
df = get_all_securities(['fjb'])
# 获得fjm基金列表
df = get_all_securities('fund')
df[df.type=="fjm"]
# 获得开放式基金列表
df = get_all_securities(['open_fund'])
# 获得债券基金列表
df = get_all_securities(['bond_fund'])
# 获得股票型基金列表
df = get_all_securities('stock_fund')
# 获得QDII基金列表
df = get_all_securities(['QDII_fund'])
# 获得混合型基列表
df = get_all_securities(['mixture_fund'])
# 获得场内交易的货币基金列表
df = get_all_securities('fund')
df[df.type=="mmf"]
# 获得场外交易的货币基金列表
df = get_all_securities(['money_market_fund'])
#获得2015年10月10日还在上市的 etf 和 lof 基金列表
get_all_securities(['etf', 'lof'], '2015-10-10')
get_extras(info, security_list, start_date='2015-01-01', end_date='2015-12-31', df=True, count=None)
参数
info: [ 'acc_net_value', 'unit_net_value', 'adj_net_value'] 中的一个
| 指定info字段 | 返回信息 |
|---|---|
| acc_net_value | 基金累计净值 |
| unit_net_value | 基金单位净值 |
| adj_net_value | 场外基金的复权净值 |
security_list: 基金列表
start_date/end_date: 开始结束日期, 同 [get_price]
df: 返回[pandas.DataFrame]对象还是一个dict
count: 数量, 与 start_date 二选一, 不可同时使用, 必须大于 0. 表示取 end_date 往前的 count 个交易日的数据
返回值
# 获取基金累计净值
# df=True,返回[pandas.DataFrame]对象
df=get_extras('acc_net_value', ['510300.XSHG', '510050.XSHG'], start_date='2015-12-01', end_date='2015-12-03',df=True)
print(df)
510300.XSHG 510050.XSHG
2015-12-01 1.3950 3.119
2015-12-02 1.4432 3.251
2015-12-03 1.4535 3.254
# 获取基金单位净值
# df=False,返回一个dict, key是基金代号, value是[numpy.ndarray]
get_extras('unit_net_value', ['510300.XSHG', '510050.XSHG'], start_date='2015-12-01', end_date='2015-12-03',df=False)
#返回
{'510300.XSHG': array([3.6446, 3.7746, 3.8023]),
'510050.XSHG': array([2.344, 2.455, 2.458])}
# 获取场外基金的复权净值
df=get_extras('adj_net_value','398051.OF')
print(df[:4])
398051.OF
2015-01-05 1.087
2015-01-06 1.073
2015-01-07 1.086
2015-01-08 1.054
from jqdatasdk import *
finance.run_query(query(finance.FUND_SHARE_DAILY).filter(finance.FUND_SHARE_DAILY.date=='2019-05-23').limit(n))
描述:记录每日场内基金份额数据
参数:
字段设计:
| 名称 | 类型 | 描述 |
| code | varchar(12) | 基金代码 |
| name | varchar(50) | 基金简称 |
| exchange_code | varchar(12) | 交易市场编码 XSHG-上海证券交易所; XSHE-深圳证券交易所 |
| date | date | 日期 |
| shares | bigint | 基金份额(份) |
返回结果:
注意:
示例:
#查询2019-05-23的场内基金份额数据。
from jqdatasdk import *
df=finance.run_query(query(finance.FUND_SHARE_DAILY).filter(finance.FUND_SHARE_DAILY.date=='2019-05-23').limit(5))
print(df)
id code name exchange_code date shares
0 960881 150008.XSHE 瑞和小康 XSHE 2019-05-23 17749200
1 960882 150009.XSHE 瑞和远见 XSHE 2019-05-23 17749200
2 960883 150012.XSHE 中证100A XSHE 2019-05-23 36139500
3 960884 150013.XSHE 中证100B XSHE 2019-05-23 54209300
4 960885 150016.XSHE 合润A XSHE 2019-05-23 38111200
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None, panel=True, fill_paused=True)
关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,
我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充. 如想跳过, 请使用 skip_paused=True 参数, 注意当 panel=True 且获取多标的时不支持(panel结构需要索引对齐)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close','paused','open_interest'], open_interest为期货持仓量 |
| skip_paused | 是否跳过不交易日期(含:停牌/未上市/退市后的日期) | 如果不跳过, 停牌时会使用停牌前的数据填充,上市前或者退市后数据都为 nan。 |
| fill_paused | 对于停牌股票的价格处理,默认为True | 默认为True,用pre_close价格填充);False 表示使用NAN填充停牌的股票价格。 |
| fq | 复权选项,默认为前复权(fq='pre') | 'pre':前复权 / 'none':不复权, 返回实际价格 / 'post':后复权 |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如本地pandas版本大于0.25将强制返回datdaframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的股票数量 | 单位股 |
| money | 时间段中的成交的金额 | |
| factor | pre':前复权(默认)/None:不复权,返回实际价格/'post':后复权 | 前(后)复权数据=价格×前(后)复权因子; 前(后)复权后的成交量=成交量 / 前(后)复权因子; 成交额不处理 |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:股票是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
| pre_close | 前一个单位时间结束时的价格,按天则是前一天的收盘价 | 期货:pre_close--前一天结算;建议使用get_extras获取结算价;在分钟频率下pre_close=open |
| paused | bool值,股票是否停牌; | 停牌时open/close/low/high/pre_close;都等于停牌前的收盘价, volume=money=0 |
返回
代码示例
获取一支基金
# 获得华泰柏瑞沪深300ETF的2018年07月02日 23:30:00-2018年07月02日 23:35:00的分钟数据
df = get_price('510300.XSHG', start_date='2018-08-01 10:00:00', end_date='2018-08-01 10:05:00', frequency='1m')
# 返回[pandas.DataFrame]对象, 行索引是[datetime.datetime]对象, 列索引是行情字段名字
print(df[:5])
open close high low volume money
2018-08-01 10:00:00 3.435 3.437 3.437 3.435 1250645.0 4297417.0
2018-08-01 10:01:00 3.438 3.435 3.441 3.435 2179295.0 7492471.0
2018-08-01 10:02:00 3.435 3.432 3.435 3.432 1241940.0 4264887.0
2018-08-01 10:03:00 3.432 3.432 3.433 3.431 2061509.0 7075951.0
2018-08-01 10:04:00 3.432 3.431 3.432 3.431 276371.0 948489.0
获取多只基金
#获得华泰柏瑞沪深300ETF和华夏上证50ETF在2018-08-01 10:00:00至2018-08-01 10:05:00的分钟数据
df = get_price(['510300.XSHG','510050.XSHG'],start_date='2018-08-01 10:00:00', end_date='2018-08-01 10:05:00', frequency='1m')
# 获取开盘价的[pandas.DataFrame],行索引是[datetime.datetime]对象, 列索引是基金代号
print(df['open'])
510300.XSHG 510050.XSHG
2018-08-01 10:00:00 3.435 2.491
2018-08-01 10:01:00 3.438 2.493
2018-08-01 10:02:00 3.435 2.491
2018-08-01 10:03:00 3.432 2.486
2018-08-01 10:04:00 3.432 2.486
2018-08-01 10:05:00 3.432 2.486
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流股票软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
返回
返回一个pandas.dataframe对象,可以按任意周期返回基金的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例 获取一只基金
#获取招商快线ETF按120分钟为周期以"2018-12-05"为基础往前5个时间单位的数据
df = get_bars('159003.XSHE', 5, unit='120m',fields=['date','open','high','low','close'],include_now=False,end_dt='2018-12-05')
print(df)
date open high low close
0 2018-11-30 15:00:00 100.000 100.001 99.999 100.000
1 2018-12-03 11:30:00 99.997 100.000 99.995 99.998
2 2018-12-03 15:00:00 99.998 100.000 99.998 100.000
3 2018-12-04 11:30:00 99.999 100.001 99.999 100.000
4 2018-12-04 15:00:00 100.000 100.050 99.999 100.002
获取多只基金# 获取港股精选lof、招商快线ETF按5分钟为周期以“2018-3-01 14:22:35”为基础前4个时间单位的数据
df = get_bars(['160322.XSHE','159003.XSHE'],4, unit='5m',fields=['date','open','high','low','close'],include_now=True,end_dt='2018-3-01 14:22:35')
print(df)
date open high low close
0 2018-03-01 13:50:00 1.233 1.233 1.233 1.233
1 2018-03-01 13:55:00 1.233 1.233 1.233 1.233
2 2018-03-01 14:00:00 1.233 1.233 1.219 1.219
3 2018-03-01 14:05:00 1.219 1.219 1.218 1.219
4 2018-03-01 14:10:00 1.219 1.219 1.218 1.218
5 2018-03-01 14:15:00 1.218 1.218 1.218 1.218
6 2018-03-01 14:20:00 1.218 1.218 1.218 1.218
7 2018-03-01 14:22:00 1.218 1.218 1.218 1.218
get_call_auction(security, start_date, end_date, fields=None)
支持股票(2010年至今)、场内基金(2019年至今)、指数(2017年至今)和上证ETF期权(2017年至今)的集合竞价数据。当日的集合竞价数据下午15点更新。为了防止返回数据量过大, 我们每次最多返回5000行。
参数:
返回值:
返回指定时间区间标的集合竞价tick数据,返回字段结果如下:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价(不复权) | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
示例:
#获取招商快线2019-3-05至2019-3-06期间的集合竞价数据
df=get_call_auction('159003.XSHE','2019-3-05','2019-3-06')
print(df)
code time current volume money a1_p \
0 159003.XSHE 2019-03-05 09:25:03 100.0 16300.0 1629951.1 100.0
1 159003.XSHE 2019-03-06 09:25:03 100.0 29300.0 2929941.4 100.0
a1_v a2_p a2_v a3_p ... b1_p b1_v b2_p b2_v \
0 19412.0 100.0 21915.0 100.0 ... 100.0 1500.0 99.99 5300.0
1 9199.0 100.0 49813.0 100.0 ... 100.0 300.0 100.00 500.0
b3_p b3_v b4_p b4_v b5_p b5_v
0 99.99 900.0 99.99 3000.0 99.99 1000.0
1 100.00 1200.0 99.99 6500.0 99.99 9400.0
[2 rows x 25 columns]
get_ticks(security, start_dt, end_dt, count, fields, skip,df)
场内基金部分, 支持 2019-01-01 至今的tick数据,提供买五卖五盘口数据。(每3秒一次快照)
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 场内基金代码,如'510050.XSHG'
start_dt: 开始日期,格式为'YYYY-MM-DD HH:MM:SS'
end_dt: 结束日期,格式为'YYYY-MM-DD HH:MM:SS'
count: 取出指定时间区间内前N条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下场内基金tick返回结果。
skip: 默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据。
df: 指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
场内基金tick返回结果
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额 | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
场内基金tick数据示例:
#获取50ETF基金2019-10-15的tick数据
df=get_ticks('510050.XSHG','2019-10-16 09:00:00','2019-10-16 15:00:00')
print(df[:15])
time current high low volume money \
0 2019-10-16 09:25:00.392 3.064 3.064 3.064 2327900.0 7132686.0
1 2019-10-16 09:30:00.552 3.064 3.065 3.063 2491600.0 7634304.0
2 2019-10-16 09:30:03.532 3.064 3.065 3.063 3177815.0 9737131.0
3 2019-10-16 09:30:06.488 3.062 3.065 3.062 4283600.0 13124520.0
4 2019-10-16 09:30:08.988 3.064 3.065 3.062 4346100.0 13315970.0
5 2019-10-16 09:30:11.480 3.065 3.065 3.062 4666100.0 14296725.0
6 2019-10-16 09:30:14.500 3.064 3.065 3.062 4731900.0 14498336.0
7 2019-10-16 09:30:17.360 3.062 3.065 3.062 4856200.0 14878966.0
8 2019-10-16 09:30:21.148 3.062 3.065 3.062 5109000.0 15653040.0
9 2019-10-16 09:30:24.520 3.063 3.065 3.061 5361300.0 16425704.0
10 2019-10-16 09:30:26.120 3.062 3.065 3.061 5401300.0 16548184.0
11 2019-10-16 09:30:30.560 3.063 3.065 3.061 5579200.0 17093053.0
12 2019-10-16 09:30:33.540 3.064 3.065 3.061 6100200.0 18689378.0
13 2019-10-16 09:30:36.420 3.065 3.065 3.061 6270800.0 19212123.0
14 2019-10-16 09:30:38.892 3.067 3.067 3.061 6640300.0 20345030.0
a1_p a1_v a2_p a2_v ... b1_p b1_v b2_p \
0 3.064 80011.0 3.065 471300.0 ... 3.063 111500.0 3.062
1 3.065 412211.0 3.066 50800.0 ... 3.064 20900.0 3.063
2 3.065 110711.0 3.066 44400.0 ... 3.064 118700.0 3.063
3 3.063 45715.0 3.064 49200.0 ... 3.062 101200.0 3.061
4 3.064 44615.0 3.065 1338211.0 ... 3.063 500.0 3.062
5 3.065 1062826.0 3.066 1544500.0 ... 3.064 10000.0 3.063
6 3.064 1445000.0 3.065 1662826.0 ... 3.063 3100.0 3.062
7 3.062 252800.0 3.064 2594900.0 ... 3.061 121500.0 3.060
8 3.064 2324000.0 3.065 2263226.0 ... 3.063 6000.0 3.061
9 3.063 189700.0 3.064 2024000.0 ... 3.062 64000.0 3.061
10 3.063 157700.0 3.064 1163900.0 ... 3.062 34000.0 3.061
11 3.063 18800.0 3.064 865200.0 ... 3.062 346000.0 3.061
12 3.064 63400.0 3.065 325300.0 ... 3.063 10000.0 3.062
13 3.066 44500.0 3.067 407600.0 ... 3.065 418400.0 3.064
14 3.067 387600.0 3.068 977500.0 ... 3.065 50000.0 3.064
b2_v b3_p b3_v b4_p b4_v b5_p b5_v
0 91300.0 3.061 50600.0 3.060 159200.0 3.059 10800.0
1 97100.0 3.062 93300.0 3.061 55600.0 3.060 159200.0
2 546585.0 3.062 165500.0 3.061 156400.0 3.060 402100.0
3 466400.0 3.060 473100.0 3.059 20100.0 3.058 219200.0
4 101200.0 3.061 399900.0 3.060 491100.0 3.059 20100.0
5 500.0 3.062 111200.0 3.061 471500.0 3.060 521100.0
6 111200.0 3.061 481500.0 3.060 521100.0 3.059 164100.0
7 522100.0 3.059 164100.0 3.058 363200.0 3.057 400.0
8 471500.0 3.060 520200.0 3.059 164100.0 3.058 363200.0
9 451500.0 3.060 520200.0 3.059 164100.0 3.058 363200.0
10 411700.0 3.060 520200.0 3.059 164100.0 3.058 363200.0
11 141700.0 3.060 553200.0 3.059 164100.0 3.058 363200.0
12 297000.0 3.061 141700.0 3.060 594100.0 3.059 164100.0
13 50000.0 3.063 212200.0 3.062 1227000.0 3.061 142200.0
14 330200.0 3.063 212000.0 3.062 1227100.0 3.061 142200.0
[15 rows x 26 columns]
get_mtss(security_list, start_date=None, end_date=None, fields=None, count=None)
获取一只或者多只基金在一个时间段内的融资融券信息
参数
security_list: 一只基金代码或者一个基金代码的 list
start_date: 开始日期, 与 count 二选一, 不可同时使用. 一个字符串或者 [datetime.datetime]/[datetime.date] 对象, 默认为平台提供的数据的最早日期
end_date: 结束日期, 一个字符串或者 [datetime.date]/[datetime.datetime] 对象, 默认为 datetime.date.today()
count: 数量, 与 start_date 二选一,不可同时使用, 必须大于 0. 表示返回 end_date 之前 count 个交易日的数据, 包含 end_date
fields: 字段名或者 list, 可选. 默认为 None, 表示取全部字段, 各字段含义如下:
| 字段名 | 含义 |
|---|---|
| date | 日期 |
| sec_code | 基金代码 |
| fin_value | 融资余额(元) |
| fin_buy_value | 融资买入额(元) |
| fin_refund_value | 融资偿还额(元) |
| sec_value | 融券余量(股) |
| sec_sell_value | 融券卖出量(股) |
| sec_refund_value | 融券偿还量(股) |
| fin_sec_value | 融资融券余额(元) |
返回
返回一个 [pandas.DataFrame] 对象,默认的列索引为取得的全部字段. 如果给定了 fields 参数, 则列索引与给定的 fields 对应.
示例
获取一只基金
# 获取易方达恒生国企ETF在2016-01-01和2016-04-01的融资融券信息
df=get_mtss('510900.XSHG','2016-01-01','2016-04-01',fields=['date','sec_code','fin_value','fin_buy_value','fin_refund_value','sec_value','sec_sell_value','sec_refund_value','fin_sec_value'])
print(df[:5])
date sec_code fin_value fin_buy_value fin_refund_value \
0 2016-01-04 510900.XSHG 482308708.0 22248940.0 11551982.0
1 2016-01-05 510900.XSHG 491306588.0 22509481.0 16488831.0
2 2016-01-06 510900.XSHG 508819867.0 35343749.0 17830470.0
3 2016-01-07 510900.XSHG 523377028.0 17389386.0 2832225.0
4 2016-01-08 510900.XSHG 540172694.0 44289244.0 27493578.0
sec_value sec_sell_value sec_refund_value fin_sec_value
0 0.0 0.0 0.0 482308708.0
1 0.0 0.0 0.0 491306588.0
2 0.0 0.0 0.0 508819867.0
3 0.0 0.0 0.0 523377028.0
4 0.0 0.0 0.0 540172694.0
# 获取上证180ETF基金在日期 2016-06-30 往前 5 个交易日的融资融券信息
df=get_mtss('510180.XSHG', end_date="2016-06-30", count=5,fields=['date','sec_code','fin_value','fin_buy_value','fin_refund_value','sec_value','sec_sell_value','sec_refund_value','fin_sec_value'])
print(df)
date sec_code fin_value fin_buy_value fin_refund_value \
0 2016-06-24 510180.XSHG 1.390217e+09 819754.0 947410.0
1 2016-06-27 510180.XSHG 1.390132e+09 21340.0 106343.0
2 2016-06-28 510180.XSHG 1.390143e+09 228053.0 217386.0
3 2016-06-29 510180.XSHG 1.390280e+09 344875.0 207587.0
4 2016-06-30 510180.XSHG 1.387647e+09 492910.0 3125884.0
sec_value sec_sell_value sec_refund_value fin_sec_value
0 2222005.0 476900.0 475800.0 1.396101e+09
1 1924005.0 112000.0 410000.0 1.395292e+09
2 1894305.0 354900.0 384600.0 1.395254e+09
3 1917305.0 240800.0 217800.0 1.395491e+09
4 1888705.0 11400.0 40000.0 1.392781e+09
获取多只基金
# 获取消费ETF、金融ETF、农业50基金的融资融券信息
df=get_mtss(['510150.XSHG','510230.XSHG','159827.XSHE'],'2021-02-24','2021-02-24',fields=['date','sec_code','fin_value','fin_buy_value','fin_refund_value','sec_value','sec_sell_value','sec_refund_value','fin_sec_value'])
print(df)
date sec_code fin_value fin_buy_value fin_refund_value \
0 2021-02-24 510150.XSHG 34822768.0 2121711.0 3335257.0
1 2021-02-24 510230.XSHG 41945048.0 3083287.0 7138831.0
2 2021-02-24 159827.XSHE 6530989.0 1408821.0 1551326.0
sec_value sec_sell_value sec_refund_value fin_sec_value
0 0.0 0.0 0.0 34822768.0
1 0.0 0.0 0.0 41945048.0
2 0.0 0.0 0.0 6530989.0
get_margincash_stocks(date)
参数 date:默认为None,不指定时返回上交所、深交所最近一次披露的的可融资标的列表的list。
返回结果 返回指定日期上交所、深交所披露的的可融资标的列表的list。
示例
# 判断芯片ETF是否在可融资列表
'159813.XSHE' in get_margincash_stocks(date='2021-03-02')
>>> True
get_marginsec_stocks(date)
参数 date:默认为None,不指定时返回上交所、深交所最近一次披露的的可融券标的列表的list。
返回结果 返回指定日期上交所、深交所披露的的可融券标的列表的list。
示例
# 判断新经济ETF是否在可融券列表
'159822.XSHE' in get_marginsec_stocks(date='2021-03-02')
>>> True
from jqdatasdk import *
finance.run_query(query(finance.STK_MT_TOTAL).filter(finance.STK_MT_TOTAL.date=='2019-05-23').limit(n))
描述:记录上海交易所和深圳交易所的融资融券汇总数据
参数:
字段设计
| 名称 | 类型 | 描述 |
| date | date | 交易日期 |
| exchange_code | varchar(12) | 交易市场。例如,XSHG-上海证券交易所;XSHE-深圳证券交易所。 对应DataAPI.SysCodeGet.codeTypeID=10002。 |
| fin_value | decimal(20,2) | 融资余额(元) |
| fin_buy_value | decimal(20,2) | 融资买入额(元) |
| sec_volume | int | 融券余量(股) |
| sec_value | decimal(20,2) | 融券余量金额(元) |
| sec_sell_volume | int | 融券卖出量(股) |
| fin_sec_value | decimal(20,2) | 融资融券余额(元) |
返回结果:
注意:
示例:
#查询2019-05-23的融资融券汇总数据。
df=finance.run_query(query(finance.STK_MT_TOTAL).filter(finance.STK_MT_TOTAL.date=='2019-05-23'))
print(df)
id date exchange_code fin_value fin_buy_value sec_volume \
0 4445 2019-05-23 XSHE 3.601290e+11 1.460400e+10 136000000
1 4446 2019-05-23 XSHG 5.605276e+11 1.906461e+10 930593681
sec_value sec_sell_volume fin_sec_value
0 1.465000e+09 26000000 3.615940e+11
1 6.018287e+09 144633497 5.665458e+11
from jqdatasdk import finance
finance.run_query(query(finance.FUND_MAIN_INFO).filter(finance.FUND_MAIN_INFO.main_code==main_code).limit(n))
描述:记录不同基金的主体信息
参数:
字段设计
| 字段 | 名称 | 类型 |
|---|---|---|
| main_code | 基金主体代码 | varchar(12) |
| name | 基金名称 | varchar(100) |
| advisor | 基金管理人 | varchar(100) |
| trustee | 基金托管人 | varchar(100) |
| operate_mode_id | 基金运作方式编码 | int |
| operate_mode | 基金运作方式 | varchar(32) |
| underlying_asset_type_id | 投资标的类型编码 | int |
| underlying_asset_type | 投资标的类型 | varchar(32) |
| start_date | 成立日期 | date |
| pub_date | 发行日期 | date |
| end_date | 结束日期 | date |
| invest_style_id | 投资风格编码 | int |
| invest_style | 投资风格 | varchar(32) |
| statistics_main_code | 基金统计主代码(仅多份额基金存在此字段) | varchar(32) |
| 基金运作方式编码 |
| 编码 | 401001 | 401002 | 401003 | 401004 | 401005 | 401006 | 401008 |
|---|---|---|---|---|---|---|---|
| 基金运作方式 | 开放式基金 | 封闭式基金 | QDII | FOF | ETF | LOF | 基础设施基金 |
基金类别编码
| 编码 | 402001 | 402002 | 402003 | 402004 | 402005 | 402006 | 402007 |
|---|---|---|---|---|---|---|---|
| 基金类别 | 股票型 | 货币型 | 债券型 | 混合型 | 基金型 | 贵金属 | 封闭式 |
返回结果:
注意:
示例:
场内
#查询瑞和小康封闭式基金的基金主体信息数据,传入的基金代码无须添加后缀
from jqdatasdk import finance
q=query(finance.FUND_MAIN_INFO).filter(finance.FUND_MAIN_INFO.main_code=='150008')
df=finance.run_query(q)
print(df)
id main_code name advisor trustee operate_mode_id \
0 4975 150008 瑞和小康 国投瑞银基金管理有限公司 中国工商银行股份有限公司 401002
operate_mode underlying_asset_type_id underlying_asset_type start_date \
0 封闭式基金 402001 股票型 2009-10-14
end_date
0 2020-08-28
场外
#查询华夏成长开放式基金的基金主体信息数据,传入的基金代码无须添加后缀
q=query(finance.FUND_MAIN_INFO).filter(finance.FUND_MAIN_INFO.main_code=='000001')
df=finance.run_query(q)
print(df)
id main_code name advisor trustee operate_mode_id operate_mode \
0 1 000001 华夏成长 华夏基金管理有限公司 中国建设银行股份有限公司 401001 开放式基金
underlying_asset_type_id underlying_asset_type start_date end_date
0 402004 混合型 2001-12-18 None
from jqdatasdk import finance
finance.run_query(query(finance.FUND_NET_VALUE).filter(finance.FUND_NET_VALUE.code==code).limit(n))
描述:记录公募基金的净值数据
参数:
字段设计
| 字段 | 名称 | 类型 | 注释 |
|---|---|---|---|
| code | 基金代码 | varchar(12) | |
| day | 交易日 | date | |
| net_value | 单位净值 | decimal(20,6) | 基金单位净值=(基金资产总值-基金负债)÷ 基金总份额 |
| sum_value | 累计净值 | decimal(20,6) | 累计单位净值=单位净值+成立以来每份累计分红派息的金额 |
| factor | 复权因子 | decimal(20,6) | 交易日最近一次分红拆分送股的复权因子 |
| acc_factor | 累计复权因子 | decimal(20,6) | 基金从上市至今累计分红拆分送股的复权因子 |
| refactor_net_value | 累计复权净值 | decimal(20,6) | 复权单位净值=单计净值+成立以来每份累计分红派息的金额(1+涨跌幅) |
返回结果:
注意:
示例:
场内
#查询瑞和小康("150008)基金净值数据,传入的基金代码无需添加后缀
from jqdatasdk import finance
q=query(finance.FUND_NET_VALUE).filter(finance.FUND_NET_VALUE.code=="150008").order_by(finance.FUND_NET_VALUE.day.desc()).limit(5)
df=finance.run_query(q)
print(df)
id code day net_value sum_value factor acc_factor \
0 23506832 150008 2020-08-27 1.227 1.613 1.0 1.314668
1 23506831 150008 2020-08-26 1.228 1.614 1.0 1.314668
2 23506830 150008 2020-08-25 1.234 1.622 1.0 1.314668
3 23425100 150008 2020-08-24 1.234 1.622 1.0 1.314668
4 23414948 150008 2020-08-21 1.229 1.616 1.0 1.314668
refactor_net_value
0 1.613098
1 1.614412
2 1.622300
3 1.622300
4 1.615727
场外
#查询华夏成长证券投资基金("000001")基金净值数据,传入的基金代码无需添加后缀
q=query(finance.FUND_NET_VALUE).filter(finance.FUND_NET_VALUE.code=="000001").order_by(finance.FUND_NET_VALUE.day.desc()).limit(5)
df=finance.run_query(q)
print(df)
id code day net_value sum_value factor acc_factor \
0 27902258 000001 2021-03-05 1.284 3.795 1.0 6.062503
1 27897919 000001 2021-03-04 1.281 3.792 1.0 6.062503
2 27884693 000001 2021-03-03 1.330 3.841 1.0 6.062503
3 27871106 000001 2021-03-02 1.315 3.826 1.0 6.062503
4 27864300 000001 2021-03-01 1.336 3.847 1.0 6.062503
refactor_net_value
0 7.784254
1 7.766066
2 8.063129
3 7.972191
4 8.099504
from jqdatasdk import finance
finance.run_query(query(finance.FUND_PORTFOLIO_STOCK).filter(finance.FUND_PORTFOLIO_STOCK.code==code).limit(n))
描述:统计基金季度报表、半年度报表和年度报表披露的股票持仓数据
参数:
字段设计
| 字段名称 | 中文名称 | 字段类型 |
|---|---|---|
| code | 基金代码 | varchar(12) |
| period_start | 开始日期 | date |
| period_end | 报告期 | date |
| pub_date | 公告日期 | date |
| report_type_id | 报告类型编码 | int |
| report_type | 报告类型 | varchar(32) |
| rank | 持仓排名 | int |
| symbol | 股票代码 | varchar(32) |
| name | 股票名称 | varchar(100) |
| shares | 持有股票 | decimal(20,4) |
| market_cap | 持有股票的市值 | decimal(20,4) |
| proportion | 占净值比例 | decimal(10,4) |
返回结果:
注意:
示例:
场内
#查询合润A基金("150016")最近一个季度的基金持仓股票组合前5只股票
q=query(finance.FUND_PORTFOLIO_STOCK).filter(finance.FUND_PORTFOLIO_STOCK.code=="150016").order_by(finance.FUND_PORTFOLIO_STOCK.pub_date.desc()).limit(5)
df=finance.run_query(q)
print(df)
id code period_start period_end pub_date report_type_id \
0 16178727 150016 2020-10-01 2020-12-31 2021-01-22 403004
1 16178726 150016 2020-10-01 2020-12-31 2021-01-22 403004
2 16178725 150016 2020-10-01 2020-12-31 2021-01-22 403004
3 16178724 150016 2020-10-01 2020-12-31 2021-01-22 403004
4 16178723 150016 2020-10-01 2020-12-31 2021-01-22 403004
report_type rank symbol name shares market_cap proportion
0 第四季度 10 601012 隆基股份 6707249.0 5.835850e+08 2.83
1 第四季度 9 688099 晶晨股份 7575165.0 5.887965e+08 2.86
2 第四季度 8 000895 双汇发展 13913806.0 6.439926e+08 3.13
3 第四季度 7 300413 芒果超媒 9394546.0 6.811046e+08 3.31
4 第四季度 6 002594 比亚迪 3581370.0 6.958602e+08 3.38
场外
#查询中海新能源主题灵活配置混合型证券投资基金("398051")最近一个季度的基金持仓股票组合前10只股票
q=query(finance.FUND_PORTFOLIO_STOCK).filter(finance.FUND_PORTFOLIO_STOCK.code=="398051").order_by(finance.FUND_PORTFOLIO_STOCK.pub_date.desc()).limit(5)
df=finance.run_query(q)
print(df)
id code period_start period_end pub_date report_type_id \
0 16189331 398051 2020-10-01 2020-12-31 2021-01-22 403004
1 16189327 398051 2020-10-01 2020-12-31 2021-01-22 403004
2 16189328 398051 2020-10-01 2020-12-31 2021-01-22 403004
3 16189329 398051 2020-10-01 2020-12-31 2021-01-22 403004
4 16189330 398051 2020-10-01 2020-12-31 2021-01-22 403004
report_type rank symbol name shares market_cap proportion
0 第四季度 5 002460 赣锋锂业 496540.0 50249848.00 3.63
1 第四季度 1 300750 宁德时代 203995.0 71624684.45 5.17
2 第四季度 2 600438 通威股份 1673800.0 64340872.00 4.64
3 第四季度 3 002594 比亚迪 285600.0 55492080.00 4.00
4 第四季度 4 300124 汇川技术 540276.0 50407750.80 3.64
from jqdatasdk import finance
finance.run_query(query(finance.FUND_PORTFOLIO_BOND).filter(finance.FUND_PORTFOLIO_BOND.code==code).limit(n))
描述:记录公募基金按季度公布的债券组合,为债券投资者提供一些参照
参数:
字段设计
| 字段名称 | 中文名称 | 字段类型 |
|---|---|---|
| code | 基金代码 | varchar(12) |
| period_start | 开始日期 | date |
| period_end | 报告期 | date |
| pub_date | 公告日期 | date |
| report_type_id | 报告类型编码 | int |
| report_type | 报告类型 | varchar(32) |
| rank | 持仓排名 | int |
| symbol | 债券代码 | varchar(32) |
| name | 债券名称 | varchar(100) |
| shares | 持有债券数量 | decimal(20,4) |
| market_cap | 持有债券的市值 | decimal(20,4) |
| proportion | 占净值比例 | decimal(10,4) |
返回结果:
注意:
示例:
场内
#查询银华锐进基金("150019")基金持有的债券组合数据
df=finance.run_query(query(finance.FUND_PORTFOLIO_BOND).filter(finance.FUND_PORTFOLIO_BOND.code=='150019').order_by(finance.FUND_PORTFOLIO_BOND.pub_date.desc()).limit(5))
print(df)
id code period_start period_end pub_date report_type_id \
0 727440 150019 2019-04-01 2019-06-30 2019-07-19 403002
1 697207 150019 2019-01-01 2019-03-31 2019-04-18 403001
2 697208 150019 2019-01-01 2019-03-31 2019-04-18 403001
3 697209 150019 2019-01-01 2019-03-31 2019-04-18 403001
report_type rank symbol name shares market_cap proportion
0 第二季度 1 108603 国开1804 90000.0 9005400.0 0.14
1 第一季度 1 018005 国开1701 380000.0 38003800.0 0.57
2 第一季度 2 108603 国开1804 80000.0 8040000.0 0.12
3 第一季度 3 019537 16国债09 66810.0 6681000.0 0.10
场外
#查询中海环保新能源主题灵活配置混合型证券投资基金("398051")基金持有的债券组合数据
df=finance.run_query(query(finance.FUND_PORTFOLIO_BOND).filter(finance.FUND_PORTFOLIO_BOND.code=='398051').order_by(finance.FUND_PORTFOLIO_BOND.pub_date.desc()).limit(5))
print(df)
id code period_start period_end pub_date report_type_id \
0 929557 398051 2020-10-01 2020-12-31 2021-01-22 403004
1 929556 398051 2020-10-01 2020-12-31 2021-01-22 403004
2 929555 398051 2020-10-01 2020-12-31 2021-01-22 403004
3 929554 398051 2020-10-01 2020-12-31 2021-01-22 403004
4 929558 398051 2020-10-01 2020-12-31 2021-01-22 403004
report_type rank symbol name shares market_cap proportion
0 第四季度 4 113040 星宇转债 110000.0 15744300.00 1.14
1 第四季度 3 019640 20国债10 235200.0 23489424.00 1.69
2 第四季度 2 123070 鹏辉转债 269372.0 37356508.96 2.70
3 第四季度 1 019645 20国债15 380000.0 38136800.00 2.75
4 第四季度 5 113586 上机转债 37130.0 15395583.20 1.11
from jqdatasdk import finance
finance.run_query(query(finance.FUND_PORTFOLIO).filter(finance.FUND_PORTFOLIO.code==code).limit(n))
描述:基金资产组合概况
参数:
字段设计
| 字段名称 | 中文名称 | 字段类型 |
|---|---|---|
| code | 基金代码 | varchar(12) |
| name | 基金名称 | varchar(80) |
| period_start | 开始日期 | date |
| period_end | 报告期 | date |
| pub_date | 公告日期 | date |
| report_type_id | 报告类型编码 | int |
| report_type | 报告类型 | varchar(32) |
| equity_value | 权益类投资金额 | decimal(20,4) |
| equity_rate | 权益类投资占比 | decimal(10,4) |
| stock_value | 股票投资金额 | decimal(20,4) |
| stock_rate | 股票投资占比 | decimal(10,4) |
| fixed_income_value | 固定收益投资金额 | decimal(20,4) |
| fixed_income_rate | 固定收益投资占比 | decimal(10,4) |
| precious_metal_value | 贵金属投资金额 | decimal(20,4) |
| precious_metal_rate | 贵金属投资占比 | decimal(10,4) |
| derivative_value | 金融衍生品投资金额 | decimal(20,4) |
| derivative_rate | 金融衍生品投资占比 | decimal(10,4) |
| buying_back_value | 买入返售金融资产金额 | decimal(20,4) |
| buying_back_rate | 买入返售金融资产占比 | decimal(10,4) |
| deposit_value | 银行存款和结算备付金合计 | decimal(20,4) |
| deposit_rate | 银行存款和结算备付金合计占比 | decimal(10,4) |
| others_value | 其他资产 | decimal(20,4) |
| others_rate | 其他资产占比 | decimal(10,4) |
| total_asset | 总资产合计 | decimal(20,4) |
返回结果:
注意:
示例:
场内
#查询深成指B基金("150023")基金资产组合概况数据,传入的基金代码无需后缀
from jqdatasdk import finance
q=query(finance.FUND_PORTFOLIO.code,
finance.FUND_PORTFOLIO.name,
finance.FUND_PORTFOLIO.pub_date,
finance.FUND_PORTFOLIO.stock_rate,
finance.FUND_PORTFOLIO.fixed_income_rate,
finance.FUND_PORTFOLIO.total_asset).filter(finance.FUND_PORTFOLIO.code=="150023").order_by(finance.FUND_PORTFOLIO.pub_date.desc()).limit(5)
df=finance.run_query(q)
print(df)
code name pub_date stock_rate fixed_income_rate \
0 150023 申万菱信深证成指分级证券投资基金申万进取份额 2021-01-22 84.92 0.0
1 150023 申万菱信深证成指分级证券投资基金申万进取份额 2020-10-28 93.66 0.0
2 150023 申万菱信深证成指分级证券投资基金申万进取份额 2020-07-21 93.18 NaN
3 150023 申万菱信深证成指分级证券投资基金申万进取份额 2020-04-22 92.68 NaN
4 150023 申万菱信深证成指分级证券投资基金申万进取份额 2020-01-20 93.35 NaN
total_asset
0 2.499121e+09
1 3.503815e+09
2 3.314002e+09
3 2.794784e+09
4 2.960295e+09
场外
#查询开元证券投资基金("184688")基金资产组合概况数据,传入的基金代码无需后缀
from jqdatasdk import finance
q=query(finance.FUND_PORTFOLIO.code,
finance.FUND_PORTFOLIO.name,
finance.FUND_PORTFOLIO.pub_date,
finance.FUND_PORTFOLIO.stock_rate,
finance.FUND_PORTFOLIO.fixed_income_rate,
finance.FUND_PORTFOLIO.total_asset).filter(finance.FUND_PORTFOLIO.code=="184688").order_by(finance.FUND_PORTFOLIO.pub_date.desc()).limit(5)
df=finance.run_query(q)
print(df)
code name pub_date stock_rate fixed_income_rate total_asset
0 184688 开元证券投资基金 2013-01-21 76.08 23.14 1.755376e+09
1 184688 开元证券投资基金 2012-10-26 73.16 25.00 1.710568e+09
2 184688 开元证券投资基金 2012-07-18 73.93 24.76 1.733814e+09
3 184688 开元证券投资基金 2012-04-23 76.62 21.86 1.726419e+09
4 184688 开元证券投资基金 2012-01-20 73.83 24.41 1.625162e+09
from jqdatasdk import finance
finance.run_query(query(finance.FUND_FIN_INDICATOR).filter(finance.FUND_FIN_INDICATOR.code==code).limit(n))
描述:基金财务指标表
参数:
字段设计
| 字段 | 名称 | 类型 |
|---|---|---|
| code | 基金代码 | varchar(12) |
| name | 基金名称 | varchar(80) |
| period_start | 开始日期 | date |
| period_end | 结束日期 | date |
| pub_date | 公告日期 | date |
| report_type_id | 报告类型编码 | int |
| report_type | 报告类型 | varchar(32) |
| profit | 本期利润 | |
| adjust_profit | 本期利润扣减本期公允价值变动损益后的净额 | |
| avg_profit | 加权平均份额本期利润 | |
| avg_roe | 加权平均净值利润率 | |
| profit_available | 期末可供分配利润 | |
| profit_avaialbe_per_share | 期末可供分配份额利润 | |
| total_tna | 期末基金资产净值 | |
| nav | 期末基金份额净值 | |
| adjust_nav | 期末还原后基金份额累计净值 | |
| nav_growth | 本期净值增长率 | |
| acc_nav_growth | 累计净值增长率 | |
| adjust_nav_growth | 扣除配售新股基金净值增长率 |
返回结果:
注意:
示例:
场内
#查询中证100A ("150012")最近公布的基金财务指标数据
from jqdatasdk import finance
df=finance.run_query(query(finance.FUND_FIN_INDICATOR).filter(finance.FUND_FIN_INDICATOR.code=="150012").order_by(finance.FUND_FIN_INDICATOR.pub_date.desc()).limit(5))
print(df)
id code name period_start period_end \
0 292513 150012 国联安双禧中证100指数分级证券投资基金之双禧A份额 2020-10-01 2020-12-03
1 281349 150012 国联安双禧中证100指数分级证券投资基金之双禧A份额 2020-07-01 2020-09-30
2 271957 150012 国联安双禧中证100指数分级证券投资基金之双禧A份额 2020-01-01 2020-06-30
3 261374 150012 国联安双禧中证100指数分级证券投资基金之双禧A份额 2020-04-01 2020-06-30
4 253095 150012 国联安双禧中证100指数分级证券投资基金之双禧A份额 2019-01-01 2019-12-31
pub_date report_type_id report_type profit adjust_profit \
0 2021-01-22 NaN None 45870259.14 None
1 2020-10-28 403003.0 第三季度 36286659.81 None
2 2020-08-31 403005.0 半年度 4531704.53 None
3 2020-07-21 403002.0 第二季度 24149860.00 None
4 2020-04-30 403006.0 年度 57334199.41 None
... avg_roe profit_available profit_avaialbe_per_share \
0 ... NaN NaN NaN
1 ... NaN NaN NaN
2 ... 2.31 83167293.31 0.4727
3 ... NaN NaN NaN
4 ... 33.40 89486260.36 0.4413
total_tna nav adjust_nav nav_growth acc_nav_growth \
0 3.340269e+08 0.998 None NaN NaN
1 3.989853e+08 1.314 None NaN NaN
2 1.971414e+08 1.120 None 2.85 72.87
3 1.971414e+08 1.120 None NaN NaN
4 2.208318e+08 1.089 None 39.27 68.09
adjust_nav_growth total_asset
0 None None
1 None None
2 None None
3 None None
4 None None
[5 rows x 21 columns]
场外
# 查询开元证券投资基金("184688")最近公布的基金财务指标数据
from jqdatasdk import finance
df=finance.run_query(query(finance.FUND_FIN_INDICATOR).filter(finance.FUND_FIN_INDICATOR.code=="184688").order_by(finance.FUND_FIN_INDICATOR.pub_date.desc()).limit(5))
print(df)
id code name period_start period_end pub_date \
0 96394 184688 开元证券投资基金 2013-01-01 2013-02-17 2013-04-19
1 96390 184688 开元证券投资基金 2012-01-01 2012-12-31 2013-03-29
2 96393 184688 开元证券投资基金 2012-10-01 2012-12-31 2013-01-21
3 96392 184688 开元证券投资基金 2012-07-01 2012-09-30 2012-10-26
4 96389 184688 开元证券投资基金 2012-01-01 2012-06-30 2012-08-29
report_type_id report_type profit adjust_profit ... \
0 403001 第一季度 1.046992e+08 -2.691637e+08 ...
1 403006 年度 1.294180e+08 -9.863223e+07 ...
2 403004 第四季度 4.416168e+07 -1.701878e+07 ...
3 403003 第三季度 -2.341911e+07 -5.788890e+06 ...
4 403005 半年度 1.086755e+08 -7.582456e+07 ...
avg_roe profit_available profit_avaialbe_per_share total_tna nav \
0 NaN NaN NaN 1.853842e+09 0.9269
1 7.48 -2.508577e+08 -0.1254 1.749142e+09 0.8746
2 NaN NaN NaN 1.749142e+09 0.8746
3 NaN NaN NaN 1.704981e+09 0.8525
4 6.12 -2.716003e+08 -0.1358 1.728400e+09 0.8642
adjust_nav nav_growth acc_nav_growth adjust_nav_growth total_asset
0 None NaN NaN None None
1 None 7.99 488.67 None None
2 None NaN NaN None None
3 None NaN NaN None None
4 None 6.70 484.78 None None
[5 rows x 21 columns]
from jqdatasdk import finance
finance.run_query(query(finance.FUND_MF_DAILY_PROFIT).filter(finance.FUND_MF_DAILY_PROFIT.code==code).limit(n))
描述:货币基金收益日报
参数:
字段设计
| 字段 | 名称 | 类型 |
|---|---|---|
| code | 基金代码 | varchar(12) |
| name | 基金名称 | varchar(80) |
| end_date | 收益日期 | date |
| weekly_yield | 7日年化收益率(%) | decimal(10,4) |
| daily_profit | 每万份基金单位当日收益(元) | decimal(10,4) |
返回结果:
注意:
示例:
#查询汇添富现金宝("000330")货币基金收益日报数据,只显示5条信息。
from jqdatasdk import finance
df=finance.run_query(query(finance.FUND_MF_DAILY_PROFIT).filter(finance.FUND_MF_DAILY_PROFIT.code=='000330').order_by(finance.FUND_MF_DAILY_PROFIT.end_date.desc()).limit(5))
print(df)
id code name end_date weekly_yield daily_profit
0 1742123 000330 汇添富现金宝货币市场基金A类 2021-03-17 2.165 0.5857
1 1741454 000330 汇添富现金宝货币市场基金A类 2021-03-16 2.172 0.5863
2 1740404 000330 汇添富现金宝货币市场基金A类 2021-03-15 2.168 0.6136
3 1740100 000330 汇添富现金宝货币市场基金A类 2021-03-14 2.155 0.5785
4 1739586 000330 汇添富现金宝货币市场基金A类 2021-03-13 2.155 0.5812
from jqdatasdk import finance
finance.run_query(query(finance.FUND_DIVIDEND).filter(finance.FUND_DIVIDEND.code==code).limit(n))
描述:记录基金分红、拆分和合并的方案
参数:
字段设计
| 字段 | 名称 | 类型 |
|---|---|---|
| code | 基金代码 | varchar(12) |
| name | 基金名称 | varchar(80) |
| pub_date | 公布日期 | date |
| event_id | 事项类别 | int |
| event | 事项名称 | varchar(100) |
| distribution_date | 分配收益日 | date |
| process_id | 方案进度编码 | int |
| process | 方案进度 | varchar(100) |
| proportion | 派现比例 | decimal(20,8) |
| split_ratio | 分拆(合并、赠送)比例 | decimal(20,8) |
| record_date | 权益登记日 | date |
| ex_date | 除息日 | date |
| fund_paid_date | 基金红利派发日 | date |
| redeem_date | 再投资赎回起始日 | date |
| dividend_implement_date | 分红实施公告日 | dated |
| dividend_cancel_date | 取消分红公告日 | date |
| otc_ex_date | 场外除息日 | date |
| pay_date | 红利派发日 | date |
| new_share_code | 新增份额基金代码 | varchar(10) |
| new_share_name | 新增份额基金名称 | varchar(100) |
事项类别编码 404
| 编码 | 名称 |
|---|---|
| 404001 | 基金分红 |
| 404002 | 基金分拆 |
| 404003 | 基金合并 |
| 404004 | 基金赠送 |
| 404005 | 分级基金折算 |
基金分红拆分合并进度编码 405
| 编码 | 名称 |
|---|---|
| 405001 | 分红预案 |
| 405002 | 实施方案 |
| 405003 | 取消折算 |
返回结果:
注意:
示例:
场内
#查询银华稳进("150018")基金分红拆分合并数据。
from jqdatasdk import finance
df=finance.run_query(query(finance.FUND_DIVIDEND).filter(finance.FUND_DIVIDEND.code=="150018").order_by(finance.FUND_DIVIDEND.pub_date.desc()).limit(5))
print(df)
id code name pub_date event_id event \
0 67506 150018 银华深证100指数分级证券投资基金之银华稳进 2021-01-05 404005 分级基金折算
1 66010 150018 银华深证100指数分级证券投资基金之银华稳进 2020-01-06 404005 分级基金折算
2 49827 150018 银华深证100指数分级证券投资基金之银华稳进 2019-01-04 404005 分级基金折算
3 17737 150018 银华深证100指数分级证券投资基金之银华稳进 2018-01-04 404005 分级基金折算
4 15266 150018 银华深证100指数分级证券投资基金之银华稳进 2017-01-05 404005 分级基金折算
distribution_date process_id process proportion ... \
0 None None None None ...
1 None None None None ...
2 None None None None ...
3 None None None None ...
4 None None None None ...
record_date ex_date fund_paid_date redeem_date dividend_implement_date \
0 2020-12-31 2020-12-31 None None None
1 2020-01-02 2020-01-02 None None None
2 2019-01-02 2019-01-02 None None None
3 2018-01-02 2018-01-02 None None None
4 2017-01-03 2017-01-03 None None None
dividend_cancel_date otc_ex_date pay_date new_share_code \
0 None None None 77161812
1 None None None 77161812
2 None None None 77161812
3 None None None 77161812
4 None None None 77161812
new_share_name
0 银华深证100指数证券投资基金(LOF)
1 银华深证100指数分级证券投资基金
2 银华深证100指数分级证券投资基金
3 银华深证100指数分级证券投资基金
4 银华深证100指数分级证券投资基金
[5 rows x 21 columns]
场外
#查询开元证券投资基金("184688")基金分红拆分合并数据。
from jqdatasdk import finance
df=finance.run_query(query(finance.FUND_DIVIDEND).filter(finance.FUND_DIVIDEND.code=="184688").order_by(finance.FUND_DIVIDEND.pub_date.desc()).limit(4))
print(df)
id code name pub_date event_id event distribution_date \
0 2759 184688 开元证券投资基金 2011-02-15 404001 基金分红 2010-12-31
1 2306 184688 开元证券投资基金 2010-04-03 404001 基金分红 2009-12-31
2 1581 184688 开元证券投资基金 2008-03-29 404001 基金分红 2007-12-31
3 1452 184688 开元证券投资基金 2007-10-25 404001 基金分红 2007-09-30
process_id process proportion ... record_date ex_date \
0 405002 实施方案 0.030 ... 2011-02-18 None
1 405002 实施方案 0.050 ... 2010-04-13 None
2 405002 实施方案 1.372 ... 2008-04-10 None
3 405002 实施方案 0.300 ... 2007-11-01 None
fund_paid_date redeem_date dividend_implement_date dividend_cancel_date \
0 None None 2011-02-15 None
1 None None 2010-04-03 None
2 None None 2008-03-29 None
3 None None 2007-10-25 None
otc_ex_date pay_date new_share_code new_share_name
0 2011-02-21 2011-02-21 None None
1 2010-04-14 2010-04-14 None None
2 2008-04-11 2008-04-11 None None
3 2007-11-02 2007-11-02 None None
[4 rows x 21 columns]
get_security_info(code)
获取股票/基金/指数的信息.
参数
返回值
一个对象, 有如下属性:
示例
# 获取沪深300指数的中文名称
get_security_info("000300.XSHG").display_name
# 获取沪深300指数的缩写简称
get_security_info("000300.XSHG").name
# 获取沪深300指数的上市日期
get_security_info("000300.XSHG").start_date
#获取沪深300指数的类型
get_security_info("000300.XSHG").type
get_all_securities(types=[], date=None)
获取平台支持的所有股票、基金、指数、期货信息
参数
返回 返回[pandas.DataFrame,如案例所示
示例
# 获得所有指数列表
df=get_all_securities(['index'])
print(df[:4])
display_name name start_date end_date type
000001.XSHG 上证指数 SZZS 1991-07-15 2200-01-01 index
000002.XSHG A股指数 AGZS 1992-02-21 2200-01-01 index
000003.XSHG B股指数 BGZS 1992-02-21 2200-01-01 index
000004.XSHG 工业指数 GYZS 1993-05-03 2200-01-01 index
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None, panel=True, fill_paused=True)
关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,
我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充. 如想跳过, 请使用 skip_paused=True 参数, 注意当 panel=True 且获取多标的时不支持(panel结构需要索引对齐)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close','paused','open_interest'], open_interest为期货持仓量 |
| skip_paused | 是否跳过不交易日期(含:停牌/未上市/退市后的日期) | 如果不跳过, 停牌时会使用停牌前的数据填充,上市前或者退市后数据都为 nan。 |
| fill_paused | 对于停牌股票的价格处理,默认为True | 默认为True,用pre_close价格填充);False 表示使用NAN填充停牌的股票价格。 |
| fq | 复权选项,默认为前复权(fq='pre') | 'pre':前复权 / 'none':不复权, 返回实际价格 / 'post':后复权 |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如本地pandas版本大于0.25将强制返回dataframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的股票数量 | 单位股 |
| money | 时间段中的成交的金额 | |
| factor | pre':前复权(默认)/None:不复权,返回实际价格/'post':后复权 | 前(后)复权数据=价格×前(后)复权因子; 前(后)复权后的成交量=成交量 / 前(后)复权因子; 成交额不处理 |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:股票是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
| pre_close | 前一个单位时间结束时的价格,按天则是前一天的收盘价 | 期货:pre_close--前一天结算;建议使用get_extras获取结算价;在分钟频率下pre_close=open |
| paused | bool值,股票是否停牌; | 停牌时open/close/low/high/pre_close;都等于停牌前的收盘价, volume=money=0 |
返回
代码示例
获取一支指数
# 获得上证指数的2018年08月01日 10:00:00-2018年08月01日 10:05:00的分钟数据
df = get_price('000001.XSHG', start_date='2018-08-01 10:00:00', end_date='2018-08-01 10:05:00', frequency='1m')
# 返回[pandas.DataFrame]对象, 行索引是[datetime.datetime]对象, 列索引是行情字段名字
print(df[:5])
open close high low volume \
2018-08-01 10:00:00 2895.33 2896.48 2896.48 2895.33 105555600.0
2018-08-01 10:01:00 2897.39 2894.12 2897.39 2894.12 106207600.0
2018-08-01 10:02:00 2893.73 2892.71 2893.73 2892.05 94199600.0
2018-08-01 10:03:00 2892.74 2892.19 2892.74 2891.62 75960400.0
2018-08-01 10:04:00 2891.84 2891.77 2892.42 2891.56 68796400.0
money
2018-08-01 10:00:00 1.165263e+09
2018-08-01 10:01:00 1.113068e+09
2018-08-01 10:02:00 9.975439e+08
2018-08-01 10:03:00 7.984701e+08
2018-08-01 10:04:00 7.453942e+08
获取多只指数
#获得上证指数和A股指数在2018-08-01 10:00:00至2018-08-01 10:05:00的分钟数据,返回[pandas.Panel]对象
panel=get_price(['000001.XSHG','000002.XSHG'],start_date='2018-08-01 10:00:00', end_date='2018-08-01 10:05:00', frequency='1m')
#返回[pandas.DataFrame]对象,行索引是[datetime.datetime]对象, 列索引是指数代号
df=panel['open'][:4]
print(df)
000001.XSHG 000002.XSHG
2018-08-01 10:00:00 2895.33 3032.32
2018-08-01 10:01:00 2897.39 3034.48
2018-08-01 10:02:00 2893.73 3030.63
2018-08-01 10:03:00 2892.74 3029.60
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流股票软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
返回
返回一个pandas.dataframe对象,可以按任意周期返回指数的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
#获取沪深300按天为周期以"2020-9-16"为基础往前8个交易日的数据
df = get_bars('000300.XSHG', 8, unit='1d',fields=['date','open','high','low','close'],include_now=False,end_dt='2020-9-16')
print(df)
# 输出
date open high low close
0 2020-09-04 4737.24 4778.20 4726.56 4770.22
1 2020-09-07 4759.52 4789.30 4655.56 4669.37
2 2020-09-08 4683.83 4707.90 4639.05 4694.39
3 2020-09-09 4634.25 4645.20 4558.03 4584.59
4 2020-09-10 4632.10 4647.75 4572.21 4581.98
5 2020-09-11 4572.26 4630.88 4563.11 4627.28
6 2020-09-14 4652.05 4666.99 4625.99 4651.05
7 2020-09-15 4649.45 4691.50 4630.54 4688.48
# 获取沪深300、上证指数按5分钟为周期以“2020-9-16 14:22:35”为基础前4个时间单位的数据
df = get_bars(['000300.XSHG','000001.XSHG'],4, unit='5m',fields=['date','open','high','low','close'],include_now=True,end_dt='2020-9-16 14:22:35')
print(df)
# 输出
date open high low close
000300.XSHG 0 2020-09-16 14:10:00 4657.03 4657.93 4650.24 4650.24
1 2020-09-16 14:15:00 4649.63 4649.63 4641.87 4643.58
2 2020-09-16 14:20:00 4643.67 4646.66 4642.36 4642.36
3 2020-09-16 14:22:00 4641.59 4641.64 4638.90 4638.90
000001.XSHG 0 2020-09-16 14:10:00 3282.83 3283.60 3279.32 3279.32
1 2020-09-16 14:15:00 3278.67 3278.67 3273.17 3274.24
2 2020-09-16 14:20:00 3274.25 3275.90 3273.28 3273.36
3 2020-09-16 14:22:00 3272.78 3273.05 3271.11 3271.11
get_call_auction(security, start_date, end_date, fields=None)
支持股票(2010年至今)、场内基金(2019年至今)、指数(2017年至今)和上证ETF期权(2017年至今)的集合竞价数据。当日的集合竞价数据最晚于9:28分返回。为了防止返回数据量过大, 我们每次最多返回5000行。
参数:
返回值:
返回指定时间区间标的集合竞价tick数据,返回字段结果如下:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价(不复权) | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
示例:
#获取沪深300指数2017-09-01至2017-09-05期间的集合竞价数据
df=get_call_auction('000300.XSHG','2017-09-01','2017-09-05')
print(df)
code time current volume money a1_p \
0 000300.XSHG 2017-09-01 09:25:12 3825.34 60406600.0 6.963988e+08 None
1 000300.XSHG 2017-09-04 09:25:10 3828.54 145635600.0 1.222139e+09 None
2 000300.XSHG 2017-09-05 09:25:13 3845.55 59488700.0 6.133801e+08 None
a1_v a2_p a2_v a3_p ... b1_p b1_v b2_p b2_v b3_p b3_v b4_p \
0 None None None None ... None None None None None None None
1 None None None None ... None None None None None None None
2 None None None None ... None None None None None None None
b4_v b5_p b5_v
0 None None None
1 None None None
2 None None None
[3 rows x 25 columns]
get_ticks(security, start_dt=None, end_dt=None, count=None, fields=None, skip=True, df=True)
指数部分, 支持 2017-01-01 至今的tick数据。(每3秒一次快照)
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
指数tick返回结果:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
指数tick数据示例:
# 获取上证指数2019-11-19 10:00:00 到 2019-11-19 10:01:00的tick数据
df=get_ticks('000001.XSHG','2019-11-19 10:00:00','2019-11-19 10:01:00')
print(df[:6])
time current high low volume \
0 2019-11-19 10:00:01.608 2913.4288 2914.6199 2902.855 2.795233e+09
1 2019-11-19 10:00:06.600 2913.1890 2914.6199 2902.855 2.800322e+09
2 2019-11-19 10:00:10.628 2913.0532 2914.6199 2902.855 2.807082e+09
3 2019-11-19 10:00:16.608 2913.3964 2914.6199 2902.855 2.814624e+09
4 2019-11-19 10:00:21.620 2913.2224 2914.6199 2902.855 2.818837e+09
5 2019-11-19 10:00:25.620 2913.6741 2914.6199 2902.855 2.824412e+09
money
0 3.171538e+10
1 3.178079e+10
2 3.185376e+10
3 3.193569e+10
4 3.198723e+10
5 3.204712e+10
更新时间:2005至今,交易日8:00更新
get_index_stocks(index_symbol, date=None)
获取一个指数给定日期在平台可交易的成分股列表,请点击指数列表查看指数信息
参数
返回 返回股票代码的list
示例
# 获取所有沪深300的股票
stocks = get_index_stocks('000300.XSHG')
print(stocks[:5])
# 输出
['000001.XSHE', '000002.XSHE', '000063.XSHE', '000066.XSHE', '000069.XSHE']
get_index_weights(index_id, date=None)
获取指数成份股给定日期的权重数据,每月的月底或者月初更新一次,请点击指数列表查看指数信息
参数
返回
示例
#获取2018年5月9日这天的上证指数的成份股权重
df = get_index_weights(index_id="000001.XSHG", date="2018-05-09")
print(df)
#输出
date weight display_name
603648.XSHG 2018-04-27 0.023 畅联股份
603139.XSHG 2018-04-27 0.007 康惠制药
603138.XSHG 2018-04-27 0.015 海量数据
603136.XSHG 2018-04-27 0.009 天目湖
603131.XSHG 2018-04-27 0.011 上海沪工
... ... ... ...
603005.XSHG 2018-04-27 0.023 晶方科技
603007.XSHG 2018-04-27 0.013 ST花王
603006.XSHG 2018-04-27 0.008 联明股份
603009.XSHG 2018-04-27 0.014 北特科技
603008.XSHG 2018-04-27 0.022 喜临门
get_all_securities(types=[], date=None)
获取平台支持的所有股票、基金、指数、期货、期权信息
参数
返回[pandas.DataFrame]
示例
获得所有期权列表
df=get_all_securities(['options'])
print(df[:5])
#输出
display_name name start_date end_date type
10000001.XSHG 10000001.XSHG 10000001.XSHG 2015-02-09 2015-03-25 options
10000002.XSHG 10000002.XSHG 10000002.XSHG 2015-02-09 2015-03-25 options
10000003.XSHG 10000003.XSHG 10000003.XSHG 2015-02-09 2015-03-25 options
10000004.XSHG 10000004.XSHG 10000004.XSHG 2015-02-09 2015-03-25 options
10000005.XSHG 10000005.XSHG 10000005.XSHG 2015-02-09 2015-03-25 options
将所有期权列表转换成数组
options = list(get_all_securities(['options']).index)
print(options[:5])
#输出
['10000001.XSHG', '10000002.XSHG', '10000003.XSHG', '10000004.XSHG', '10000005.XSHG']
from jqdatasdk import opt
opt.run_query(query(opt.OPT_CONTRACT_INFO).filter(opt.OPT_CONTRACT_INFO.code==code).limit(n))
描述:支持ETF期权、股指期权及商品期权,提供最基础的合约信息
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 | 备注 |
|---|---|---|---|---|
| code | str | 合约代码 | 10001313.XSHG;CU1901C46000.XSGE;SR903C4700.XZCE;M1707-C-2400.XDCE | 注意合约代码使用大写字母 |
| trading_code | int | 合约交易代码 | 510050C1810M02800 | 合约调整会产生新的交易代码 |
| name | str | 合约简称 | 50ETF购10月2800豆粕购7月2400 | 合约调整会产生新的合约简称 |
| contract_type | str | 合约类型。CO-认购期权,PO-认沽期权 | CO | |
| exchange_code | str | 证券市场编码,XSHG:上海证券交易所;XSGE:上海期货交易所;XZCE:郑州商品交易所;XDCE:大连商品交易所 | XSHG | |
| currency_id | str | 货币代码CNY-人民币 | CNY | |
| underlying_symbol | str | 标的代码 | 510050.XSHG | |
| underlying_name | str | 标的简称 | 华夏上证50ETF | |
| underlying_exchange | str | 标的交易市场 | XSHG | |
| underlying_type | str | 标的品种类别。ETF-交易型开放式指数基金FUTURE-期货 | ETF | |
| exercise_price | float | 行权价格 | 2.8 | 合约调整会产生新的行权价格 |
| contract_unit | int | 合约单位 | 10000 | 合约调整会产生新的合约单位 |
| contract_status | str | 合约状态:LIST-上市、DELIST-退市。SUSPEND-停牌 | DELIST | 新期权上市由交易所公布LIST:挂牌日期<=当前日期<=最后交易日DELIST:当前日期>最后交易日 |
| list_date | str | 挂牌日期 | 2018-09-25 | |
| list_reason | str | 合约挂牌原因 | ||
| list_price | decimal(20,4) | 开盘参考价 | 合约挂牌当天交易所会公布 | |
| high_limit | decimal(20,4) | 挂牌涨停价 | 合约挂牌当天交易所会公布 | |
| low_limit | decimal(20,4) | 挂牌跌停价 | 合约上市当天交易所会公布 | |
| expire_date | str | 到期日 | 2018/10/24 | |
| last_trade_date | str | 最后交易日 | 2018/10/24 | |
| exercise_date | str | 行权日 | 2018/10/24 | 50ETF,铜期权是欧式期权,行权日固定。白糖期权和豆粕期权是美式期权,到期日之前都可以行权,行权日不固定,可为空。 |
| delivery_date | str | 交收日期 | 2018/10/25 | |
| is_adjust | int | 是否调整 | 原合约调整为新的合约会发生合约资料的变化1-是,0-否 | |
| delist_date | str | 摘牌日期 | 2018/10/24 | 通联数据和交易所有出入,交易所公布的是2018/10/25摘牌日期=最后交易日T+1 |
| delist_reason | str | 合约摘牌原因 |
返回结果:
注意:
示例:
#查询"10001313.XSHG "最新的期权基本资料数据。
from jqdatasdk import *
q=query(opt.OPT_CONTRACT_INFO).filter(opt.OPT_CONTRACT_INFO.code=='10001313.XSHG')
df=opt.run_query(q)
print(df)
id code trading_code name contract_type \
0 2435 10001313.XSHG 510050C1812A02500 50ETF购12月2450A CO
exchange_code currency_id underlying_symbol underlying_name \
0 XSHG CNY 510050.XSHG 50ETF
underlying_exchange ... list_price high_limit low_limit \
0 XSHG ... 0.3523 0.6216 0.083
expire_date last_trade_date exercise_date delivery_date is_adjust \
0 2018-12-26 2018-12-26 2018-12-26 2018-12-27 1
delist_date delist_reason
0 None None
from jqdatasdk import opt
opt.run_query(query(opt.OPT_ADJUSTMENT).filter(opt.OPT_ADJUSTMENT.code==code).limit(n))
描述:支持ETF期权
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 | 备注 |
|---|---|---|---|---|
| code | str | 合约代码 | 10001313.XSHG; | |
| adj_date | date | 调整日期 | ||
| contract_type | str | 合约类型。CO-认购期权,PO-认沽期权 | CO | |
| ex_trading_code | int | 原交易代码 | 10001465Nan | 合约调整会产生新的交易代码 |
| ex_name | str | 原合约简称 | 50ETF购10月2800豆粕购7月2400 | 合约调整会产生新的合约简称 |
| ex_exercise_price | float | 原行权价 | ||
| ex_contract_unit | int | 原合约单位 | ||
| new_trading_code | str | 新交易代码 | ||
| new_name | str | 新合约简称 | ||
| new_exercise_price | float | 新行权价 | ||
| new_contract_unit | int | 新合约单位 | ||
| adj_reason | str | 调整原因 | ||
| expire_date | str | 到期日 | 2018/10/24 | |
| last_trade_date | str | 最后交易日 | 2018/10/24 | |
| exercise_date | str | 行权日 | 2018/10/24 | 50ETF期权是欧式期权,行权日固定 |
| delivery_date | str | 交收日期 | 2018/10/25 | |
| position | int | 合约持仓 |
返回结果:
注意:
示例:
#查询"10001313.XSHG "最新的期权合约调整记录。
from jqdatasdk import opt
q=query(opt.OPT_ADJUSTMENT).filter(opt.OPT_ADJUSTMENT.code=='10001313.XSHG')
df=opt.run_query(q)
print(df)
id code adj_date contract_type ex_trading_code \
0 70 10001313.XSHG 2018-12-03 CO 510050C1812M02500
ex_name ex_exercise_price ex_contract_unit new_trading_code \
0 50ETF购12月2500 2.5 10000 510050C1812A02500
new_name new_exercise_price new_contract_unit adj_reason \
0 50ETF购12月2450A 2.45 10202 除息
expire_date last_trade_date exercise_date delivery_date position
0 2018-12-26 2018-12-26 2018-12-26 2018-12-27 107928
from jqdatasdk import opt
opt.run_query(query(opt.OPT_DAILY_PREOPEN).filter(opt.OPT_DAILY_PREOPEN.code==code).limit(n))
描述:支持上证ETF期权
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 | 备注 |
| date | str | 交易日期 | 2018-11-09 | |
| code | str | 合约代码 | 10001313.XSHG | |
| trading_code | str | 合约交易代码 | 510050C1812M02500 | 保留,每个交易日仍然存在一 一对应关系 |
| name | str | 合约简称 | 50ETF购12月2500 | 保留,每个交易日仍然存在一 一对应关系 |
| exchange_code | str | 证券市场编码XSHG:上海证券交易所 | XSHG | |
| underlying_symbol | str | 标的代码 | 510050.XSHG | |
| underlying_name | str | 标的名称 | 50ETF | |
| underlying_exchange | str | 标的交易市场 | XSHG | |
| underlying_type | str | 标的品种类别,STOCK:股票;ETF:交易型开放式指数基金;FUTURE:期货 | F | |
| exercise_type | str | 期权履约方式:A 美式;E 欧式 | E | |
| contract_type | str | 合约类型。CO-认购期权,PO-认沽期权 | CO | |
| contract_unit | int | 合约单位 | 10000 | |
| exercise_price | float | 行权价格 | 2.5 | |
| list_date | str | 挂牌日期 | 2018/4/26 | |
| last_trade_date | str | 最后交易日 | 2018/12/26 | |
| exercise_date | str | 行权日 | 2018/12/26 | |
| delivery_date | str | 交收日期 | 2018/12/27 | |
| expire_date | str | 到期日 | 2018/12/26 | |
| contract_version | str | 合约版本号 | 0 | |
| position | int | 持仓量 | 13630 | |
| pre_close | float | 前收盘价 | 0.1391 | |
| pre_settle | float | 前结算价 | 0.1391 | |
| pre_close_underlying | float | 标的证券前收盘 | 2.537 | |
| is_limit | str | 涨跌幅限类型,“N”为有涨跌幅限制 | N | |
| high_limit | float | 涨停价 | 0.3928 | |
| low_limit | float | 跌停价 | 0.0001 | |
| margin_unit | float | 单位保证金 | 4435.4 | |
| margin_ratio_1 | float | 保证金计算比例参数一 | 12 | |
| margin_ratio_2 | float | 保证金计算比例参数二 | 7 | |
| round_lot | int | 整手数 | 1 | |
| limit_order_min | int | 单笔限价申报下限 | 1 | |
| limit_order_max | int | 单笔限价申报上限 | 30 | |
| market_order_min | int | 单笔市价申报下限 | 1 | |
| marker_order_max | int | 单笔市价申报上限 | 10 | |
| quote_change_min | float | 最小报价变动(数值) | 0.0001 | |
| contract_status | str | 合约状态信息 | 0000E | 该字段为8位字符串,左起每位表示特定的含义,无定义则填空格 第1位:‘0’表示可开仓,‘1’表示限制卖出开仓(不.包括备兑开仓)和买入开仓。 第2位:‘0’表示未连续停牌,‘1’表示连续停牌。(预留,暂填0) 第3位:‘0’表示未临近到期日,‘1’表示距离到期日不足5个交易日。 第4位:‘0’表示近期未做调整,‘1’表示最近5个交易日内合约发生过调整。 第5位:‘A’表示当日新挂牌的合约,‘E’表示存续的合约 |
返回结果:
注意:
示例:
#查询"10001313.XSHG "最新的期权每日盘前静态数据。
from jqdatasdk import *
q=query(opt.OPT_DAILY_PREOPEN.code,
opt.OPT_DAILY_PREOPEN.trading_code,
opt.OPT_DAILY_PREOPEN.name,
opt.OPT_DAILY_PREOPEN.exercise_date,).filter(opt.OPT_DAILY_PREOPEN.code=='10001313.XSHG').order_by(opt.OPT_DAILY_PREOPEN.date.desc()).limit(10)
df=opt.run_query(q)
print(df)
code trading_code name exercise_date
0 10001313.XSHG 510050C1812A02500 50ETF购12月2450A 2018-12-26
1 10001313.XSHG 510050C1812A02500 50ETF购12月2450A 2018-12-26
2 10001313.XSHG 510050C1812A02500 50ETF购12月2450A 2018-12-26
3 10001313.XSHG 510050C1812A02500 XD50ETF购12月2450A 2018-12-26
4 10001313.XSHG 510050C1812M02500 50ETF购12月2500 2018-12-26
5 10001313.XSHG 510050C1812M02500 50ETF购12月2500 2018-12-26
6 10001313.XSHG 510050C1812M02500 50ETF购12月2500 2018-12-26
7 10001313.XSHG 510050C1812M02500 50ETF购12月2500 2018-12-26
8 10001313.XSHG 510050C1812M02500 50ETF购12月2500 2018-12-26
9 10001313.XSHG 510050C1812M02500 50ETF购12月2500 2018-12-26
from jqdatasdk import opt
opt.run_query(query(opt.OPT_DAILY_PRICE).filter(opt.OPT_DAILY_PRICE.code==code).limit(n))
描述:提供期权每日开盘价,收盘价,最高价,最低价,成交量,成交额,涨跌幅,持仓量等日行情数据
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 | 备注 |
| code | str | 合约代码 | 10001313.XSHG;CU1901C46000.XSGE;SR903C4700.XZCE;M1707-C-2400.XDCE | 合约代码使用大写字母 |
| exchange_code | str | 证券市场编码, XSHG:上海证券交易所; XSGE:上海期货交易所; XZCE:郑州商品交易所; XDCE:大连商品交易所 |
XSHG | |
| date | str | 交易日期 | 2018/10/25 | |
| pre_settle | float | 前结算价 | 0.1997 | |
| pre_close | float | 前收价 | 0.1997 | |
| open | float | 今开盘 | 0.1683 | |
| high | float | 最高价 | 0.2072 | |
| low | float | 最低价 | 0.1517 | |
| close | float | 收盘价 | 0.2035 | |
| change_pct_close | float | 收盘价涨跌幅(%) | 收盘价/前结算价 | |
| settle_price | float | 结算价 | 0.204 | 收盘价是一天交易的最后一个价,它是由于收盘前1分钟所有买卖盘集中撮合而成 ;结算价:原则上,期权合约的结算价格为该合约当日收盘集合竞价的成交价格。但是,如果当日收盘集合竞价未形成成交价格,或者成交价格明显不合理(比如价格倒挂),那么上交所就会考虑期权交易的多重影响因素,另行计算合约的结算价格。即根据同标的、同到期日、同类型其他行权价的期权合约隐含波动率,推算该合约隐含波动率,并以此计算该合约结算价。 |
| change_pct_settle | float | 结算价涨跌幅(%) | 结算价/前结算价 | |
| volume | float | 成交量(张) | 3126 | |
| money | float | 成交金额(元) | 5620827 | |
| position | int | 持仓量 | 5095 |
返回结果:
注意:
示例:
#查询'10001313.XSHG'最近10个交易日的日行情数据。
from jqdatasdk import opt
q=query(opt.OPT_DAILY_PRICE).filter(opt.OPT_DAILY_PRICE.code=='10001313.XSHG').order_by(opt.OPT_DAILY_PRICE.date.desc()).limit(10)
df=opt.run_query(q)
print(df)
id code exchange_code date pre_settle pre_close \
0 321643 10001313.XSHG XSHG 2018-12-05 0.0797 0.0797
1 320840 10001313.XSHG XSHG 2018-12-04 0.0788 0.0788
2 320046 10001313.XSHG XSHG 2018-12-03 0.0592 0.0604
3 319315 10001313.XSHG XSHG 2018-11-30 0.0510 0.0510
4 318593 10001313.XSHG XSHG 2018-11-29 0.0550 0.0550
5 317860 10001313.XSHG XSHG 2018-11-28 0.0468 0.0468
6 317132 10001313.XSHG XSHG 2018-11-27 0.0553 0.0553
7 316364 10001313.XSHG XSHG 2018-11-26 0.0595 0.0595
8 315590 10001313.XSHG XSHG 2018-11-23 0.0783 0.0783
9 314816 10001313.XSHG XSHG 2018-11-22 0.0892 0.0892
open high low close change_pct_close settle_price \
0 0.0673 0.0785 0.0664 0.0716 -10.1631 0.0716
1 0.0780 0.0821 0.0701 0.0797 1.1421 0.0797
2 0.0880 0.0919 0.0749 0.0788 33.1081 0.0788
3 0.0500 0.0620 0.0497 0.0604 18.4314 0.0604
4 0.0613 0.0629 0.0480 0.0510 -7.2727 0.0510
5 0.0468 0.0577 0.0460 0.0550 17.5214 0.0550
6 0.0589 0.0603 0.0455 0.0468 -15.3707 0.0468
7 0.0612 0.0676 0.0506 0.0553 -7.0588 0.0553
8 0.0784 0.0799 0.0589 0.0595 -24.0102 0.0595
9 0.0923 0.0931 0.0718 0.0783 -12.2197 0.0783
change_pct_settle volume money position
0 -10.1631 44938.0 33451080.0 72717
1 1.1421 55720.0 43805151.0 74468
2 33.1081 106122.0 90415448.0 81186
3 18.4314 146824.0 82267433.0 107928
4 -7.2727 139922.0 78418357.0 122002
5 17.5214 94165.0 49885293.0 97160
6 -15.3707 83460.0 44309064.0 96531
7 -7.0588 78105.0 46594632.0 75401
8 -24.0102 63644.0 42066470.0 64213
9 -12.2197 41977.0 33248317.0 46825
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None, panel=True, fill_paused=True)
关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,
我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充. 如想跳过, 请使用 skip_paused=True 参数, 注意当 panel=True 且获取多标的时不支持(panel结构需要索引对齐)
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close','paused','open_interest'], open_interest为期货持仓量 |
| skip_paused | 是否跳过不交易日期(含:停牌/未上市/退市后的日期) | 如果不跳过, 停牌时会使用停牌前的数据填充,上市前或者退市后数据都为 nan。 |
| fill_paused | 对于停牌股票的价格处理,默认为True | 默认为True,用pre_close价格填充);False 表示使用NAN填充停牌的股票价格。 |
| fq | 复权选项,默认为前复权(fq='pre') | pre':前复权 / 'none':不复权, 返回实际价格/'post': 后复权 |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如本地pandas版本大于0.25将强制返回dataframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的股票数量 | |
| money | 时间段中的成交的金额 | |
| factor | pre':前复权(默认)/None:不复权,返回实际价格/'post':后复权 | 前(后)复权数据=价格×前(后)复权因子; 前(后)复权后的成交量=成交量 / 前(后)复权因子; 成交额不处理 |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 这段时间的平均价 | (1)以"天"为时间单位 股票:[成交额/成交量] 期货:从CTP获取行情,[成交额/(成交量×合约乘数)]; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
| pre_close | 前一个单位时间结束时的价格,按天则是前一天的收盘价 | 期货:pre_close--前一天结算);建议使用get_extras获取结算价;在分钟频率下pre_close=open |
| paused | bool值,股票是否停牌; | 停牌时open/close/low/high/pre_close;都等于停牌前的收盘价, volume=money=0 |
| open_interest | 期权持仓量 |
返回
代码示例
获取一支期权
# 获得锌期权的2021年03月02日 23:30:00-2021年03月02日 23:35:00的分钟数据
df = get_price('ZN2106P23800.XSGE',start_date='2021-03-02 23:30:00', end_date='2021-03-02 23:35:00', frequency='1m')
# 返回[pandas.DataFrame]对象, 行索引是[datetime.datetime]对象, 列索引是行情字段名字
print(df[:5])
open close high low volume money
2021-03-02 23:30:00 2813.0 2813.0 2813.0 2813.0 0.0 0.0
2021-03-02 23:31:00 2813.0 2813.0 2813.0 2813.0 0.0 0.0
2021-03-02 23:32:00 2813.0 2813.0 2813.0 2813.0 0.0 0.0
2021-03-02 23:33:00 2813.0 2813.0 2813.0 2813.0 0.0 0.0
2021-03-02 23:34:00 2813.0 2813.0 2813.0 2813.0 0.0 0.0
获取多只期权
#获得两只锌期权在2018-08-01 2021-02-25 10:00:00至2021-02-25 10:05:00的分钟数据,返回[pandas.Panel]对象
panel = get_price(['ZN2106P23600.XSGE','ZN2106P23800.XSGE'],start_date='2021-02-25 10:00:00', end_date='2021-02-25 10:05:00', frequency='1m')
# 获取开盘价的[pandas.DataFrame],行索引是[datetime.datetime]对象, 列索引是期权代号
df=panel['open']
print(df)
ZN2106P23600.XSGE ZN2106P23800.XSGE
2021-02-25 10:00:00 2561.0 2723.0
2021-02-25 10:01:00 2561.0 2723.0
2021-02-25 10:02:00 2561.0 2723.0
2021-02-25 10:03:00 2561.0 2723.0
2021-02-25 10:04:00 2561.0 2723.0
2021-02-25 10:05:00 2561.0 2723.0
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流股票软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
返回
返回一个pandas.dataframe对象,可以按任意周期返回期权的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
#获取'10001313.XSHG'指定时间周期为5m的期权行情数据
df=get_bars('10001313.XSHG',10,'5m',fields=['date','open','high','low','close'],end_dt='2018-12-21 15:00:00')
print(df)
date open high low close
0 2018-12-21 14:10:00 0.0019 0.0022 0.0018 0.0021
1 2018-12-21 14:15:00 0.0022 0.0023 0.0019 0.0019
2 2018-12-21 14:20:00 0.0019 0.0022 0.0019 0.0022
3 2018-12-21 14:25:00 0.0022 0.0022 0.0020 0.0020
4 2018-12-21 14:30:00 0.0021 0.0021 0.0020 0.0020
5 2018-12-21 14:35:00 0.0021 0.0023 0.0021 0.0022
6 2018-12-21 14:40:00 0.0021 0.0022 0.0019 0.0020
7 2018-12-21 14:45:00 0.0020 0.0021 0.0018 0.0019
8 2018-12-21 14:50:00 0.0019 0.0020 0.0018 0.0019
9 2018-12-21 14:55:00 0.0018 0.0019 0.0017 0.0018
#获取'10001312.XSHG','10001313.XSHG'指定时间周期为5m的期权行情数据
df=get_bars(['10001312.XSHG','10001313.XSHG'],4,'5m',fields=['date','open','high','low','close'],end_dt='2018-12-21 15:00:00')
print(df)
date open high low close
10001312.XSHG 0 2018-09-26 14:45:00 0.0001 0.0001 0.0001 0.0001
1 2018-09-26 14:50:00 0.0001 0.0001 0.0001 0.0001
2 2018-09-26 14:55:00 0.0001 0.0001 0.0001 0.0001
3 2018-09-26 15:00:00 0.0001 0.0001 0.0001 0.0001
10001313.XSHG 0 2018-12-21 14:40:00 0.0021 0.0022 0.0019 0.0020
1 2018-12-21 14:45:00 0.0020 0.0021 0.0018 0.0019
2 2018-12-21 14:50:00 0.0019 0.0020 0.0018 0.0019
3 2018-12-21 14:55:00 0.0018 0.0019 0.0017 0.0018
get_call_auction(security, start_date, end_date, fields=None)
支持股票(2010年至今)、场内基金(2019年至今)、指数(2017年至今)和上证ETF期权(2017年至今)的集合竞价数据。当日的集合竞价数据于下午15点更新。为了防止返回数据量过大, 我们每次最多返回5000行。
参数:
返回值:
返回指定时间区间标的集合竞价tick数据,返回字段结果如下:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价(不复权) | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
示例:
#获取50ETF期权2017-08-21至2017-08-21期间的集合竞价数据
df=get_call_auction('510050.XSHG','2017-08-21','2017-08-21')[:5]
print(df)
code time current volume money a1_p \
0 510050.XSHG 2019-01-02 09:25:00 2.29 4172900.0 9560114.0 2.29
1 510050.XSHG 2019-01-03 09:25:00 2.25 988300.0 2228617.0 2.25
2 510050.XSHG 2019-01-04 09:25:00 2.25 5466622.0 12288966.0 2.25
3 510050.XSHG 2019-01-07 09:25:00 2.32 17443923.0 40469901.0 2.32
4 510050.XSHG 2019-01-08 09:25:00 2.31 957500.0 2208953.0 2.31
a1_v a2_p a2_v a3_p ... b1_p b1_v b2_p \
0 21000.0 2.29 93500.0 2.29 ... 2.29 860400.0 2.29
1 560700.0 2.26 28700.0 2.26 ... 2.25 121400.0 2.25
2 974600.0 2.25 1399990.0 2.25 ... 2.25 383478.0 2.25
3 240500.0 2.32 53800.0 2.32 ... 2.32 5882077.0 2.32
4 656500.0 2.31 278300.0 2.31 ... 2.31 10500.0 2.31
b2_v b3_p b3_v b4_p b4_v b5_p b5_v
0 2744600.0 2.29 1279500.0 2.29 1698900.0 2.29 115900.0
1 675600.0 2.25 266100.0 2.25 372200.0 2.25 204800.0
2 216800.0 2.25 536600.0 2.25 679500.0 2.24 50500.0
3 6451500.0 2.32 3491800.0 2.32 2439900.0 2.32 1939100.0
4 64500.0 2.30 24400.0 2.30 3200.0 2.30 74300.0
[5 rows x 25 columns]
get_ticks(security, start_dt, end_dt, count, fields,df)
期权部分, 支持期权tick数据,每0.5s一次快照。其中上交所ETF期权从2017-01-01开始,提供买卖五档;商品期权从2019-12-02开始,提供买卖一档。
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
期权tick返回结果:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(张) | float |
| money | 累计成交额(元) | float |
| position | 持仓量(张) | float |
| a1_p | 一档卖价 | float |
| a1_v | 一档卖量 | float |
| … | ||
| a5_p | 五档卖价 | float |
| a5_v | 五档卖量 | float |
| b1_p | 一档买价 | float |
| b1_v | 一档买量 | float |
| … | ||
| b5_p | 五档买价 | float |
| b5_v | 五档买量 | float |
期权tick数据示例:
# 获取上交所ETF期权('10001313.XSHG')2018-12-20 10:00:00往前8个时间单位
df=get_ticks('10001313.XSHG',end_dt='2018-12-20 10:00:00',count=8)
print(df)
time current high low volume money \
0 2018-12-20 09:59:37.740 0.0041 0.0076 0.004 11754.0 662475.03
1 2018-12-20 09:59:39.240 0.0042 0.0076 0.004 11774.0 663332.00
2 2018-12-20 09:59:42.740 0.0043 0.0076 0.004 11784.0 663770.69
3 2018-12-20 09:59:45.240 0.0043 0.0076 0.004 11798.0 664384.85
4 2018-12-20 09:59:46.240 0.0042 0.0076 0.004 11808.0 664813.33
5 2018-12-20 09:59:51.712 0.0042 0.0076 0.004 11812.0 664984.72
6 2018-12-20 09:59:55.232 0.0042 0.0076 0.004 11822.0 665413.21
7 2018-12-20 09:59:55.732 0.0042 0.0076 0.004 11839.0 666141.63
position a1_p a1_v a2_p ... b1_p b1_v b2_p b2_v b3_p \
0 93502.0 0.0043 37.0 0.0044 ... 0.0041 10.0 0.0040 10.0 0.0039
1 93510.0 0.0043 37.0 0.0044 ... 0.0042 42.0 0.0041 31.0 0.0039
2 93520.0 0.0043 55.0 0.0044 ... 0.0042 42.0 0.0040 10.0 0.0039
3 93534.0 0.0043 81.0 0.0044 ... 0.0042 42.0 0.0040 22.0 0.0039
4 93534.0 0.0043 81.0 0.0044 ... 0.0042 40.0 0.0040 32.0 0.0039
5 93534.0 0.0043 81.0 0.0044 ... 0.0042 46.0 0.0040 32.0 0.0039
6 93534.0 0.0043 81.0 0.0044 ... 0.0042 36.0 0.0041 12.0 0.0040
7 93534.0 0.0043 81.0 0.0044 ... 0.0042 19.0 0.0041 12.0 0.0040
b3_v b4_p b4_v b5_p b5_v
0 62.0 0.0038 32.0 0.0037 30.0
1 62.0 0.0038 42.0 0.0037 30.0
2 94.0 0.0038 32.0 0.0037 30.0
3 72.0 0.0038 42.0 0.0037 30.0
4 62.0 0.0038 42.0 0.0037 30.0
5 62.0 0.0038 32.0 0.0037 40.0
6 50.0 0.0039 62.0 0.0038 32.0
7 50.0 0.0039 62.0 0.0038 32.0
[8 rows x 27 columns]
from jqdatasdk import opt
opt.run_query(query(opt.OPT_TRADE_RANK_STK).filter(opt.OPT_TRADE_RANK_STK.underlying_symbol==underlying_symbol).limit(n))
描述:统计沪深ETF期权每日最活跃三个合约的交易排名和持仓量最大三个合约的持仓排名情况
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 |
| underlying_symbol | str | 标的代码 | 510050.XSHG |
| underlying_name | str | 标的简称 | 华夏上证50ETF |
| underlying_exchange | str | 证券市场编码:XSHG-上海证券交易所; | XSHG |
| date | str | 交易日期 | 2018-10-25 |
| rank | int | 排名 | 1 |
| volume | int | 数量(张) | 184891 |
| option_agency | str | 期权经营机构 | 华泰证券 |
| rank_type | str | 排名统计类型 601001:最活跃三个合约的认购交易排名; 601002:最活跃三个合约的认沽交易排名; 601003:持仓最大3个合约的认购持仓量排名; 601004:持仓最大3个合约的认沽持仓量排名 |
601001 |
返回结果:
注意:
示例:
#查询最活跃三个合约的认购交易排名(601001)
from jqdatasdk import *
q=query(opt.OPT_TRADE_RANK_STK).filter(opt.OPT_TRADE_RANK_STK.rank_type==601001).order_by(opt.OPT_TRADE_RANK_STK.date.desc()).limit(10)
df=opt.run_query(q)
print(df)
id underlying_symbol underlying_name underlying_exchange date \
0 41627 510050.XSHG 50ETF XSHG 2021-03-18
1 41671 510300.XSHG 华泰柏瑞沪深300ETF XSHG 2021-03-18
2 41628 510050.XSHG 50ETF XSHG 2021-03-18
3 41629 510050.XSHG 50ETF XSHG 2021-03-18
4 41630 510050.XSHG 50ETF XSHG 2021-03-18
5 41631 510050.XSHG 50ETF XSHG 2021-03-18
6 41647 159919.XSHE 嘉实沪深300ETF XSHE 2021-03-18
7 41648 159919.XSHE 嘉实沪深300ETF XSHE 2021-03-18
8 41649 159919.XSHE 嘉实沪深300ETF XSHE 2021-03-18
9 41670 510300.XSHG 华泰柏瑞沪深300ETF XSHG 2021-03-18
rank volume option_agency rank_type
0 2 389167 广发证券 601001
1 3 171957 南华期货 601001
2 4 136430 中信证券 601001
3 5 115294 招商证券 601001
4 1 405170 华泰证券 601001
5 3 152924 南华期货 601001
6 2 44316 广发证券 601001
7 3 27527 中信证券 601001
8 5 21805 招商证券 601001
9 1 375776 华泰证券 601001
from jqdatasdk import opt
opt.run_query(query(opt.OPT_EXERCISE_INFO).filter(opt.OPT_EXERCISE_INFO.underlying_symbol==underlying_symbol).limit(n))
描述:统计上证50ETF期权在各个行权日的交收情况,一定程度上也代表了用户对当前市场的风险偏好
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 |
|---|---|---|---|
| underlying_symbol | str | 标的代码 | 510050.XSHG |
| underlying_name | str | 标的名称 | |
| exercise_date | str | 行权日 | 2018-10-24 |
| constract_type | str | 合约类型,CO-认购期权,PO-认沽期权 | CO |
| exercise_number | int | 行权数量 | 12520 |
返回结果:
注意:
示例:
#查询华夏上证50ETF("510050.XSHG")最新的期权行权交收信息数据。
q=query(opt.OPT_EXERCISE_INFO).filter(opt.OPT_EXERCISE_INFO.underlying_symbol=='510050.XSHG').order_by(opt.OPT_EXERCISE_INFO.exercise_date.desc()).limit(10)
df=opt.run_query(q)
print(df)
id underlying_symbol underlying_name exercise_date contract_type exercise_number
0 86 510050.XSHG 50ETF 2018-11-28 PO 14419
1 85 510050.XSHG 50ETF 2018-11-28 CO 17330
2 84 510050.XSHG 50ETF 2018-10-24 PO 21933
3 83 510050.XSHG 50ETF 2018-10-24 CO 12520
4 82 510050.XSHG 50ETF 2018-09-26 PO 9550
5 81 510050.XSHG 50ETF 2018-09-26 CO 20286
6 80 510050.XSHG 50ETF 2018-08-22 PO 10228
7 79 510050.XSHG 50ETF 2018-08-22 CO 10208
8 78 510050.XSHG 50ETF 2018-07-25 PO 5754
9 77 510050.XSHG 50ETF 2018-07-25 CO 19632
from jqdatasdk import opt
opt.run_query(query(opt.OPT_RISK_INDICATOR).filter(opt.OPT_RISK_INDICATOR.code==code).limit(n))
描述:统计各期权合约每日的风险指标,帮助用户更科学的衡量期权合约的价值变动
参数:
字段设计
| 名称 | 类型 | 描述 | 示例 | 备注 |
| code | str | 合约代码 | 10001313.XSHG;CU1901C46000.XSGE; SR903C4700.XZCE;M1707-C-2400.XDCE |
合约代码使用大写字母 |
| exchange_code | str | 证券市场编码 | XSHG | |
| date | str | 交易日期 | 2018-10-19 | |
| delta | float | DELTA | 0.906 | Delta=期权价格变化/期货变化 |
| theta | float | THETA | -0.249 | Theta=期权价格的变化/距离到期日时间的变化 |
| gamma | float | GAMMA | 0.669 | Gamma=delta的变化/期货价格的变化 |
| vega | float | VEGA | 0.138 | Vega=期权价格变化/波动率的变化 |
| rho | float | RHO | 0.213 | Rho=期权价格的变化/无风险利率的变化 |
返回结果:
注意:
示例:
#查询上证50ETF期权('10001313.XSHG')最新的期权风险指标数据。
from jqdatasdk import *
q=query(opt.OPT_RISK_INDICATOR).filter(opt.OPT_RISK_INDICATOR.code=='10001313.XSHG').order_by(opt.OPT_RISK_INDICATOR.date.desc()).limit(10)
df=opt.run_query(q)
print(df)
id code exchange_code date delta theta gamma \
0 320797 10001313.XSHG XSHG 2018-12-05 0.609 -0.488 2.875
1 83541 10001313.XSHG XSHG 2018-12-04 0.638 -0.471 2.730
2 83540 10001313.XSHG XSHG 2018-12-03 0.610 -0.490 2.607
3 83539 10001313.XSHG XSHG 2018-11-30 0.467 -0.519 2.278
4 83538 10001313.XSHG XSHG 2018-11-29 0.419 -0.484 2.266
5 83537 10001313.XSHG XSHG 2018-11-28 0.447 -0.466 2.341
6 83536 10001313.XSHG XSHG 2018-11-27 0.391 -0.449 2.198
7 83535 10001313.XSHG XSHG 2018-11-26 0.422 -0.470 2.108
8 83534 10001313.XSHG XSHG 2018-11-23 0.418 -0.468 1.917
9 83533 10001313.XSHG XSHG 2018-11-22 0.497 -0.477 1.929
vega rho
0 0.228 0.083
1 0.229 0.091
2 0.239 0.090
3 0.263 0.078
4 0.261 0.072
5 0.270 0.080
6 0.264 0.072
7 0.275 0.080
8 0.287 0.087
9 0.302 0.108
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_BASIC_INFO).filter(bond.BOND_BASIC_INFO.code == '131801').limit(n))
获取债券基本信息数据、债券票面利率数据和国债逆回购日行情数据
参数:
query(bond.BOND_BASIC_INFO):表示从bond.BOND_BASIC_INFO 这张表中查询债券基本信息数据,其中bond是库名,BOND_BASIC_INFO是表名。bond库中的表都可以使用run_query方法调用,表名如下所示:
| 表名 | 描述 |
|---|---|
| BOND_BASIC_INFO | 债券基本信息数据 |
| BOND_COUPON | 债券票面利率数据 |
| REPO_DAILY_PRICE | 国债逆回购日行情数据 |
在查询表数据时还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2,多个字段用逗号分隔进行提取;query函数的更多用法详见: query简易教程
filter(bond.BOND_BASIC_INFO.code == '131801'):指定筛选条件,通过bond.BOND_BASIC_INFO.code == '131801' 可以指定债券代码来获取债券基本信息数据;除此之外,还可以对表中其他字段指定筛选条件,如filter(bond.BOND_BASIC_INFO.exchange=='上交所'),表示交易市场在上交所的所有债券基本信息数据;多个筛选条件用英文逗号分隔。
limit(n):限制返回的数据条数,n指定返回条数。
返回结果:
注意:
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_BASIC_INFO ).limit(n))
数据字典:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 债券代码(不加后缀) |
| short_name | str | 债券简称 |
| short_name_spelling | str | 债券简称拼音 |
| full_name | str | 债券全称 |
| list_status_id | int | 上市状态编码,见下表上市状态编码对照表 |
| list_status | str | 上市状态 |
| issuer | str | 发行人 |
| company_code | str | 发行人股票代码 |
| exchange_code | int | 交易市场编码,见下表交易市场编码 |
| exchange | str | 交易市场 |
| currency_id | str | 货币代码。CNY-人民币 |
| coupon_type_id | int | 计息方式编码,见下表计息方式编码 |
| coupon_type | str | 计息方式 |
| coupon_frequency | int | 付息频率,单位:月/次。按年付息是12月/次;半年付息是6月/次 |
| payment_type_id | int | 兑付方式编码,见下表兑付方式编码表 |
| payment_type | str | 兑付方式 |
| par | float | 债券面值(元) |
| repayment_period | int | 偿还期限(月) |
| bond_type_id | int | 债券分类编码。 |
| bond_type | str | 债券分类 |
| bond_form_id | int | 债券形式编码,见下表债券形式编码表 |
| bond_form | str | 债券形式 |
| list_date | date | 上市日期 |
| delist_Date | date | 退市日期 |
| interest_begin_date | date | 起息日 |
| maturity_date | date | 到期日 |
| interest_date | str | 付息日 |
| last_cash_date | date | 最终兑付日 |
| cash_comment | str | 兑付说明 |
编码对照表:
| 上市状态编码 | 上市状态 |
|---|---|
| 301001 | 正常上市 |
| 301002 | ST |
| 301003 | *ST |
| 301004 | 暂停上市 |
| 301006 | 终止上市 |
| 301007 | 已发行未上市 |
| 301008 | 预披露 |
| 301009 | 未过会 |
| 301010 | 发行失败 |
| 301011 | 暂缓发行 |
| 301099 | 其他 |
| 交易市场编码 | 交易市场 |
|---|---|
| 705001 | 上交所 |
| 705002 | 深交所主板 |
| 705003 | 深交所中小板 |
| 705004 | 深交所创业板 |
| 705005 | 上交所综合业务平台 |
| 705006 | 深交所综合协议交易平台 |
| 705007 | 银行间债券市场 |
| 705008 | 商业银行柜台市场 |
| 705009 | 港交所创业板 |
| 705010 | 新加坡证券交易所 |
| 705011 | 拟上市 |
| 705012 | 产权交易市场 |
| 705013 | 美国NASDAQ证券交易所 |
| 705014 | 港交所主板 |
| 705015 | 股份报价系统 |
| 705016 | 代办转让 |
| 705017 | 上交所CDR |
| 705018 | 深交所存托凭证 |
| 705099 | 其他 |
| 计息方式编码 | 计息方式 |
|---|---|
| 701001 | 利随本清 |
| 701002 | 固定利率附息 |
| 701003 | 递进利率 |
| 701004 | 浮动利率 |
| 701005 | 贴现 |
| 701006 | 未公布 |
| 701007 | 无利率 |
| 701008 | 累进利率 |
| 兑付方式编码 | 兑付方式 |
|---|---|
| 702001 | 到期一次付息 |
| 702002 | 按年付息 |
| 702003 | 按半年付息 |
| 702004 | 按季付息 |
| 702005 | 按月付息 |
| 702006 | 未公布 |
| 702099 | 其他 |
| 债券分类编码 | 债券分类 |
|---|---|
| 703001 | 短期融资券 |
| 703002 | 质押式回购 |
| 703003 | 私募债 |
| 703004 | 企业债 |
| 703005 | 次级债 |
| 703006 | 一般金融债 |
| 703007 | 中期票据 |
| 703008 | 资产支持证券 |
| 703009 | 小微企业扶持债 |
| 703010 | 地方政府债 |
| 703011 | 公司债 |
| 703012 | 可交换私募债 |
| 703013 | 可转债 |
| 703014 | 集合债券 |
| 703015 | 国际机构债券 |
| 703016 | 政府支持机构债券 |
| 703017 | 集合票据 |
| 703018 | 外国主权政府人民币债券 |
| 703019 | 央行票据 |
| 703020 | 政策性金融债 |
| 703021 | 国债 |
| 703022 | 非银行金融债 |
| 703023 | 可分离可转债 |
| 703024 | 国库定期存款 |
| 703025 | 可交换债 |
| 703026 | 特种金融债 |
| 债券形式编码 | 债券形式 |
|---|---|
| 704001 | 记账式 |
| 704002 | 实物式 |
| 704003 | 储蓄电子式 |
| 704004 | 凭证式 |
| 704005 | 未公布 |
示例:
# 查询2019年4月14日的债券基本信息
from jqdatasdk import *
df = bond.run_query(query(bond.BOND_BASIC_INFO).filter(bond.BOND_BASIC_INFO.exchange == '上交所').limit(5))
print(df)
# 输出
id code short_name full_name list_status_id \
0 2 131800 16东莞次 中国中投证券-东莞证券融出资金债权1号资产支持专项计划次级资产支持证券 301006
1 3 131801 花呗01A1 德邦花呗第一期消费贷款资产支持专项计划优先级资产支持证券 301006
2 4 131802 花呗01A2 德邦花呗第一期消费贷款资产支持专项计划次优先级资产支持证券 301006
3 5 131803 花呗01B 德邦花呗第一期消费贷款资产支持专项计划次级资产支持证券 301006
4 6 131805 海尔优B 海尔保理一期资产支持专项计划优先B级资产支持证券 301006
list_status issuer company_code exchange_code exchange \
0 终止上市 东莞证券股份有限公司 S0001.XSHG 705001 上交所
1 终止上市 重庆市阿里小微小额贷款有限公司 None 705001 上交所
2 终止上市 重庆市阿里小微小额贷款有限公司 None 705001 上交所
3 终止上市 重庆市阿里小微小额贷款有限公司 None 705001 上交所
4 终止上市 东吴证券股份有限公司 601555.XSHG 705001 上交所
... bond_type bond_form_id bond_form list_date delist_Date \
0 ... 资产支持证券 704001 记账式 2016-07-25 2019-06-18
1 ... 资产支持证券 704001 记账式 2016-07-12 2017-06-13
2 ... 资产支持证券 704001 记账式 2016-07-12 2017-06-13
3 ... 资产支持证券 704001 记账式 2016-07-12 2017-06-13
4 ... 资产支持证券 704001 记账式 2016-07-07 2016-12-02
interest_begin_date maturity_date interest_date last_cash_date \
0 2016-06-17 2019-06-18 None 2019-06-18
1 2016-06-07 2017-06-15 None 2017-06-15
2 2016-06-07 2017-06-15 None 2017-06-15
3 2016-06-07 2017-06-15 None 2017-06-15
4 2016-06-08 2016-12-06 None 2016-12-06
cash_comment
0 None
1 None
2 None
3 None
4 None
[5 rows x 29 columns]
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_COUPON).limit(n))
数据字典:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 债券代码(不加后缀) |
| short_name | str | 债券简称 |
| pub_date | date | 信息发布日期 |
| coupon_type_id | int | 计息方式编码,见下表计息方式编码 |
| exchange_code | int | 证券市场编码(新增字段) |
| exchange | str | 证券市场(新增字段) |
| coupon_type | str | 计息方式 |
| coupon | float(5) | 票面年利率(%) |
| coupon_start_date | date | 票面利率起始适用日期 |
| coupon_end_date | date | 票面利率终止适用日期 |
| reference_rate | float | 浮息债参考利率(%) |
| reference_rate_comment | str | 浮息债参考利率说明 |
| margin_rate | float | 浮息债利差(%)-(等于票面利率减参考利率) |
| coupon_upper_limit | float | 利率上限 |
| coupon_lower_limit | float | 利率下限 |
编码对照表:
| 计息方式编码 | 计息方式 |
|---|---|
| 701001 | 利随本清 |
| 701002 | 固定利率附息 |
| 701003 | 递进利率 |
| 701004 | 浮动利率 |
| 701005 | 贴现 |
| 701006 | 未公布 |
| 701007 | 无利率 |
示例
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_COUPON))
print(df[:4])
id code short_name pub_date exchange_code exchange coupon_type_id \
0 1 123082 15国君C1 2015-04-28 705001 上交所 701002
1 2 155788 19中航G2 2019-10-25 705001 上交所 701002
2 3 125496 14蓉家投 2015-02-12 705001 上交所 701002
3 4 125496 14蓉家投 2015-02-12 705001 上交所 701002
coupon_type coupon coupon_start_date coupon_end_date reference_rate \
0 固定利率附息 5.70 2015-04-28 2018-04-27 NaN
1 固定利率附息 4.19 2019-10-28 2022-10-27 NaN
2 固定利率附息 10.00 2017-02-12 2018-02-11 NaN
3 固定利率附息 10.00 2016-02-12 2017-02-11 NaN
reference_rate_comment margin_rate coupon_upper_limit coupon_lower_limit
0 None NaN None None
1 None NaN None None
2 None NaN None None
3 None NaN None None
# 获取15建元2A3的债券票面利率
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_COUPON).filter(bond.BOND_COUPON.code=='1589355'))
print(df[:4])
id code short_name pub_date exchange_code exchange \
0 1954 1589355 15建元2A3 2015-12-23 705007 银行间债券市场
1 1953 1589355 15建元2A3 2016-01-19 705007 银行间债券市场
2 1952 1589355 15建元2A3 2016-02-19 705007 银行间债券市场
3 1951 1589355 15建元2A3 2016-03-18 705007 银行间债券市场
coupon_type_id coupon_type coupon coupon_start_date coupon_end_date \
0 701004 浮动利率 4.6 2015-12-24 2016-01-25
1 701004 浮动利率 4.6 2016-01-26 2016-02-25
2 701004 浮动利率 4.6 2016-02-26 2016-03-25
3 701004 浮动利率 4.6 2016-03-26 2016-04-25
reference_rate reference_rate_comment \
0 4.9 票面利率:“优先档资产支持证券的票面利率”根据簿记建档结果确定。“受托机构”于“交割日”后次...
1 4.9 票面利率:“优先档资产支持证券的票面利率”根据簿记建档结果确定。“受托机构”于“交割日”后次...
2 4.9 票面利率:“优先档资产支持证券的票面利率”根据簿记建档结果确定。“受托机构”于“交割日”后次...
3 4.9 票面利率:“优先档资产支持证券的票面利率”根据簿记建档结果确定。“受托机构”于“交割日”后次...
margin_rate coupon_upper_limit coupon_lower_limit
0 -0.3 None None
1 -0.3 None None
2 -0.3 None None
3 -0.3 None None
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_INTEREST_PAYMENT ).limit(n))
表结构:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 债券代码(不加后缀) |
| name | str | 债券简称 |
| pub_date | date | 公告日期 |
| exchange_code | int | 证券市场编码(新增字段) |
| exchange | str | 证券市场(新增字段) |
| event_type | str | 事件类型 |
| interest_start_date | date | 年度计息起始日 |
| coupon | float | 票面利率(%) |
| interest_end_date | date | 年度计息终止日 |
| autual_interest | float | 实际付息利率(%) |
| interest_per_unit | float | 每手付息数(单位:元,每1000元付息金额) |
| register_date | date | 债权登记日 |
| dividend_date | date | 除息日 |
| interest_pay_start_date | date | 付息起始日(债务人实际付息开始日期) |
| interest_pay_end_date | date | 付息终止日(债务人实际付息截止日期) |
| payment_date | date | 兑付日(债券到期兑付) |
| payment_per_unit | float | 每百元面值的到期兑付资金(元) |
| tax_rate | float | 代扣所得税率(%) |
| tax_channel | str | 扣税渠道 |
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_INTEREST_PAYMENT ))
print(df[:4])
id code name pub_date exchange_code exchange event_type \
0 1 011698473 16粤广业SCP004 2017-06-09 12004 银行间债券市场 兑付
1 2 011698480 16海运集装SCP001 2016-12-13 12004 银行间债券市场 兑付
2 3 011698631 16重汽SCP008 2017-07-05 12004 银行间债券市场 兑付
3 4 011698478 16中电股SCP009 2016-11-11 12004 银行间债券市场 兑付
interest_start_date coupon interest_end_date autual_interest \
0 None 2.99 None 2.211781
1 None 3.00 None 0.737705
2 None 3.10 None 2.259178
3 None 2.30 None 0.377049
interest_per_unit register_date dividend_date interest_pay_start_date \
0 22.11781 2017-06-16 None None
1 7.37705 2016-12-20 None None
2 22.59178 2017-07-12 None None
3 3.77049 2016-11-18 None None
interest_pay_end_date payment_date payment_per_unit tax_rate tax_channel
0 None 2017-06-19 102.211781 NaN None
1 None 2016-12-21 100.737705 NaN None
2 None 2017-07-13 102.259178 NaN None
3 None 2016-11-21 100.377049 NaN None
from jqdatasdk import *
df=bond.run_query(query(bond.BOND_INTEREST_PAYMENT ).filter(bond.BOND_INTEREST_PAYMENT.pub_date=='2019-11-13'))
print(df[:5])
id code name pub_date exchange_code exchange event_type \
0 7684 101574010 15京粮MTN001 2019-11-13 12004 银行间债券市场 付息
1 8635 1555048 15福建债48 2019-11-13 12004 银行间债券市场 付息
2 8668 1555047 15福建债47 2019-11-13 12004 银行间债券市场 付息
3 8684 1555046 15福建债46 2019-11-13 12004 银行间债券市场 付息
4 8726 1555044 15福建债44 2019-11-13 12004 银行间债券市场 付息
interest_start_date coupon interest_end_date autual_interest \
0 2018-12-14 4.38 2019-12-13 4.38
1 2019-06-04 3.30 2019-12-03 1.65
2 2018-12-04 3.32 2019-12-03 3.32
3 2018-12-04 3.15 2019-12-03 3.15
4 2019-06-04 3.30 2019-12-03 1.65
interest_per_unit register_date dividend_date interest_pay_start_date \
0 43.8 2019-12-13 None 2019-12-16
1 16.5 2019-12-03 None 2019-12-04
2 33.2 2019-12-03 None 2019-12-04
3 31.5 2019-12-03 None 2019-12-04
4 16.5 2019-12-03 None 2019-12-04
interest_pay_end_date payment_date payment_per_unit tax_rate tax_channel
0 None None NaN NaN None
1 None None NaN NaN None
2 None None NaN NaN None
3 None None NaN NaN None
4 None None NaN NaN None
from jqdatasdk import *
df=bond.run_query(query(bond.REPO_DAILY_PRICE).limit(n))
数据字典:
| 名称 | 类型 | 描述 |
|---|---|---|
| date | date | 交易日期 |
| code | varchar(12) | 回购代码,如 '204001.XSHG' |
| name | varchar(20) | 回购简称,如 'GC001' |
| exchange_code | varchar(12) | 证券市场编码。XSHG-上海证券交易所;XSHE-深圳证券交易所 |
| pre_close | decimal(10,4) | 前收盘利率(%) |
| open | decimal(10,4) | 开盘利率(%) |
| high | decimal(10,4) | 最高利率(%) |
| low | decimal(10,4) | 最低利率(%) |
| close | decimal(10,4) | 收盘利率(%) |
| volume | bigint | 成交量(手) |
| money | decimal(20,2) | 成交额(元) |
| deal_number | int | 成交笔数(笔) |
示例
from jqdatasdk import *
df=bond.run_query(query(bond.REPO_DAILY_PRICE))
print(df.sort_values(by='deal_number',ascending=False)[:5])
id date code name exchange_code pre_close open \
2842 2843 2018-04-24 204001.XSHG GC001 XSHG 8.87 9.5
2709 2710 2017-10-09 204001.XSHG GC001 XSHG 16.63 5.0
2769 2770 2018-01-02 204001.XSHG GC001 XSHG 14.53 3.9
2843 2844 2018-04-25 204001.XSHG GC001 XSHG 8.93 6.0
2767 2768 2017-12-28 204001.XSHG GC001 XSHG 12.57 13.0
high low close volume money deal_number
2842 12.20 6.500 8.930 915840200 9.158402e+11 728989.0
2709 12.00 5.000 8.745 961308900 9.613089e+11 723141.0
2769 10.10 3.900 6.010 828761600 8.287616e+11 703459.0
2843 10.01 5.555 8.795 875500800 8.755008e+11 696009.0
2767 24.00 13.000 17.695 703348000 7.033480e+11 669847.0
normalize_code(code)
将其他形式的可转债代码转换为jqdatasdk函数可用的可转债代码形式。 适用可转债代码,支持传入单只可转债或一个可转债list
以可转债为例
#输入
normalize_code(['110043', 'SH110043', '110043SH', '110043.sh', '110043.XSHG'])
#输出
['110043.XSHG', '110043.XSHG', '110043.XSHG', '110043.XSHG', '110043.XSHG']
调用方法
get_security_info(code)
参数
返回值
示例
# 获取110043.XSHG的中文名称
display_name = get_security_info('110043.XSHG').display_name
print(display_name)
>>>无锡转债
# 获取128145.XSHE的上市时间
start_date = get_security_info('128145.XSHE').start_date
print(start_date)
>>>2021-04-16
get_all_securities(types=[], date=None)
获取平台支持的所有股票、基金、指数、期货、期权、可转债信息
参数
返回
示例
#获得所有可转债列表
df=get_all_securities("conbond")
print(df[:5])
display_name name start_date end_date type
110001.XSHG 邯钢转债 HGZZ 2003-12-11 2007-03-16 conbond
110002.XSHG 南山转债 NSZZ 2008-05-13 2009-09-24 conbond
110003.XSHG 新钢转债 XGZZ 2008-09-05 2013-08-27 conbond
110004.XSHG 厦工转债 SGZZ 2009-09-11 2010-09-30 conbond
110005.XSHG 西洋转债 XYZZ 2009-09-21 2010-05-19 conbond
#获得2023年02月01日还在上市的所有股票列表
df=get_all_securities("conbond",date='2023-02-01')
print(df.tail(5))
display_name name start_date end_date type
128141.XSHE 旺能转债 WNZZ 2021-01-18 2026-12-17 conbond
128142.XSHE 新乳转债 XRZZ 2021-01-19 2026-12-18 conbond
128143.XSHE 锋龙转债 FLZZ 2021-01-29 2027-01-08 conbond
128144.XSHE 利民转债 LMZZ 2021-03-24 2027-03-01 conbond
128145.XSHE 日丰转债 RFZZ 2021-04-16 2023-03-02 conbond
#将所有可转债列表转换成数组
conbond= list(get_all_securities(['conbond']).index)
conbond[:5]
>>>['110001.XSHG', '110002.XSHG', '110003.XSHG', '110004.XSHG', '110005.XSHG']
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_BASIC_INFO).limit(n))
表结构:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 债券代码 |
| short_name | str | 债券简称 |
| full_name | str | 债券全称 |
| list_status_id | int | 上市状态编码,见下表上市状态编码对照表 |
| list_status | str | 上市状态 |
| issuer | str | 发行人 |
| company_code | str | 发行人股票代码(带后缀);正股代码 |
| issue_start_date | date | 发行起始日 |
| issue_end_date | date | 发行终止日 |
| plan_raise_fund | decimal(20,4) | 计划发行总量(万元) |
| actual_raise_fund | decimal(20,4) | 实际发行总量(万元) |
| issue_par | int | 发行面值 |
| issue_price | decimal(10,3) | 发行价格 |
| is_guarantee | int | 是否有担保(1-是,0-否) |
| fund_raising_purposes | varchar(200) | 募资用途说明 |
| list_date list_declare_date | date | 上市公告日期 |
| convert_price_reason | varchar(300) | 初始转股价确定方式 |
| convert_price | decimal(10,3) | 初始转股价格 |
| convert_start_date | start_date | 转股开始日期 |
| convert_end_date | end_date | 转股终止日期 |
| convert_code | varchar(10) | 转股代码(不带后缀) |
| coupon | decimal(10,3) | 初始票面利率 |
| exchange_code | int | 交易市场编码,见下表交易市场编码 |
| exchange | str | 交易市场 |
| currency_id | str | 货币代码。CNY-人民币 |
| coupon_type_id | int | 计息方式编码,见下表计息方式编码 |
| coupon_type | str | 计息方式 |
| coupon_frequency | int | 付息频率,单位:月/次。按年付息是12月/次;半年付息是6月/次 |
| payment_type_id | int | 兑付方式编码,见下表兑付方式编码表 |
| payment_type | str | 兑付方式 |
| par | float | 债券面值(元) |
| repayment_period | int | 偿还期限(月) |
| bond_type_id | int | 债券分类编码,见下表债券分类编码 |
| bond_type | str | 债券分类 |
| bond_form_id | int | 债券形式编码,见下表债券形式编码表 |
| bond_form | str | 债券形式 |
| list_date | date | 上市日期 |
| delist_Date | date | 退市日期 |
| interest_begin_date | date | 起息日 |
| maturity_date | date | 到期日 |
| interest_date | str | 付息日 |
| last_cash_date | date | 最终兑付日 |
| cash_comment | str | 兑付说明 |
编码对照表:
| 上市状态编码 | 上市状态 |
|---|---|
| 301001 | 正常上市 |
| 301006 | 终止上市 |
| 301099 | 其他 |
| 交易市场编码 | 交易市场 |
|---|---|
| 705001 | 上交所 |
| 705002 | 深交所主板 |
| 705003 | 深交所中小板 |
| 705004 | 深交所创业板 |
| 705005 | 上交所综合业务平台 |
| 705006 | 深交所综合协议交易平台 |
| 705007 | 银行间债券市场 |
| 705008 | 商业银行柜台市场 |
| 705009 | 港交所创业板 |
| 705010 | 新加坡证券交易所 |
| 705011 | 拟上市 |
| 705012 | 产权交易市场 |
| 705013 | 美国NASDAQ证券交易所 |
| 705014 | 港交所主板 |
| 705015 | 股份报价系统 |
| 705016 | 代办转让 |
| 705017 | 上交所CDR |
| 705018 | 深交所存托凭证 |
| 705099 | 其他 |
| 计息方式编码 | 计息方式 |
|---|---|
| 701001 | 利随本清 |
| 701002 | 固定利率附息 |
| 701003 | 递进利率 |
| 701004 | 浮动利率 |
| 701005 | 贴现 |
| 701006 | 未公布 |
| 701007 | 无利率 |
| 701008 | 累进利率 |
| 兑付方式编码 | 兑付方式 |
|---|---|
| 702001 | 到期一次付息 |
| 702002 | 按年付息 |
| 702003 | 按半年付息 |
| 702004 | 按季付息 |
| 702005 | 按月付息 |
| 702006 | 未公布 |
| 702099 | 其他 |
| 债券分类编码 | 债券分类 |
|---|---|
| 703001 | 短期融资券 |
| 703002 | 质押式回购 |
| 703003 | 私募债 |
| 703004 | 企业债 |
| 703005 | 次级债 |
| 703006 | 一般金融债 |
| 703007 | 中期票据 |
| 703008 | 资产支持证券 |
| 703009 | 小微企业扶持债 |
| 703010 | 地方政府债 |
| 703011 | 公司债 |
| 703012 | 可交换私募债 |
| 703013 | 可转债 |
| 703014 | 集合债券 |
| 703015 | 国际机构债券 |
| 703016 | 政府支持机构债券 |
| 703017 | 集合票据 |
| 703018 | 外国主权政府人民币债券 |
| 703019 | 央行票据 |
| 703020 | 政策性金融债 |
| 703021 | 国债 |
| 703022 | 非银行金融债 |
| 703023 | 可分离可转债 |
| 703024 | 国库定期存款 |
| 703025 | 可交换债 |
| 703026 | 特种金融债 |
| 债券形式编码 | 债券形式 |
|---|---|
| 704001 | 记账式 |
| 704002 | 实物式 |
| 704003 | 储蓄电子式 |
| 704004 | 凭证式 |
| 704005 | 未公布 |
示例
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_BASIC_INFO)
# 获得鞍钢转债的基本资料
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_BASIC_INFO).filter(bond.CONBOND_BASIC_INFO.company_code=='000898.XSHE'))
print(df)
# 输出
id code short_name full_name list_status_id list_status \
0 3 125898 鞍钢转债 鞍钢新轧钢股份有限公司可转换公司债券 301006 终止上市
issuer company_code issue_start_date issue_end_date ... \
0 鞍钢股份有限公司 000898.XSHE 2000-03-14 2000-03-22 ...
bond_type bond_form_id bond_form list_date delist_Date \
0 可转债 704001 记账式 2000-04-17 2005-03-14
interest_begin_date maturity_date interest_date last_cash_date cash_comment
0 2000-03-14 2005-03-14 存续期内每年3月14日 2005-03-14 None
[1 rows x 44 columns]
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_CONVERT_PRICE_ADJUST).limit(n))
表结构:
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 债券代码 |
| name | str | 债券名称 |
| pub_date | date | 公告日期 |
| adjust_date | date | 调整生效日期 |
| new_convert_price | float | 调整后转股价格 |
| adjust_reason | str | 调整原因 |
示例
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_CONVERT_PRICE_ADJUST))
#获得公告日期2019-11-07可转债的价格调整信息
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_CONVERT_PRICE_ADJUST).filter(bond.CONBOND_CONVERT_PRICE_ADJUST.pub_date=='2019-11-07'))
print(df)
# 输出
id code name pub_date adjust_date \
0 1 117135 2019年海亮集团有限公司非公开发行可交换公司债券(第二期) 2019-11-07 2019-11-12
new_convert_price adjust_reason
0 10.08 修正转股价
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_DAILY_CONVERT).limit(n))
表结构:
表结构:
| 名称 | 类型 | 描述 |
|---|---|---|
| date | date | 交易日期(以YYYY-MM-DD表示) |
| code | str | 债券代码 |
| name | str | 债券简称 |
| exchange_code | str | 证券市场编码(XSHG-上海证券交易所;XSHE-深圳证券交易所) |
| issue_number | int | 发行总量(单位:张) |
| convert_price | float | 转股价格 |
| daily_convert_number | int | 当日转股数量(深交所披露为债券转换量 单位:张,上交所披露为股票转换量 单位 :股) |
| acc_convert_number | int | 累计转股数量(深交所披露为债券转换量 单位:张,上交所披露为股票转换量 单位 :股) |
| acc_convert_ratio | float | 累计转股比例(单位:% , 因上交所只披露转股股数,因此计算剩余转股张数时公式应为 : 发行总量 *(1 -累计转股比例) ) |
| convert_premium | float | 转股溢价,从2018-09-13开始计算(每张可转债转股后可以获得的收益,单位:元。转股溢价=可转债收盘价-(100/转股价格)*正股收盘价) |
| convert_premium_rate | float | 转股溢价率 |
示例
获得所有转债的每日转股统计数据
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_DAILY_CONVERT))
print(df[:4])
id date code name exchange_code issue_number convert_price \
0 1 2000-07-12 100001 南化转债 XSHG 1500000 4.56
1 2 2000-07-13 100001 南化转债 XSHG 1500000 4.56
2 3 2000-07-14 100001 南化转债 XSHG 1500000 4.56
3 4 2000-07-17 100001 南化转债 XSHG 1500000 4.56
daily_convert_number acc_convert_number acc_convert_ratio \
0 13805949.0 13805949.0 41.97
1 2939919.0 16745868.0 50.91
2 2161867.0 18907735.0 57.48
3 4074006.0 22981741.0 69.86
convert_premium convert_premium_rate
0 NaN NaN
1 NaN NaN
2 NaN NaN
3 NaN NaN
获得某只转债的每日转股统计数据
#获得招行转债的每日转股统计数据
df=bond.run_query(query(bond.CONBOND_DAILY_CONVERT).filter(bond.CONBOND_DAILY_CONVERT.code=="110036"))
print(df[:5])
id date code name exchange_code issue_number convert_price \
0 2990 2005-05-10 110036 招行转债 XSHG 65000000 9.34
1 2994 2005-05-11 110036 招行转债 XSHG 65000000 9.34
2 3000 2005-05-13 110036 招行转债 XSHG 65000000 9.34
3 3012 2005-05-18 110036 招行转债 XSHG 65000000 9.34
4 3017 2005-05-23 110036 招行转债 XSHG 65000000 9.34
daily_convert_number acc_convert_number acc_convert_ratio \
0 1498.0 1498.0 0.0
1 2996.0 4494.0 0.0
2 214.0 4708.0 0.0
3 428.0 5136.0 0.0
4 321.0 5457.0 0.0
convert_premium convert_premium_rate
0 5.8107 None
1 6.9325 None
2 9.4599 None
3 9.4957 None
4 12.3748 None
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权、可转债 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close'], |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如果您的环境pandas大于0.25 ,将强制返回dataframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的可转债数量 | 单位股 |
| money | 时间段中的成交的金额 | |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:可转债是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
返回
代码示例
df=get_price('110043.XSHG',count=5,end_date='2023-01-31 10:56:00',frequency='1m',
fields=['open', 'close', 'high', 'low','high_limit','low_limit', 'volume', 'money'],panel = False)
print(df)
open close high low high_limit \
2023-01-31 10:52:00 118.566 118.600 118.600 118.566 141.676
2023-01-31 10:53:00 118.580 118.580 118.600 118.580 141.676
2023-01-31 10:54:00 118.560 118.530 118.560 118.518 141.676
2023-01-31 10:55:00 118.502 118.461 118.502 118.436 141.676
2023-01-31 10:56:00 118.440 118.438 118.440 118.369 141.676
low_limit volume money
2023-01-31 10:52:00 94.45 840000.0 996206.0
2023-01-31 10:53:00 94.45 393000.0 466096.0
2023-01-31 10:54:00 94.45 43000.0 50981.0
2023-01-31 10:55:00 94.45 30000.0 35534.0
2023-01-31 10:56:00 94.45 141000.0 166987.0
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流行情软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
返回
返回一个pandas.dataframe对象,可以按任意周期返回股票的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
获取一只可转债
df = get_bars('110043.XSHG', 5, unit='120m',fields=['date', 'open', 'close', 'high', 'low', 'volume', 'money'],include_now=False,
end_dt='2019-12-05')
print(df)
date open close high low volume money
0 2019-12-02 15:00:00 103.80 103.87 103.96 103.75 1175000.0 1220479.0
1 2019-12-03 11:30:00 103.76 103.63 103.80 103.60 1072000.0 1111412.0
2 2019-12-03 15:00:00 103.60 103.88 103.89 103.56 8357000.0 8672659.0
3 2019-12-04 11:30:00 103.88 103.74 103.89 103.68 1714000.0 1778679.0
4 2019-12-04 15:00:00 103.74 103.61 103.74 103.48 9007000.0 9333398.0
获取多只可转债
df=get_bars(['110043.XSHG', '110044.XSHG'],2,'5m',
fields=['date', 'open', 'close', 'high', 'low', 'volume', 'money'],end_dt='2019-12-21 15:00:00')
print(df)
date open close high low volume \
110043.XSHG 0 2019-12-20 14:55:00 106.98 106.95 107.06 106.95 29000.0
1 2019-12-20 15:00:00 106.93 106.94 106.95 106.92 397000.0
110044.XSHG 0 2019-12-20 14:55:00 147.02 146.67 147.07 146.67 555000.0
1 2019-12-20 15:00:00 146.71 147.30 147.32 146.71 100000.0
money
110043.XSHG 0 31018.0
1 424483.0
110044.XSHG 0 815715.0
1 147199.0
get_call_auction(security, start_date, end_date, fields=None)
支持股票(2010年至今)、场内基金(2019年至今)、指数(2017年至今)和上证ETF期权(2017年至今)的集合竞价数据。当日的集合竞价数据下午15点更新。为了防止返回数据量过大, 我们每次最多返回5000行。
参数:
返回值:
返回指定时间区间标的集合竞价tick数据,返回字段结果如下:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价(不复权) | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
示例:
# start_dt和count只能有一个不为None值
d = get_ticks("110043.XSHG",start_dt=None, end_dt="2023-02-03 10:43:00", count=5)
print(d)
#输出
time current high low volume money \
0 2023-02-03 10:42:30.408 116.680 117.687 116.43 66290.0 7740472.0
1 2023-02-03 10:42:36.412 116.680 117.687 116.43 66330.0 7745139.0
2 2023-02-03 10:42:39.416 116.695 117.687 116.43 66340.0 7746306.0
3 2023-02-03 10:42:45.408 116.696 117.687 116.43 66500.0 7764977.0
4 2023-02-03 10:42:48.408 116.705 117.687 116.43 66510.0 7766144.0
a1_p a1_v a2_p a2_v a3_p a3_v a4_p a4_v a5_p \
0 116.680 30.0 116.695 10.0 116.705 10.0 116.739 20.0 116.740
1 116.705 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
2 116.696 60.0 116.705 10.0 116.739 20.0 116.740 10.0 116.744
3 116.705 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
4 116.706 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
a5_v b1_p b1_v b2_p b2_v b3_p b3_v b4_p b4_v \
0 10.0 116.662 110.0 116.658 10.0 116.640 10.0 116.61 10.0
1 10.0 116.695 160.0 116.662 260.0 116.658 10.0 116.64 10.0
2 1960.0 116.695 300.0 116.662 110.0 116.658 10.0 116.64 10.0
3 10.0 116.695 200.0 116.662 110.0 116.658 10.0 116.64 10.0
4 10.0 116.695 200.0 116.662 110.0 116.658 10.0 116.64 10.0
b5_p b5_v
0 116.60 310.0
1 116.61 10.0
2 116.61 10.0
3 116.61 10.0
4 116.61 10.0
get_ticks(security, start_dt, end_dt, count, fields, skip=True,df=True)
可转债部分, 支持 2019-01-01 至今的tick数据,提供买五卖五数据。(每3秒一次快照)
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 可转债,不支持传入多个标的
start_dt: 开始日期
end_dt: 结束日期
count: 取出指定时间区间内前多少条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下:
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据。
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
股票tick返回结果
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额 | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
可转债tick数据示例:
d = get_ticks("110043.XSHG",start_dt=None, end_dt="2023-02-03 10:43:00", count=5) print(d)
time current high low volume money \
0 2023-02-03 10:42:30.408 116.680 117.687 116.43 66290.0 7740472.0
1 2023-02-03 10:42:36.412 116.680 117.687 116.43 66330.0 7745139.0
2 2023-02-03 10:42:39.416 116.695 117.687 116.43 66340.0 7746306.0
3 2023-02-03 10:42:45.408 116.696 117.687 116.43 66500.0 7764977.0
4 2023-02-03 10:42:48.408 116.705 117.687 116.43 66510.0 7766144.0
a1_p a1_v a2_p a2_v a3_p a3_v a4_p a4_v a5_p \
0 116.680 30.0 116.695 10.0 116.705 10.0 116.739 20.0 116.740
1 116.705 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
2 116.696 60.0 116.705 10.0 116.739 20.0 116.740 10.0 116.744
3 116.705 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
4 116.706 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
a5_v b1_p b1_v b2_p b2_v b3_p b3_v b4_p b4_v \
0 10.0 116.662 110.0 116.658 10.0 116.640 10.0 116.61 10.0
1 10.0 116.695 160.0 116.662 260.0 116.658 10.0 116.64 10.0
2 1960.0 116.695 300.0 116.662 110.0 116.658 10.0 116.64 10.0
3 10.0 116.695 200.0 116.662 110.0 116.658 10.0 116.64 10.0
4 10.0 116.695 200.0 116.662 110.0 116.658 10.0 116.64 10.0
b5_p b5_v
0 116.60 310.0
1 116.61 10.0
2 116.61 10.0
3 116.61 10.0
4 116.61 10.0
```
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_DAILY_PRICE).limit(n))
表结构:
| 名称 | 类型 | 描述 |
|---|---|---|
| date | date | 交易日期(以YYYY-MM-DD表示) |
| code | str | 债券代码 |
| name | str | 债券简称 |
| exchange_code | str | 证券市场编码(XSHG-上交所;XSHE-深交所) |
| pre_close | float | 昨收价 |
| open | float | 开盘价,以人民币计 |
| high | float | 最高价,以人民币计 |
| low | float | 最低价,以人民币计 |
| close | float | 收盘价,以人民币计 |
| volume | float | 成交量(手),1手为10张债券 |
| money | float | 成交额,以人民币计 |
| deal_number | int | 成交笔数 |
| change_pct | float | 涨跌幅,单位:% |
示例
获取所有在债券的转债日行情
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_DAILY_PRICE))
print(df[:4])
id date code name exchange_code pre_close open high \
0 1 2018-09-13 110030 格力转债 XSHG 101.94 101.92 101.98
1 2 2018-09-14 110030 格力转债 XSHG 101.90 101.89 101.91
2 3 2018-09-17 110030 格力转债 XSHG 101.90 101.91 101.93
3 4 2018-09-18 110030 格力转债 XSHG 101.92 101.91 101.94
low close volume money deal_number change_pct
0 101.90 101.90 5146 5244323.0 90.0 -0.0392
1 101.88 101.90 4348 4430498.0 58.0 0.0000
2 101.89 101.92 2087 2126837.0 71.0 0.0196
3 101.89 101.91 1736 1769120.0 70.0 -0.0098
获取转债的日行情
# 获取格力转债的日行情
from jqdatasdk import *
df=bond.run_query(query(bond.CONBOND_DAILY_PRICE).filter(bond.CONBOND_DAILY_PRICE.code=="110030"))
print(df[:5])
id date code name exchange_code pre_close open high \
0 66071 2015-01-13 110030 N格力转 XSHG 100.00 138.00 142.80
1 66072 2015-01-14 110030 格力转债 XSHG 138.26 138.58 142.03
2 66073 2015-01-15 110030 格力转债 XSHG 139.81 139.20 141.20
3 66074 2015-01-16 110030 格力转债 XSHG 139.84 139.99 145.60
4 66075 2015-01-19 110030 格力转债 XSHG 143.35 141.04 141.05
low close volume money deal_number change_pct
0 137.00 138.26 119222 165203875.0 1199.0 38.2600
1 137.11 139.81 274244 384512317.0 5109.0 1.1211
2 138.81 139.84 77315 108056549.0 2334.0 0.0215
3 139.99 143.35 88171 125987816.0 2276.0 2.5100
4 139.00 139.46 73077 102210898.0 1044.0 -2.7136
get_price(security, start_date=None, end_date=None, frequency='daily', fields=None, skip_paused=False, fq='pre', count=None)
参数
| 参数名称 | 参数说明 | 注释 |
| security | 标的 | 可获取种类:股票、期货、基金、指数、期权、可转债 |
| start_date | 开始时间,不可与count同时使用。当'count'和'start_date'为None时, 默认值是 '2015-01-01 00:00:00' | 当指定frequency为minute时,如果只传入日期,则日内时间为当日的 00:00:00 |
| end_date | 结束时间,如无指定,默认为'2015-12-31 00:00:00'。当end_date指定为当天尚未结束的交易时间时,会自动填充为上一个交易日的盘后时间 | 当指定frequency为minute时, 如果只传入日期, 则日内时间为当日的 00:00:00, 所以返回的数据不包括 end_date这天。 |
| count | 表示获取 end_date 之前几个 frequency 的数据,与start_date不可同时使用。 | 返回的结果集的行数, 即表示获取 end_date 之前count个 frequency 的数据 |
| frequency | 单位时间长度,即指定获取的时间频级为分钟级(minute)或日级(daily),也可以指定为 '3m','10d' 等 | daily'(同'1d'), 'minute'(同'1m'), 点击查看get_price和get_bars的合成逻辑。如需5分钟,1小时等标准bar请使用get_bars |
| fields | 所获取数据的字段名称,即表头。默认是None(返回标准字段['open','close','high','low','volume','money']) | 可选择填入以下字段,字段说明可查阅下面fields表 ['open','close','low','high','volume','money','factor', 'high_limit','low_limit','avg','pre_close'], |
| panel | 指定返回的数据格式为panel | 默认为True;指定panel=False时返回dataframe格式; 如果您的环境pandas大于0.25 ,将强制返回dataframe详见案例 |
fields内各字段属性
| 字段名称 | 中文名称 | 注释 |
| open | 时间段开始时价格 | |
| close | 时间段结束时价格 | |
| low | 时间段中的最低价 | |
| high | 时间段中的最高价 | |
| volume | 时间段中的成交的可转债数量 | 单位股 |
| money | 时间段中的成交的金额 | |
| high_limit | 时间段中的涨停价 | |
| low_limit | 时间段中的跌停价 | |
| avg | 时间段中的平均价 | (1)天级别:可转债是成交额除以成交量;期货是直接从CTP行情获取的,计算方法为成交额除以成交量再除以合约乘数; (2)分钟级别:用该分钟所有tick的现价乘以该tick的成交量加起来之后,再除以该分钟的成交量。 |
返回
代码示例
df=get_price('110043.XSHG',count=5,end_date='2023-01-31 10:56:00',frequency='1m',
fields=['open', 'close', 'high', 'low','high_limit','low_limit', 'volume', 'money'],panel = False)
print(df)
open close high low high_limit \
2023-01-31 10:52:00 118.566 118.600 118.600 118.566 141.676
2023-01-31 10:53:00 118.580 118.580 118.600 118.580 141.676
2023-01-31 10:54:00 118.560 118.530 118.560 118.518 141.676
2023-01-31 10:55:00 118.502 118.461 118.502 118.436 141.676
2023-01-31 10:56:00 118.440 118.438 118.440 118.369 141.676
low_limit volume money
2023-01-31 10:52:00 94.45 840000.0 996206.0
2023-01-31 10:53:00 94.45 393000.0 466096.0
2023-01-31 10:54:00 94.45 43000.0 50981.0
2023-01-31 10:55:00 94.45 30000.0 35534.0
2023-01-31 10:56:00 94.45 141000.0 166987.0
get_bars(security, count, unit='1d',
fields=['date','open','high','low','close'],
include_now=False, end_dt=None, fq_ref_date=None,df=True)
获取各种时间周期的bar数据,bar的分割方式与主流行情软件相同, 同时还支持返回当前时刻所在 bar 的数据。
参数
返回
返回一个pandas.dataframe对象,可以按任意周期返回股票的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。
示例
获取一只可转债
df = get_bars('110043.XSHG', 5, unit='120m',fields=['date', 'open', 'close', 'high', 'low', 'volume', 'money'],include_now=False,
end_dt='2019-12-05')
print(df)
date open close high low volume money
0 2019-12-02 15:00:00 103.80 103.87 103.96 103.75 1175000.0 1220479.0
1 2019-12-03 11:30:00 103.76 103.63 103.80 103.60 1072000.0 1111412.0
2 2019-12-03 15:00:00 103.60 103.88 103.89 103.56 8357000.0 8672659.0
3 2019-12-04 11:30:00 103.88 103.74 103.89 103.68 1714000.0 1778679.0
4 2019-12-04 15:00:00 103.74 103.61 103.74 103.48 9007000.0 9333398.0
获取多只可转债
df=get_bars(['110043.XSHG', '110044.XSHG'],2,'5m',
fields=['date', 'open', 'close', 'high', 'low', 'volume', 'money'],end_dt='2019-12-21 15:00:00')
print(df)
date open close high low volume \
110043.XSHG 0 2019-12-20 14:55:00 106.98 106.95 107.06 106.95 29000.0
1 2019-12-20 15:00:00 106.93 106.94 106.95 106.92 397000.0
110044.XSHG 0 2019-12-20 14:55:00 147.02 146.67 147.07 146.67 555000.0
1 2019-12-20 15:00:00 146.71 147.30 147.32 146.71 100000.0
money
110043.XSHG 0 31018.0
1 424483.0
110044.XSHG 0 815715.0
1 147199.0
get_ticks(security, start_dt, end_dt, count, fields, skip=True,df=True)
可转债部分, 支持 2019-01-01 至今的tick数据,提供买五卖五数据。(每3秒一次快照)
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 可转债,不支持传入多个标的
start_dt: 开始日期
end_dt: 结束日期
count: 取出指定时间区间内前多少条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下:
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据。
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
股票tick返回结果
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额 | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
可转债tick数据示例:
d = get_ticks("110043.XSHG",start_dt=None, end_dt="2023-02-03 10:43:00", count=5) print(d)
time current high low volume money \
0 2023-02-03 10:42:30.408 116.680 117.687 116.43 66290.0 7740472.0
1 2023-02-03 10:42:36.412 116.680 117.687 116.43 66330.0 7745139.0
2 2023-02-03 10:42:39.416 116.695 117.687 116.43 66340.0 7746306.0
3 2023-02-03 10:42:45.408 116.696 117.687 116.43 66500.0 7764977.0
4 2023-02-03 10:42:48.408 116.705 117.687 116.43 66510.0 7766144.0
a1_p a1_v a2_p a2_v a3_p a3_v a4_p a4_v a5_p \
0 116.680 30.0 116.695 10.0 116.705 10.0 116.739 20.0 116.740
1 116.705 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
2 116.696 60.0 116.705 10.0 116.739 20.0 116.740 10.0 116.744
3 116.705 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
4 116.706 10.0 116.739 20.0 116.740 10.0 116.744 1960.0 116.750
a5_v b1_p b1_v b2_p b2_v b3_p b3_v b4_p b4_v \
0 10.0 116.662 110.0 116.658 10.0 116.640 10.0 116.61 10.0
1 10.0 116.695 160.0 116.662 260.0 116.658 10.0 116.64 10.0
2 1960.0 116.695 300.0 116.662 110.0 116.658 10.0 116.64 10.0
3 10.0 116.695 200.0 116.662 110.0 116.658 10.0 116.64 10.0
4 10.0 116.695 200.0 116.662 110.0 116.658 10.0 116.64 10.0
b5_p b5_v
0 116.60 310.0
1 116.61 10.0
2 116.61 10.0
3 116.61 10.0
4 116.61 10.0
```
数据调用方法
from jqdatasdk import macro
macro.run_query(query(macro.table_name).filter(macro.table_name.indicator==value).limit(n))
参数
返回: 返回一个 dataframe, 每一行对应数据库返回的每一行, 列索引是你所查询的字段
注意
示例
# 查询分地区农林牧渔业总产值表(季度累计) 的前4条数据
q = query(macro.MAC_INDUSTRY_AREA_AGR_OUTPUT_VALUE_QUARTER
).limit(4)
df = macro.run_query(q)
print(df)
id stat_quarter area_code area_name total farming forestry \
0 1 2015-06 350000 福建省 1240.1000 430.4000 101.2000
1 2 2014-09 350000 福建省 2027.9000 830.8000 155.2000
2 3 2015-03 350000 福建省 538.2000 148.2000 36.4000
3 4 2014-12 350000 福建省 3522.3053 1529.5705 323.2506
animal_husbandry fishery
0 237.7000 417.6000
1 368.4000 591.2000
2 127.6000 197.9000
3 522.8944 1025.1946
# 查询2014年的分地区农林牧渔业总产值表(年度)
q = query(macro.MAC_INDUSTRY_AREA_AGR_OUTPUT_VALUE_YEAR
).filter(macro.MAC_INDUSTRY_AREA_AGR_OUTPUT_VALUE_YEAR.stat_year=='2014')
df = macro.run_query(q)
print(df[:4])
id stat_year area_code area_name total farming forestry \
0 104 2014 110000 北京市 420.0672 155.1015 90.6852
1 214 2014 120000 天津市 367.7488 182.2270 3.2204
2 264 2014 130000 河北省 5373.7637 2893.2898 118.4668
3 164 2014 140000 山西省 1440.5971 872.5551 92.4834
animal_husbandry fishery total_idx farming_idx forestry_idx \
0 152.6590 13.2024 99.9874 91.3496 119.5023
1 102.7424 68.8678 102.9743 103.3167 103.5446
2 1895.9047 175.8537 104.0124 103.1439 108.9083
3 384.0043 7.9749 104.0256 103.2592 102.3852
animal_husbandry_idx fishery_idx
0 99.2970 105.1272
1 102.8987 102.1849
2 105.0522 103.2209
3 105.6783 109.1235
分地区农林牧渔业总产值表(季度累计) 表名:MAC_INDUSTRY_AREA_AGR_OUTPUT_VALUE_QUARTER
分地区农林牧渔业总产值表(年度) 表名:MAC_INDUSTRY_AREA_AGR_OUTPUT_VALUE_YEAR
全国农产品生产价格指数表(季度) 表名:MAC_INDUSTRY_AGR_PRODUCT_IDX_QUARTER
社会消费品销售总额(月度) 表名:MAC_SALE_RETAIL_MONTH
限额以上零售分类表(月度) 表名: MAC_SALE_SCALE_RETAIL_MONTH
分地区消费品零售总额(年度) 表名:MAC_AREA_RETAIL_SALE
亿元以上商品交易市场基本情况(年度) 表名:MAC_SALE_MARKET
分地区亿元以上商品交易市场基本情况(年度) 表名:MAC_AREA_SALE_MARKET
分地区城镇登记失业率(年度) 表名:MAC_AREA_UNEMPLOY
就业情况基本表(年度) 表名:MAC_EMPLOY_YEAR
分地区城镇单位就业人员情况表(年度) 表名:MAC_AREA_WAGEIDX_YEAR
分地区分行业城镇单位就业人员工资情况表(年度) 表名:MAC_AREA_INDUSTRY_WAGE_YEAR
分行业城镇单位就业人员工资情况表(年度) 表名:MAC_INDUSTRY_WAGE_YEAR
分地区按注册类型分城镇单位就业人员工资情况表(年度) 表名:MAC_AREA_REGISTERED_WAGE_YEAR
分地区按行业分城镇单位就业人员情况表(年度) 表名:MAC_AREA_INDUSTRY_EMPLOY_YEAR
各地区森林资源情况表(年度) 表名:MAC_RESOURCES_AREA_FOREST
生态环境情况信息表(年度) 表名:MAC_RESOURCES_ECOLOGICAL_ENVIRONMENT
水资源情况表(年度) 表名:MAC_RESOURCES_AREA_WATER_RESOURCES
全国水资源量年度信息表(年度) 表名:MAC_RESOURCES_WATER_RESOURCES_YEAR
各地区供水用水情况表(年度) 表名:MAC_RESOURCES_AREA_WATER_SUPPLY_USE
供水用水情况表(年度) 表名:MAC_RESOURCES_WATER_SUPPLY_USE_YEAR
水环境情况信息表(年度) 表名:MAC_RESOURCES_WATER_ENVIRONMENT
各地区废气排放及处理情况表(年度) 表名:MAC_RESOURCES_AREA_WASTE_GAS_EMISSION
自然灾害情况信息表(年度) 表名:MAC_RESOURCES_NATURAL_DISASTER
环境污染治理投资情况信息表(年度) 表名:MAC_RESOURCES_ENVIRONMENT_TREAT_INVEST
房地产开发投资情况表(月度累计) 表名:MAC_INDUSTRY_ESTATE_INVEST_MONTH
分地区房地产开发投资情况表(月度累计) 表名:MAC_INDUSTRY_AREA_ESTATE_INVEST_MONTH
房地产开发投资资金来源情况表(月度累计) 表名:MAC_INDUSTRY_ESTATE_FUND_SOURCE_MONTH
各地区房地产开发规模与开、竣工面积增长情况表(月度累计) 表名:MAC_INDUSTRY_AREA_ESTATE_BUILD_MONTH
70个大中城市房屋销售价格指数(月度) 表名:MAC_INDUSTRY_ESTATE_70CITY_INDEX_MONTH
人民币外汇牌价(日级) 表名:MAC_RMB_EXCHANGE_RATE
银行间拆借利率表(日级) 表名:MAC_LEND_RATE
金融机构人民币信贷资金平衡表(年度) 表名:MAC_CREDIT_BALANCE_YEAR
货币供应量(月度) 表名:MAC_MONEY_SUPPLY_MONTH
货币供应量(年度) 表名:MAC_MONEY_SUPPLY_YEAR
货币当局资产负债表(年度) 表名:MAC_CURRENCY_STATE_YEAR
其他存款性公司资产负债表(年度) 表名:MAC_OTHER_DEPOSIT
社会融资规模及构成(年度) 表名:MAC_SOCIAL_SCALE_FINANCE
证券市场基本情况(年度) 表名:MAC_STK_MARKET
黄金和外汇储备(月度) 表名:MAC_GOLD_FOREIGN_RESERVE
股票发行量和筹资额(年度) 表名:MAC_STK_ISSUE
股票市场统计表(年度) 表名:MAC_STK_TRADE
数据调用方法
国家财政收支总额及增长速度表(年度) 表名:MAC_FISCAL_TOTAL_YEAR
中央财政与地方财政收支及比重表(年度) 表名:MAC_FISCAL_BALANCE_YEAR
中央和地方财政主要收入项目情况表(年度) 表名:MAC_FISCAL_CENTRAL_REVENUE_YEAR
中央和地方财政主要支出项目情况表(年度) 表名:MAC_FISCAL_CENTRAL_EXPENSE_YEAR
各项税收表(年度) 表名:MAC_FISCAL_TAX_YEAR
预算外资金分项目收支表(年度) 表名:MAC_FISCAL_EXTRA_REVENUE_EXPENSE_YEAR
中央财政与地方财政预算外收支表(年度) 表名:MAC_FISCAL_EXTRAL_BALANCE_YEAR
外债余额表(年度) 表名:MAC_FISCAL_EXTERNAL_DEBT_YEAR
外债风险指标表(年度) 表名:MAC_FISCAL_RISK_INDICATOR_YEAR
各地区财政收入表(年度) 表名:MAC_AREA_FISCAL_REVENUE_YEAR
各地区财政支出表(年度) 表名:MAC_AREA_FISCAL_EXPENSE_YEAR
固定资产投资情况(月度) 表名:MAC_FIXED_INVESTMENT
分地区固定资产投资情况(月度) 表名:MAC_AREA_FIXED_INVESTMENT
分行业固定资产投资情况(月度) 表名:MAC_INDUSTRY_FIXED_INVEST
按注册类型登记分固定资产投资(月度) 表名:MAC_REGISTERED_FIXED_INVESTMENT
固定资产投资情况表(年度) 表名:MAC_FIXED_INVESTMENT_YEAR
货物进出口总额表(年度) 表名:MAC_TRADE_VALUE_YEAR
海关进出口货物分类金额表(年度) 表名:MAC_TRADE_VALUE_SITC_YEAR
地区按经营单位所在地分货物进出口总额表(年度) 表名:MAC_TRADE_VALUE_LOCATION_YEAR
各地区按境内目的地和货源地分货物进出口总额表(年度) 表名:MAC_TRADE_VALUE_DESTINATION_YEAR
利用外资情况表(月度) 表名:MAC_FOREIGN_CAPITAL_MONTH
利用外资概况表(年度) 表名:MAC_FOREIGN_CAPITAL_YEAR
按行业分对外直接投资情况表(年度) 表名:MAC_INDUSTRY_OFDI_YEAR
分国别对外外直接投资情况表(年度) 表名:MAC_NATION_OFDI
分地区外商投资企业年底注册登记情况表(年度) 表名:MAC_AREA_FOREIGN_REGISTER
按行业分外商投资企业年底注册登记情况表(年度) 表名:MAC_INDUSTRY_FOREIGN_REGISTER
对外经济合作表(年度) 表名:MAC_FOREIGN_COOPERATE_YEAR
按国别对外经济合作表(年度) 表名:MAC_NATION_COOPERATE_YEAR
宏观经济景气指数(月度) 表名:MAC_ECONOMIC_BOOM_IDX
消费者景气指数(月度) 表名:MAC_CONSUMER_BOOM_IDX
宏观经济景气预警指数(月度) 表名:MAC_BOOM_WARNING_IDX
企业景气及企业家信心指数(季度) 表名:MAC_ENTERPRISE_BOOM_CONFIDENCE_IDX
制造业采购经理指数(月度) 表名:MAC_MANUFACTURING_PMI
非制造业采购经理指数(月度) 表名:MAC_NONMANUFACTURING_PMI
分地区居民消费价格指数(月度) 表名:MAC_AREA_CPI_MONTH
全国居民消费价格指数(月度) 表名:MAC_CPI_MONTH
全国工业增长速度(月度) 表名:MAC_INDUSTRY_GROWTH
全国工业分行业增长速度(月度) 表名:MAC_INDUSTRY_CATEGORY_GROWTH
全国工业企业主要经济指标(月度) 表名:MAC_INDUSTRY_INDICATOR
全国各地区保险业务统计表(年度) 表名:MAC_INSURANCE_AREA_YEAR
保险公司保费金额表(年度) 表名:MAC_INSURANCE_PREMIUM_YEAR
保险公司赔款及给付表(年度) 表名:MAC_INSURANCE_PAYMENT_YEAR
保险公司资产情况(年度) 表名:MAC_INSURANCE_ASSETS_YEAR
保险公司原保费收入和赔付支出情况(年度) 表名:MAC_INSURANCE_REVENUE_EXPENSE_YEAR
全国各地区的行政划分(年度) 表名:MAC_AREA_DIV
分地区国内生产总值表(季度) 表名:MAC_AREA_GDP_QUARTER
分地区国内生产总值表(年度) 表名:MAC_AREA_GDP_YEAR
分地区国内生产总值指数表(上年=100,年度) 表名:MAC_AREA_GDP_YEAR_IDX
分地区国内生产总值指数表(年度) 表名:MAC_AREA_GDP_YEAR_IDX_1978
分地区支出法国内生产总值表(年度) 表名:MAC_AREA_GDP_EXPEND_YEAR
分地区收入法国内生产总值表(年度) 表名:MAC_AREA_GDP_INCOME_YEAR
国家统计局发布经济信息的日程表(年度) 表名:MAC_STATS_REPORT_CALENDAR
各地区居民消费水平表(年度) 表名:MAC_AREA_CONSUME_YEAR
居民人均收入支出表(年度) 表名:MAC_REVENUE_EXPENSE_YEAR
城乡居民家庭人均收入及恩格尔系数(年度) 表名:MAC_ENGEL_COEFFICIENT_YEAR
城乡居民人民币储蓄存款表(年度) 表名:MAC_RESIDENT_SAVING_DEPOSIT_YEAR
分地区城镇居民家庭平均每人全年收入来源表(年度) 表名:MAC_AREA_URBAN_INCOME_YEAR
分地区城镇及农村居民家庭平均每人全年消费性支出表(年度) 表名:MAC_AREA_URBAN_RURAL_EXPENSE_YEAR
农村居民家庭平均每人纯收入(年度) 表名:MAC_RURAL_NET_INCOME_YEAR
各地区按来源分农村居民家庭人均纯收入(年度) 表名:MAC_AREA_RURAL_NET_INCOME_YEAR
分地区农村居民家庭住房情况表(年度) 表名:MAC_AREA_RURAL_HOUSE_YEAR
人口基本情况表(年度): 表名:MAC_POPULATION_YEAR
各地区人口平均预期寿命表(年度) 表名:MAC_LIFE_EXPECT
按年龄和性别分人口数表(年度) 表名:MAC_POPULATION_AGE
各地区户数、人口数、性别比和户规模表(年度) 表名:MAC_AREA_HOUSEHOLD_SIZE
户口登记状况(年度) 表名:MAC_AREA_HOUSEHOLD_REGISTER
各地区人口年龄结构和抚养比例表(年度) 表名:MAC_AREA_POP_DEPENDENCY
各地区按性别和婚姻状况分的人口表(年度) 表名:MAC_AREA_POP_MARITAL
各地区按性别和受教育程度分人口情况表(年度) 表名:MAC_AREA_POP_EDUCATION
各地区按性别分的15岁及以上文盲人口表(年度) 表名:MAC_AREA_POP_ILLITERATE
各地区按家庭户规模分的户数表(年度) 表名:MAC_AREA_FAMILY_HOUSEHOLD
育龄妇女分年龄生育状况表(年度) 表名:MAC_POP_FERTILITY_RATE
人口年龄结构和抚养比例表(年度) 表名:MAC_POPULATION_DEPENDENCY
from jqdatasdk import *
finance.run_query(query(finance.CCTV_NEWS).filter(finance.CCTV_NEWS.day=='2019-02-19').limit(n))
获取新闻联播每日播报的新闻文本数据,数据来源:央视新闻联播频道,时间范围:2009-06-26至今。
参数:
字段统计
| 字段名称 | 中文名称 | 字段类型 | 非空 | 描述 |
|---|---|---|---|---|
| day | 日期 | date | Y | |
| title | 标题 | varchar(200) | Y | |
| content | 正文 | varchar(5000) |
返回结果:
注意:
示例:
#查询day==2019-02-19的新闻联播文本内容
from jqdatasdk import *
df=finance.run_query(query(finance.CCTV_NEWS).filter(finance.CCTV_NEWS.day=='2019-02-19').limit(10))
print(df)
id day title \
0 77833 2019-02-19 【央视快评】推动深度融合 加快建设新型主流媒体
1 77828 2019-02-19 【领航新时代】安徽:树作风标杆 谋发展之变
2 77829 2019-02-19 中共中央 国务院关于坚持农业农村优先发展 做好“三农”工作的若干意见
3 77830 2019-02-19 人民日报社论:决胜全面建成小康社会 推进乡村全面振兴
4 77836 2019-02-19 国内联播快讯
5 77838 2019-02-19 国际联播快讯
6 77832 2019-02-19 守正创新 壮大主流舆论阵地
7 77831 2019-02-19 栗战书与伊朗伊斯兰议会议长举行会谈
8 77837 2019-02-19 欧盟就对俄新制裁达成共识
9 77834 2019-02-19 赏灯游园庆佳节 欢欢喜喜闹元宵
content
0 本台今天刊播央视快评《推动深度融合 加快建设新型主流媒体》。 \r\n ...
1 2014年3月9日,习近平总书记在参加十二届全国人大二次会议安徽代表团审议时指出:各...
2 中共中央、国务院日前发出《关于坚持农业农村优先发展 做好“三农”工作的若干意见》。《...
3 明天出版的人民日报将发表社论,题目是《决胜全面建成小康社会 推进乡村全面振兴》。 ...
4 \r\n 人民银行:首单银行永续债顺利发行 \r...
5 \r\n 叙鲁克班干难民营开人道主义通道 \r\...
6 三年前的2月19日,习近平总书记考察中央主要新闻媒体,主持召开党的新闻舆论工作座谈会...
7 全国人大常委会委员长栗战书19日在人民大会堂与伊朗伊斯兰议会议长拉里贾尼举行会谈。 ...
8 欧盟外交和安全政策高级代表莫盖里尼18日表示,欧盟国家已经达成共识,将就俄乌刻赤海峡...
9 正月十五元宵佳节,人们走出家门游园赏灯闹元宵,感受传统文化的魅力。 \r\n ...
#进一步获取新闻正文内容
print(df.iloc[2,3])
中共中央、国务院日前发出《关于坚持农业农村优先发展 做好“三农”工作的若干意见》。《意见》指出,今明两年是全面建成小康社会的决胜期,“三农”领域有不少必须完成的硬任务。党中央认为,在经济下行压力加大、外部环境发生深刻变化的复杂形势下,做好“三农”工作具有特殊重要性,必须坚持把解决好“三农”问题作为全党工作重中之重不动摇。
《意见》提出,要聚力精准施策,决战决胜脱贫攻坚,不折不扣完成脱贫攻坚任务,咬定既定脱贫目标,落实已有政策部署,到2020年确保现行标准下农村贫困人口实现脱贫、贫困县全部摘帽、解决区域性整体贫困。要夯实农业基础,保障重要农产品有效供给;要扎实推进乡村建设,加快补齐农村人居环境和公共服务短板;要发展壮大乡村产业,拓宽农民增收渠道;要全面深化农村改革,激发乡村发展活力;要完善乡村治理机制,保持农村社会和谐稳定;要发挥农村党支部战斗堡垒作用,全面加强农村基层组织建设。
要加强党对“三农”工作的领导,落实农业农村优先发展总方针,发挥好农民主体作用,让农民更多参与并从中获益。
get_ticks(security, start_dt, end_dt, count, fields, skip=True,df=True)
股票部分, 支持 2010-01-01 至今的tick数据,提供买五卖五数据。盘后15:00更新,24:00校对完成入库
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 股票代码或期货代码,不支持传入多个标的
start_dt: 开始日期,格式为'YYYY-MM-DD HH:MM:SS'
end_dt: 结束日期,格式为'YYYY-MM-DD HH:MM:SS'
count: 取出指定时间区间内前多少条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下:
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
股票tick返回结果
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额 | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
股票tick数据示例:
# 获取平安银行2018-07-02的tick数据,start_dt和count只能有一个不为None值
d = get_ticks("000001.XSHE",start_dt=None, end_dt="2018-07-03", count=8)
print(d)
#输出
time current high low volume money a1_p \
0 2018-07-02 14:56:42 8.62 9.05 8.56 128332300.0 1.130823e+09 8.62
1 2018-07-02 14:56:45 8.62 9.05 8.56 128348600.0 1.130963e+09 8.62
2 2018-07-02 14:56:48 8.61 9.05 8.56 128380000.0 1.131233e+09 8.62
3 2018-07-02 14:56:51 8.62 9.05 8.56 128420300.0 1.131581e+09 8.62
4 2018-07-02 14:56:54 8.62 9.05 8.56 128425000.0 1.131621e+09 8.62
5 2018-07-02 14:56:57 8.62 9.05 8.56 128485000.0 1.132138e+09 8.62
6 2018-07-02 14:57:00 8.62 9.05 8.56 128514800.0 1.132395e+09 0.00
7 2018-07-02 15:00:03 8.61 9.05 8.56 131552000.0 1.158546e+09 8.61
a1_v a2_p a2_v ... b1_p b1_v b2_p b2_v b3_p \
0 479000.0 8.63 651000.0 ... 8.61 13500.0 8.60 434200.0 8.59
1 478700.0 8.63 651000.0 ... 8.61 5500.0 8.60 436600.0 8.59
2 478400.0 8.63 651000.0 ... 8.61 2000.0 8.60 512600.0 8.59
3 464600.0 8.63 651000.0 ... 8.61 23100.0 8.60 558200.0 8.59
4 460300.0 8.63 651000.0 ... 8.61 108800.0 8.60 564300.0 8.59
5 386500.0 8.63 649000.0 ... 8.61 399200.0 8.60 682500.0 8.59
6 0.0 0.00 0.0 ... 0.00 0.0 0.00 0.0 0.00
7 2560700.0 8.62 483200.0 ... 8.60 1009300.0 8.59 201000.0 8.58
b3_v b4_p b4_v b5_p b5_v
0 211300.0 8.58 311100.0 8.57 180000.0
1 211300.0 8.58 306100.0 8.57 180000.0
2 210900.0 8.58 306100.0 8.57 180000.0
3 209600.0 8.58 306200.0 8.57 179200.0
4 209500.0 8.58 307300.0 8.57 184200.0
5 209500.0 8.58 306800.0 8.57 184200.0
6 0.0 0.00 0.0 0.00 0.0
7 365600.0 8.57 184700.0 8.56 250900.0
[8 rows x 26 columns]
get_ticks(security, start_dt, end_dt, count, fields, skip,df=True)
期货部分, 支持 2010-01-01 至今的tick数据,提供买一卖一数据。盘后15:00更新,24:00校对完成入库。如果要获取主力合约的tick数据,可以先使用get_dominant_future(underlying_symbol,dt)获取主力合约对应的标的,然后再用get_ticks()获取该合约的tick数据
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 期货代码
start_dt: 开始日期,格式为'YYYY-MM-DD HH:MM:SS'
end_dt: 结束日期,格式为'YYYY-MM-DD HH:MM:SS'
count: 取出指定时间区间内前多少条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下:
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
期货tick返回结果:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(手) | float |
| money | 累计成交额 | float |
| position | 持仓量 | float |
| a1_v | 一档卖量 | float |
| a1_p | 一档卖价 | float |
| b1_v | 一档买量 | float |
| b1_p | 一档买价 | float |
期货tick数据示例:
#获取AU1812期货合约在“2018-07-03”前8个时间单位的tick数据,start_dt和count只能有一个不为None值
df=get_ticks('AU1812.XSGE',end_dt='2018-07-03',count=8)
print(df)
time current high low volume money \
0 2018-07-02 23:59:35.500 272.00 272.95 272.0 42922.0 1.170027e+10
1 2018-07-02 23:59:37.000 272.05 272.95 272.0 42942.0 1.170571e+10
2 2018-07-02 23:59:37.500 272.05 272.95 272.0 42966.0 1.171224e+10
3 2018-07-02 23:59:38.000 272.05 272.95 272.0 42974.0 1.171442e+10
4 2018-07-02 23:59:43.000 272.05 272.95 272.0 42978.0 1.171550e+10
5 2018-07-02 23:59:45.500 272.05 272.95 272.0 42986.0 1.171768e+10
6 2018-07-02 23:59:46.000 272.05 272.95 272.0 42994.0 1.171986e+10
7 2018-07-02 23:59:59.000 272.05 272.95 272.0 42998.0 1.172094e+10
position a1_p a1_v b1_p b1_v
0 361578.0 272.05 57.0 272.00 281.0
1 361570.0 272.05 12.0 272.00 289.0
2 361562.0 272.10 96.0 272.05 14.0
3 361554.0 272.10 97.0 272.05 25.0
4 361554.0 272.10 97.0 272.05 24.0
5 361546.0 272.10 95.0 272.05 20.0
6 361538.0 272.10 91.0 272.05 16.0
7 361534.0 272.10 85.0 272.05 17.0
get_ticks(security, start_dt, end_dt, count, fields,df)
期权部分, 支持期权tick数据,盘后15:00更新,24:00校对完成入库。其中上交所ETF期权从2017-01-01开始,提供买卖五档;商品期权从2019-12-02开始,提供买卖一档。
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
期权tick返回结果:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(张) | float |
| money | 累计成交额(元) | float |
| position | 持仓量(张) | float |
| a1_p | 一档卖价 | float |
| a1_v | 一档卖量 | float |
| … | ||
| a5_p | 五档卖价 | float |
| a5_v | 五档卖量 | float |
| b1_p | 一档买价 | float |
| b1_v | 一档买量 | float |
| … | ||
| b5_p | 五档买价 | float |
| b5_v | 五档买量 | float |
期权tick数据示例:
# 获取上交所ETF期权('10001313.XSHG')2018-12-20 10:00:00往前8个时间单位
df=get_ticks('10001313.XSHG',end_dt='2018-12-20 10:00:00',count=8)
print(df)
time current high low volume money \
0 2018-12-20 09:59:37.740 0.0041 0.0076 0.004 11754.0 662475.03
1 2018-12-20 09:59:39.240 0.0042 0.0076 0.004 11774.0 663332.00
2 2018-12-20 09:59:42.740 0.0043 0.0076 0.004 11784.0 663770.69
3 2018-12-20 09:59:45.240 0.0043 0.0076 0.004 11798.0 664384.85
4 2018-12-20 09:59:46.240 0.0042 0.0076 0.004 11808.0 664813.33
5 2018-12-20 09:59:51.712 0.0042 0.0076 0.004 11812.0 664984.72
6 2018-12-20 09:59:55.232 0.0042 0.0076 0.004 11822.0 665413.21
7 2018-12-20 09:59:55.732 0.0042 0.0076 0.004 11839.0 666141.63
position a1_p a1_v a2_p ... b1_p b1_v b2_p b2_v b3_p \
0 93502.0 0.0043 37.0 0.0044 ... 0.0041 10.0 0.0040 10.0 0.0039
1 93510.0 0.0043 37.0 0.0044 ... 0.0042 42.0 0.0041 31.0 0.0039
2 93520.0 0.0043 55.0 0.0044 ... 0.0042 42.0 0.0040 10.0 0.0039
3 93534.0 0.0043 81.0 0.0044 ... 0.0042 42.0 0.0040 22.0 0.0039
4 93534.0 0.0043 81.0 0.0044 ... 0.0042 40.0 0.0040 32.0 0.0039
5 93534.0 0.0043 81.0 0.0044 ... 0.0042 46.0 0.0040 32.0 0.0039
6 93534.0 0.0043 81.0 0.0044 ... 0.0042 36.0 0.0041 12.0 0.0040
7 93534.0 0.0043 81.0 0.0044 ... 0.0042 19.0 0.0041 12.0 0.0040
b3_v b4_p b4_v b5_p b5_v
0 62.0 0.0038 32.0 0.0037 30.0
1 62.0 0.0038 42.0 0.0037 30.0
2 94.0 0.0038 32.0 0.0037 30.0
3 72.0 0.0038 42.0 0.0037 30.0
4 62.0 0.0038 42.0 0.0037 30.0
5 62.0 0.0038 32.0 0.0037 40.0
6 50.0 0.0039 62.0 0.0038 32.0
7 50.0 0.0039 62.0 0.0038 32.0
[8 rows x 27 columns]
get_ticks(security, start_dt, end_dt, count, fields, skip,df)
场内基金部分, 支持 2019-01-01 至今的tick数据,提供买五卖五盘口数据。盘后15:00更新,24:00校对完成入库
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
security: 场内基金代码,如'510050.XSHG'
start_dt: 开始日期,格式为'YYYY-MM-DD HH:MM:SS'
end_dt: 结束日期,格式为'YYYY-MM-DD HH:MM:SS'
count: 取出指定时间区间内前N条的tick数据。
fields: 选择要获取的行情数据字段,默认为None,返回结果如下场内基金tick返回结果。
skip:默认为True,过滤掉无成交变化的tick数据;当指定skip=False时,返回的tick数据会保留无成交有盘口变化的tick数据
df:指定返回的数据格式,默认为True,返回dataframe;df=False时返回一个np.ndarray
场内基金tick返回结果
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额 | float |
| a1_v~a5_v | 五档卖量 | float |
| a1_p~a5_p | 五档卖价 | float |
| b1_v~b5_v | 五档买量 | float |
| b1_p~b5_p | 五档买价 | float |
获取场内基金tick数据示例:
#获取50ETF基金2019-10-15的tick数据
df=get_ticks('510050.XSHG','2019-10-16 09:00:00','2019-10-16 15:00:00')
print(df[:8])
time current high low volume money \
0 2019-10-16 09:25:00.392 3.064 3.064 3.064 2327900.0 7132686.0
1 2019-10-16 09:30:00.552 3.064 3.065 3.063 2491600.0 7634304.0
2 2019-10-16 09:30:03.532 3.064 3.065 3.063 3177815.0 9737131.0
3 2019-10-16 09:30:06.488 3.062 3.065 3.062 4283600.0 13124520.0
4 2019-10-16 09:30:08.988 3.064 3.065 3.062 4346100.0 13315970.0
5 2019-10-16 09:30:11.480 3.065 3.065 3.062 4666100.0 14296725.0
6 2019-10-16 09:30:14.500 3.064 3.065 3.062 4731900.0 14498336.0
7 2019-10-16 09:30:17.360 3.062 3.065 3.062 4856200.0 14878966.0
a1_p a1_v a2_p a2_v ... b1_p b1_v b2_p \
0 3.064 80011.0 3.065 471300.0 ... 3.063 111500.0 3.062
1 3.065 412211.0 3.066 50800.0 ... 3.064 20900.0 3.063
2 3.065 110711.0 3.066 44400.0 ... 3.064 118700.0 3.063
3 3.063 45715.0 3.064 49200.0 ... 3.062 101200.0 3.061
4 3.064 44615.0 3.065 1338211.0 ... 3.063 500.0 3.062
5 3.065 1062826.0 3.066 1544500.0 ... 3.064 10000.0 3.063
6 3.064 1445000.0 3.065 1662826.0 ... 3.063 3100.0 3.062
7 3.062 252800.0 3.064 2594900.0 ... 3.061 121500.0 3.060
b2_v b3_p b3_v b4_p b4_v b5_p b5_v
0 91300.0 3.061 50600.0 3.060 159200.0 3.059 10800.0
1 97100.0 3.062 93300.0 3.061 55600.0 3.060 159200.0
2 546585.0 3.062 165500.0 3.061 156400.0 3.060 402100.0
3 466400.0 3.060 473100.0 3.059 20100.0 3.058 219200.0
4 101200.0 3.061 399900.0 3.060 491100.0 3.059 20100.0
5 500.0 3.062 111200.0 3.061 471500.0 3.060 521100.0
6 111200.0 3.061 481500.0 3.060 521100.0 3.059 164100.0
7 522100.0 3.059 164100.0 3.058 363200.0 3.057 400.0
[8 rows x 26 columns]
get_ticks(security, start_dt=None, end_dt=None, count=None, fields=None, skip=True, df=True)
指数部分, 支持 2017-01-01 至今的tick数据。盘后15:00更新,24:00校对完成入库
购买:用户如有需要使用tick数据的,可添加微信号JQData02申请试用或咨询开通,或发送邮件至jqdatasdk@joinquant.com
参数:
指数tick返回结果:
| 字段名 | 说明 | 字段类型 |
|---|---|---|
| time | 时间 | datetime |
| current | 当前价 | float |
| high | 当日最高价 | float |
| low | 当日最低价 | float |
| volume | 累计成交量(股) | float |
| money | 累计成交额(元) | float |
获取指数tick数据示例:
# 获取上证指数2019-11-19 10:00:00 到 2019-11-19 10:01:00的tick数据
df=get_ticks('000001.XSHG','2019-11-19 10:00:00','2019-11-19 10:01:00')
print(df)
time current high low volume \
0 2019-11-19 10:00:01.608 2913.4288 2914.6199 2902.855 2.795233e+09
1 2019-11-19 10:00:06.600 2913.1890 2914.6199 2902.855 2.800322e+09
2 2019-11-19 10:00:10.628 2913.0532 2914.6199 2902.855 2.807082e+09
3 2019-11-19 10:00:16.608 2913.3964 2914.6199 2902.855 2.814624e+09
4 2019-11-19 10:00:21.620 2913.2224 2914.6199 2902.855 2.818837e+09
5 2019-11-19 10:00:25.620 2913.6741 2914.6199 2902.855 2.824412e+09
6 2019-11-19 10:00:31.608 2912.6091 2914.6199 2902.855 2.830766e+09
7 2019-11-19 10:00:36.588 2913.6492 2914.6199 2902.855 2.835326e+09
8 2019-11-19 10:00:40.620 2913.5004 2914.6199 2902.855 2.840942e+09
9 2019-11-19 10:00:46.580 2913.7269 2914.6199 2902.855 2.846658e+09
10 2019-11-19 10:00:51.588 2913.7699 2914.6199 2902.855 2.850605e+09
11 2019-11-19 10:00:55.608 2913.9637 2914.6199 2902.855 2.856479e+09
money
0 3.171538e+10
1 3.178079e+10
2 3.185376e+10
3 3.193569e+10
4 3.198723e+10
5 3.204712e+10
6 3.212560e+10
7 3.217697e+10
8 3.224518e+10
9 3.231385e+10
10 3.236239e+10
11 3.242965e+10
# 导入函数库
from jqdatasdk import get_factor_values
# 取值函数
get_factor_values(securities, factors, start_date, end_date, count)
参数
返回
一个 dict: key 是因子名称, value 是 pandas.dataframe。
dataframe 的 index 是日期, column 是股票代码, value 是因子值
注:1.为保证数据的连续性,所有数据基于后复权计算
2.为了防止单次返回数据时间过长,每次调用 api 请求的因子值不能超过 200000 个
购买 用户如有需要使用聚宽因子的,请联系我们的运营同事。个人用户咨询【邮箱:sunping@joinquant.com】,机构服务咨询添加微信号JQData02
示例
# 导入函数库
from jqdatasdk import get_factor_values
# 获取因子Skewness60(个股收益的60日偏度)从 2017-01-01 至 2017-03-04 的因子值
factor_data = get_factor_values(securities=['000001.XSHE'], factors=['Skewness60','DEGM','quick_ratio'], start_date='2017-01-01', end_date='2017-03-04')
# 查看因子值
print(factor_data['Skewness60'][:5])
000001.XSHE
2017-01-03 -0.002081
2017-01-04 0.021962
2017-01-05 -0.003263
2017-01-06 -0.007545
2017-01-09 -0.007441
get_all_factors()
描述:获取聚宽因子库中所有的因子code和因子名称
参数:无
返回:pandas.DataFrame,
示例:
from jqdatasdk import *
#获取聚宽因子库所有因子
df = get_all_factors()
print(df)
get_factor_effect(security, start_date, end_date, period, factor, group_num=5)
单因子分层回测函数是为了检测单个因子的选股收益效果而设计。指定股票池,根据因子值从小到大将股票池等分成几组,按照一定的调仓周期进行交易,从而得到各个股票组合从开始交易至各个调仓周期结束日期的累计收益,最后从各组股票的收益情况来判断因子的选股效果。
输入参数:
| 参数 | 名称 | 说明 |
|---|---|---|
| security | 指数代码(如传入沪深300指数:000300.XSHG) | 指数的成分股作为基础股票池 |
| start_date | 开始交易日期 | |
| end_date | 结束交易日期 | |
| period | 调仓周期,传入'XD','XW','XM',分别代表按X个交易日调仓,按X周调仓,按X月调仓。 | D代表交易日,W代表自然周,M代表自然月 |
| factor | 因子库的因子名称,如传入营业收入TTM:'operating_revenue_ttm' | |
| group_num | 股票分组数,默认5组 | 每次调仓根据股票池中各个股票的因子值,按照从小到大排序,然后等分成group_num个股票组合 |
返回结果:
返回DataFrame结果:输出从开始日期到各个调仓周期结束日期的累计收益
示例:
#获取聚宽因子库营业收入TTM因子“operating_revenue_ttm”的分层回测收益
get_factor_effect('000300.XSHG','2018-01-01','2019-03-14','1W','operating_revenue_ttm',5)
0 1 2 3 4
2018-01-02 0.000000 0.000000 0.000000 0.000000 0.000000
2018-01-07 0.016188 0.022237 0.022782 0.034021 0.019601
2018-01-14 0.016673 0.027506 0.023735 0.038333 0.028146
2018-01-21 0.010664 0.021467 0.019280 0.047467 0.051798
2018-01-28 0.029561 0.045975 0.035523 0.068780 0.069267
2018-02-04 -0.043394 -0.024648 -0.018661 0.019054 0.032855
2018-02-11 -0.089295 -0.074211 -0.077474 -0.052757 -0.039418
2018-02-18 -0.073470 -0.054493 -0.054195 -0.033000 -0.019903
2018-02-25 -0.067193 -0.041986 -0.042457 -0.021707 -0.007593
2018-03-04 -0.033245 -0.025273 -0.030161 -0.033868 -0.045769
2018-03-11 -0.020114 -0.021214 -0.013208 -0.019305 -0.030632
2018-03-18 -0.029137 -0.032529 -0.021925 -0.027630 -0.041352
2018-03-25 -0.064177 -0.064671 -0.058877 -0.061889 -0.085263
2018-04-01 -0.003285 -0.028887 -0.033231 -0.046336 -0.076845
2018-04-08 -0.006359 -0.031904 -0.038573 -0.051862 -0.088896
2018-04-15 0.004866 -0.021881 -0.025195 -0.035230 -0.070057
2018-04-22 -0.006075 -0.032995 -0.042340 -0.050449 -0.088741
2018-04-29 -0.009586 -0.036259 -0.043901 -0.051380 -0.076490
2018-05-06 -0.005316 -0.034041 -0.036198 -0.047776 -0.075190
2018-05-13 0.014917 -0.009112 -0.013855 -0.023397 -0.053566
2018-05-20 0.011802 -0.002750 -0.015573 -0.024692 -0.063800
2018-05-27 0.001798 -0.013322 -0.031322 -0.045623 -0.086970
2018-06-03 -0.040517 -0.030385 -0.044497 -0.060837 -0.100368
2018-06-10 -0.040419 -0.027619 -0.045175 -0.049896 -0.091778
2018-06-17 -0.053201 -0.041341 -0.062207 -0.043582 -0.088657
2018-06-24 -0.112111 -0.097411 -0.112584 -0.076721 -0.122632
2018-07-01 -0.124040 -0.126341 -0.142075 -0.130394 -0.168522
2018-07-08 -0.154623 -0.166611 -0.183293 -0.167979 -0.206130
2018-07-15 -0.131941 -0.135819 -0.152597 -0.142129 -0.179568
2018-07-22 -0.149347 -0.149766 -0.158073 -0.158747 -0.191595
... ... ... ... ... ...
2018-08-26 -0.169002 -0.177045 -0.164723 -0.147438 -0.165472
2018-09-02 -0.164746 -0.176812 -0.161130 -0.143572 -0.164895
2018-09-09 -0.162940 -0.184331 -0.165968 -0.155226 -0.178692
2018-09-16 -0.177941 -0.193842 -0.172332 -0.159286 -0.178187
2018-09-23 -0.163193 -0.175474 -0.156346 -0.135481 -0.155490
2018-09-30 -0.164912 -0.172917 -0.145858 -0.133545 -0.151764
2018-10-07 -0.164912 -0.172917 -0.145858 -0.133545 -0.151764
2018-10-14 -0.259750 -0.248041 -0.215601 -0.196959 -0.208112
2018-10-21 -0.303351 -0.291153 -0.270591 -0.244878 -0.254668
2018-10-28 -0.264349 -0.272121 -0.256642 -0.227903 -0.238259
2018-11-04 -0.225268 -0.236059 -0.227813 -0.204811 -0.219570
2018-11-11 -0.244029 -0.253912 -0.241129 -0.218995 -0.233955
2018-11-18 -0.189706 -0.223133 -0.209761 -0.195135 -0.214504
2018-11-25 -0.203514 -0.237002 -0.229146 -0.207192 -0.223062
2018-12-02 -0.210628 -0.247018 -0.229002 -0.207702 -0.229168
2018-12-09 -0.240338 -0.252045 -0.242047 -0.220732 -0.244116
2018-12-16 -0.233411 -0.243337 -0.233622 -0.204193 -0.231376
2018-12-23 -0.252406 -0.264364 -0.252982 -0.218965 -0.252012
2018-12-30 -0.265173 -0.275675 -0.258506 -0.224265 -0.260110
2019-01-06 -0.284588 -0.298950 -0.286530 -0.239417 -0.274474
2019-01-13 -0.283472 -0.298144 -0.272225 -0.232628 -0.271904
2019-01-20 -0.287051 -0.300502 -0.266322 -0.230273 -0.265460
2019-01-27 -0.290530 -0.301049 -0.271329 -0.236393 -0.268858
2019-02-03 -0.311722 -0.316899 -0.288474 -0.233212 -0.261969
2019-02-10 -0.311722 -0.316899 -0.288474 -0.233212 -0.261969
2019-02-17 -0.266305 -0.269386 -0.243151 -0.192969 -0.234676
2019-02-24 -0.234200 -0.246632 -0.223176 -0.176753 -0.221142
2019-03-03 -0.205863 -0.215581 -0.197200 -0.146078 -0.185385
2019-03-10 -0.178159 -0.206479 -0.191125 -0.132881 -0.188446
2019-03-17 -0.170113 -0.198817 -0.188283 -0.121740 -0.177256
说明:
基础因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| net_working_capital | 净运营资本 | 流动资产 - 流动负债 |
| total_operating_revenue_ttm | 营业总收入TTM | 计算过去12个月的 营业总收入 之和 |
| operating_profit_ttm | 营业利润TTM | 计算过去12个月 营业利润 之和 |
| net_operate_cash_flow_ttm | 经营活动现金流量净额TTM | 计算过去12个月 经营活动产生的现金流量净值 之和 |
| operating_revenue_ttm | 营业收入TTM | 计算过去12个月的 营业收入 之和 |
| interest_carry_current_liability | 带息流动负债 | 流动负债合计 - 无息流动负债 |
| sale_expense_ttm | 销售费用TTM | 计算过去12个月 销售费用 之和 |
| retained_earnings | 留存收益 | 盈余公积金+未分配利润 |
| total_operating_cost_ttm | 营业总成本TTM | 计算过去12个月的 营业总成本 之和 |
| non_operating_net_profit_ttm | 营业外收支净额TTM | 营业外收入(TTM) - 营业外支出(TTM) |
| net_invest_cash_flow_ttm | 投资活动现金流量净额TTM | 计算过去12个月 投资活动现金流量净额 之和 |
| financial_expense_ttm | 财务费用TTM | 计算过去12个月 财务费用 之和 |
| administration_expense_ttm | 管理费用TTM | 计算过去12个月 管理费用 之和 |
| net_interest_expense | 净利息费用 | 利息支出-利息收入 |
| value_change_profit_ttm | 价值变动净收益TTM | 计算过去12个月 价值变动净收益 之和 |
| total_profit_ttm | 利润总额TTM | 计算过去12个月 利润总额 之和 |
| net_finance_cash_flow_ttm | 筹资活动现金流量净额TTM | 计算过去12个月 筹资活动现金流量净额 之和 |
| interest_free_current_liability | 无息流动负债 | 应付票据+应付账款+预收账款(用 预售款项 代替)+应交税费+应付利息+其他应付款+其他流动负债 |
| EBIT | 息税前利润 | 净利润+所得税+财务费用 |
| net_profit_ttm | 净利润TTM | 计算过去12个月 净利润 之和 |
| OperateNetIncome | 经营活动净收益 | 经营活动净收益/利润总额(%) * 利润总额 |
| EBITDA | 息税折旧摊销前利润(报告期) | 一般企业:(营业总收入-营业税金及附加)-(营业成本+利息支出+手续费及佣金支出+销售费用+管理费用+研发费用+资产减值损失)+(固定资产折旧、油气资产折耗、生产性生物资产折旧)+无形资产摊销+长期待摊费用摊销;银行业:(营业总收入-营业税金及附加)-(营业成本+管理费用+资产减值损失)+(固定资产折旧、油气资产折耗、生产性生物资产折旧+无形���产摊销+长期待摊费用摊销)+无��资产摊销+长期待摊费用摊销 |
| asset_impairment_loss_ttm | 资产减值损失TTM | 计算过去12个月 资产减值损失 之和 |
| np_parent_company_owners_ttm | 归属于母公司股东的净利润TTM | 计算过去12个月 归属于母公司股东的净利润 之和 |
| operating_cost_ttm | 营业成本TTM | 计算过去12个月的 营业成本 之和 |
| net_debt | 净债务 | 总债务-期末现金及现金等价物余额 |
| non_recurring_gain_loss | 非经常性损益 | 归属于母公司股东的净利润-扣除非经常损益后的净利润(元) |
| goods_sale_and_service_render_cash_ttm | 销售商品提供劳务收到的现金 | 计算过去12个月 销售商品提供劳务收到的现金 之和 |
| market_cap | 市值 | 市值 |
| cash_flow_to_price_ratio | 现金流市值比 | 1 / pcf_ratio (ttm) |
| sales_to_price_ratio | 营收市值比 | 1 / ps_ratio (ttm) |
| circulating_market_cap | 流通市值 | 流通市值 |
| operating_assets | 经营性资产 | 总资产 - 金融资产 |
| financial_assets | 金融资产 | 货币资金 + 交易性金融资产 + 应收票据 + 应收利息 + 应收股利 + 可供出售金融资产 + 持有至到期投资 |
| operating_liability | 经营性负债 | 总负债 - 金融负债 |
| financial_liability | 金融负债 | (流动负债合计-无息流动负债)+(有息非流动负债)=(流动负债合计-应付账款-预收款项-应付职工薪酬-应交税费-其他应付款-一年内的递延收益-其它流动负债)+(长期借款+应付债券) |
质量因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| net_profit_to_total_operate_revenue_ttm | 净利润与营业总收入之比 | 净利润与营业总收入之比=净利润(TTM)/营业总收入(TTM) |
| cfo_to_ev | 经营活动产生的现金流量净额与企业价值之比TTM | 经营活动产生的现金流量净额TTM / 企业价值。其中,企业价值=司市值+负债合计-货币资金 |
| accounts_payable_turnover_days | 应付账款周转天数 | 应付账款周转天数 = 360 / 应付账款周转率 |
| net_profit_ratio | 销售净利率 | 售净利率=净利润(TTM)/营业收入(TTM) |
| net_non_operating_income_to_total_profit | 营业外收支利润净额/利润总额 | 营业外收支利润净额/利润总额 |
| fixed_asset_ratio | 固定资产比率 | 固定资产比率=(固定资产+工程物资+在建工程)/总资产 |
| account_receivable_turnover_days | 应收账款周转天数 | 应收账款周转天数=360/应收账款周转率 |
| DEGM | 毛利率增长 | 毛利率增长=(今年毛利率(TTM)/去年毛利率(TTM))-1 |
| sale_expense_to_operating_revenue | 营业费用与营业总收入之比 | 营业费用与营业总收入之比=销售费用(TTM)/营业总收入(TTM) |
| operating_tax_to_operating_revenue_ratio_ttm | 销售税金率 | 销售税金率=营业税金及附加(TTM)/营业收入(TTM) |
| inventory_turnover_days | 存货周转天数 | 存货周转天数=360/存货周转率 |
| OperatingCycle | 营业周期 | 应收账款周转天数+存货周转天数 |
| net_operate_cash_flow_to_operate_income | 经营活动产生的现金流量净额与经营活动净收益之比 | 经营活动产生的现金流量净额(TTM)/(营业总收入(TTM)-营业总成本(TTM) |
| net_operating_cash_flow_coverage | 净利润现金含量 | 经营活动产生的现金流量净额/归属于母公司所有者的净利润 |
| quick_ratio | 速动比率 | 速动比率=(流动资产合计-存货)/ 流动负债合计 |
| intangible_asset_ratio | 无形资产比率 | 无形资产比率=(无形资产+研发支出+商誉)/总资产 |
| MLEV | 市场杠杆 | 市场杠杆=非流动负债合计/(非流动负债合计+总市值) |
| debt_to_equity_ratio | 产权比率 | 产权比率=负债合计/归属母公司所有者权益合计 |
| super_quick_ratio | 超速动比率 | (货币资金+交易性金融资产+应收票据+应收帐款+其他应收款)/流动负债合计 |
| inventory_turnover_rate | 存货周转率 | 存货周转率=营业成本(TTM)/存货 |
| operating_profit_growth_rate | 营业利润增长率 | 营业利润增长率=(今年营业利润(TTM)/去年营业利润(TTM))-1 |
| long_debt_to_working_capital_ratio | 长期负债与营运资金比率 | 长期负债与营运资金比率=非流动负债合计/(流动资产合计-流动负债合计) |
| current_ratio | 流动比率(单季度) | 流动比率=流动资产合计/流动负债合计 |
| net_operate_cash_flow_to_net_debt | 经营活动产生现金流量净额/净债务 | 经营活动产生现金流量净额/净债务 |
| net_operate_cash_flow_to_asset | 总资产现金回收率 | 经营活动产生的现金流量净额(ttm) / 总资产 |
| non_current_asset_ratio | 非流动资产比率 | 非流动资产比率=非流动资产合计/总资产 |
| total_asset_turnover_rate | 总资产周转率 | 总资产周转率=营业收入(ttm)/总资产 |
| long_debt_to_asset_ratio | 长期借款与资产总计之比 | 长期借款与资产总计之比=长期借款/总资产 |
| debt_to_tangible_equity_ratio | 有形净值债务率 | 负债合计/有形净值 其中有形净值=股东权益-无形资产净值,无形资产净值= 商誉+无形资产 |
| ROAEBITTTM | 总资产报酬率 | (利润总额(TTM)+利息支出(TTM)) / 总资产在过去12个月的平均 |
| operating_profit_ratio | 营业利润率 | 营业利润率=营业利润(TTM)/营业收入(TTM) |
| long_term_debt_to_asset_ratio | 长期负债与资产总计之比 | 长期负债与资产总计之比=非流动负债合计/总资产 |
| current_asset_turnover_rate | 流动资产周转率TTM | 过去12个月的营业收入/过去12个月的平均流动资产合计 |
| financial_expense_rate | 财务费用与营业总收入之比 | 财务费用(TTM) / 营业总收入(TTM) |
| operating_profit_to_total_profit | 经营活动净收益/利润总额 | 经营活动净收益/利润总额 |
| debt_to_asset_ratio | 债务总资产比 | 债务总资产比=负债合计/总资产 |
| equity_to_fixed_asset_ratio | 股东权益与固定资产比率 | 股东权益与固定资产比率=股东权益/(固定资产+工程物资+在建工程) |
| net_operate_cash_flow_to_total_liability | 经营活动产生的现金流量净额/负债合计 | 经营活动产生的现金流量净额/负债合计 |
| cash_rate_of_sales | 经营活动产生的现金流量净额与营业收入之比 | 经营活动产生的现金流量净额(TTM) / 营业收入(TTM) |
| operating_profit_to_operating_revenue | 营业利润与营业总收入之比 | 营业利润与营业总收入之比=营业利润(TTM)/营业总收入(TTM) |
| roa_ttm | 资产回报率TTM | 资产回报率=净利润(TTM)/期末总资产 |
| admin_expense_rate | 管理费用与营业总收入之比 | 管理费用与营业总收入之比=管理费用(TTM)/营业总收入(TTM) |
| fixed_assets_turnover_rate | 固定资产周转率 | 等于过去12个月的营业收入/过去12个月的平均(固定资产+工程物资+在建工程) |
| invest_income_associates_to_total_profit | 对联营和合营公司投资收益/利润总额 | 对联营和营公司投资收益/利润总额 |
| equity_to_asset_ratio | 股东权益比率 | 股东权益比率=股东权益/总资产 |
| goods_service_cash_to_operating_revenue_ttm | 销售商品提供劳务收到的现金与营业收入之比 | 销售商品提供劳务收到的现金与营业收入之比=销售商品和提供劳务收到的现金(TTM)/营业收入(TTM) |
| cash_to_current_liability | 现金比率 | 期末现金及现金等价物余额/流动负债合计的12个月均值 |
| net_operate_cash_flow_to_total_current_liability | 现金流动负债比 | 现金流动负债比=经营活动产生的现金流量净额(TTM)/流动负债合计 |
| ACCA | 现金流资产比和资产回报率之差 | 现金流资产比-资产回报率,其中现金流资产比=经营活动产生的现金流量净额/总资产 |
| roe_ttm | 权益回报率TTM | 权益回报率=净利润(TTM)/期末股东权益 |
| accounts_payable_turnover_rate | 应付账款周转率 | TTM(营业成本,0)/(AvgQ(应付账款,4,0) + AvgQ(应付票据,4,0) + AvgQ(预付款项,4,0) ) |
| gross_income_ratio | 销售毛利率 | 销售毛利率=(营业收入(TTM)-营业成本(TTM))/营业收入(TTM) |
| adjusted_profit_to_total_profit | 扣除非经常损益后的净利润/利润总额 | 扣除非经常损益后的净利润/利润总额 |
| account_receivable_turnover_rate | 应收账款周转率 | 即,TTM(营业收入,0)/(AvgQ(应收账款,4,0) + AvgQ(应收票据,4,0) + AvgQ(预收账款,4,0) ) |
| equity_turnover_rate | 股东权益周转率 | 股东权益周转率=营业收入(ttm)/股东权益 |
| total_profit_to_cost_ratio | 成本费用利润率 | 成本费用利润率=利润总额/(营业成本+财务费用+销售费用+管理费用),以上科目使用的都是TTM的数值 |
| operating_cost_to_operating_revenue_ratio | 销售成本率 | 销售成本率=营业成本(TTM)/营业收入(TTM) |
| LVGI | 财务杠杆指数 | 本期(年报)资产负债率/上期(年报)资产负债率 |
| SGI | 营业收入指数 | 本期(年报)营业收入/上期(年报)营业收入 |
| GMI | 毛利率指数 | 上期(年报)毛利率/本期(年报)毛利率 |
| DSRI | 应收账款指数 | 本期(年报)应收账款占营业收入比例/上期(年报)应收账款占营业收入比例 |
| rnoa_ttm | 经营资产回报率TTM | 销售利润率*经营资产周转率 |
| profit_margin_ttm | 销售利润率TTM | 营业利润/营业收入 |
| roe_ttm_8y | 长期权益回报率TTM | 8年(1+roe_ttm)的累乘 ^ (1/8) - 1 # 至少要有近4年的数据,否则为 nan |
| asset_turnover_ttm | 经营资产周转率TTM | 营业收入TTM/近4个季度期末净经营性资产均值; 净经营性资产=经营资产-经营负债 |
| roic_ttm | 投资资本回报率TTM | 权益回报率=归属于母公司股东的净利润(TTM)/ 前四个季度投资资本均值; 投资资本=股东权益+负债合计-无息流动负债-无息非流动负债; 无息流动负债=应付账款+预收款项+应付职工薪酬+应交税费+其他应付款+一年内的递延收益+其它流动负债; 无息非流动负债=非流动负债合计-长期借款-应付债券; |
| roa_ttm_8y | 长期资产回报率TTM | 8年(1+roa_ttm)的乘积 ^ (1/8) - 1 # 至少要有近4年的数据,否则为 nan |
| SGAI | 销售管理费用指数 | 本期(年报)销售管理费用占营业收入的比例/上期(年报)销售管理费用占营业收入的比例 |
| DEGM_8y | 长期毛利率增长 | 过去8年(1+DEGM)的累成 ^ (1/8) - 1 |
| maximum_margin | 最大盈利水平 | max(margin_stability, DEGM_8y) |
| margin_stability | 盈利能力稳定性 | mean(GM)/std(GM); GM 为过去8年毛利率ttm |
成长因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| operating_revenue_growth_rate | 营业收入增长率 | 营业收入增长率=(今年营业收入(TTM)/去年营业收入(TTM))-1 |
| total_asset_growth_rate | 总资产增长率 | 总资产 / 总资产_4 -1 |
| net_operate_cashflow_growth_rate | 经营活动产生的现金流量净额增长率 | (今年经营活动产生的现金流量净额(TTM)/去年经营活动产生的现金流量净额(TTM))-1 |
| total_profit_growth_rate | 利润总额增长率 | 利润总额增长率=(今年利润总额(TTM)/去年利润总额(TTM))-1 |
| np_parent_company_owners_growth_rate | 归属母公司股东的净利润增长率 | (今年归属于母公司所有者的净利润(TTM)/去年归属于母公司所有者的净利润(TTM))-1 |
| financing_cash_growth_rate | 筹资活动产生的现金流量净额增长率 | 过去12个月的筹资现金流量净额 / 4季度前的12个月的筹资现金流量净额 - 1 |
| net_profit_growth_rate | 净利润增长率 | 净利润增长率=(今年净利润(TTM)/去年净利润(TTM))-1 |
| net_asset_growth_rate | 净资产增长率 | (当季的股东权益/三季度前的股东权益)-1 |
| PEG | 市盈率相对盈利增长比率 | PEG = PE / (归母公司净利润(TTM)增长率 * 100) # 如果 PE 或 增长率为负,则为 nan |
每股因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| total_operating_revenue_per_share_ttm | 每股营业总收入TTM | 营业总收入(TTM)除以总股本 |
| cash_and_equivalents_per_share | 每股现金及现金等价物余额 | 每股现金及现金等价物余额 |
| surplus_reserve_fund_per_share | 每股盈余公积金 | 每股盈余公积金 |
| retained_profit_per_share | 每股未分配利润 | 每股未分配利润 |
| operating_revenue_per_share_ttm | 每股营业收入TTM | 营业收入(TTM)除以总股本 |
| net_asset_per_share | 每股净资产 | 归属母公司所有者权益合计除以总股本 |
| total_operating_revenue_per_share | 每股营业总收入 | 每股营业总收入 |
| retained_earnings_per_share | 每股留存收益 | 每股留存收益 |
| operating_revenue_per_share | 每股营业收入 | 每股营业收入 |
| net_operate_cash_flow_per_share | 每股经营活动产生的现金流量净额 | 每股经营活动产生的现金流量净额 |
| operating_profit_per_share_ttm | 每股营业利润TTM | 营业利润(TTM)除以总股本 |
| eps_ttm | 每股收益TTM | 过去12个月归属母公司所有者的净利润(TTM)除以总股本 |
| cashflow_per_share_ttm | 每股现金流量净额,根据当时日期来获取最近变更日的总股本 | 现金流量净额(TTM)除以总股本 |
| operating_profit_per_share | 每股营业利润 | 每股营业利润 |
| capital_reserve_fund_per_share | 每股资本公积金 | 每股资本公积金 |
情绪因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| VROC12 | 12日量变动速率指标 | 成交量减N日前的成交量,再除以N日前的成交量,放大100倍,得到VROC值 ,n=12 |
| TVMA6 | 6日成交金额的移动平均值 | 6日成交金额的移动平均值 |
| VEMA10 | 成交量的10日指数移动平均 | |
| VR | 成交量比率(Volume Ratio) | VR=(AVS+1/2CVS)/(BVS+1/2CVS) |
| VOL5 | 5日平均换手率 | 5日换手率的均值,单位为% |
| BR | 意愿指标 | BR=N日内(当日最高价-昨日收盘价)之和 / N日内(昨日收盘价-当日最低价)之和×100 n设定为25 |
| VEMA12 | 12日成交量的移动平均值 | |
| TVMA20 | 20日成交金额的移动平均值 | 20日成交金额的移动平均值 |
| DAVOL5 | 5日平均换手率与120日平均换手率 | 5日平均换手率 / 120日平均换手率 |
| VDIFF | 计算VMACD因子的中间变量 | EMA(VOLUME,SHORT)-EMA(VOLUME,LONG) short设置为12,long设置为26,M设置为9 |
| WVAD | 威廉变异离散量 | (收盘价-开盘价)/(最高价-最低价)×成交量,再做加和,使用过去6个交易日的数据 |
| MAWVAD | 因子WVAD的6日均值 | |
| VSTD10 | 10日成交量标准差 | 10日成交量标准差 |
| ATR14 | 14日均幅指标 | 真实振幅的14日移动平均 |
| VOL10 | 10日平均换手率 | 10日换手率的均值,单位为% |
| DAVOL10 | 10日平均换手率与120日平均换手率之比 | 10日平均换手率 / 120日平均换手率 |
| VDEA | 计算VMACD因子的中间变量 | EMA(VDIFF,M) short设置为12,long设置为26,M设置为9 |
| VSTD20 | 20日成交量标准差 | 20日成交量标准差 |
| ATR6 | 6日均幅指标 | 真实振幅的6日移动平均 |
| VOL20 | 20日平均换手率 | 20日换手率的均值,单位为% |
| DAVOL20 | 20日平均换手率与120日平均换手率之比 | 20日平均换手率 / 120日平均换手率 |
| VMACD | 成交量指数平滑异同移动平均线 | 快的指数移动平均线(EMA12)减去慢的指数移动平均线(EMA26)得到快线DIFF, 由DIFF的M日移动平均得到DEA,由DIFF-DEA的值得到MACD |
| AR | 人气指标 | AR=N日内(当日最高价—当日开市价)之和 / N日内(当日开市价—当日最低价)之和 * 100,n设定为26 |
| VOL60 | 60日平均换手率 | 60日换手率的均值,单位为% |
| turnover_volatility | 换手率相对波动率 | 取20个交易日个股换手率的标准差 |
| VOL120 | 120日平均换手率 | 120日换手率的均值,单位为% |
| VROC6 | 6日量变动速率指标 | 成交量减N日前的成交量,再除以N日前的成交量,放大100倍,得到VROC值 ,n=6 |
| TVSTD20 | 20日成交金额的标准差 | 20日成交额的标准差 |
| ARBR | ARBR | 因子 AR 与因子 BR 的差 |
| money_flow_20 | 20日资金流量 | 用收盘价、最高价及最低价的均值乘以当日成交量即可得到该交易日的资金流量 |
| VEMA5 | 成交量的5日指数移动平均 | |
| VOL240 | 240日平均换手率 | 240日换手率的均值,单位为% |
| VEMA26 | 成交量的26日指数移动平均 | |
| VOSC | 成交量震荡 | 'VEMA12'和'VEMA26'两者的差值,再求差值与'VEMA12'的比,最后将比值放大100倍,得到VOSC值 |
| TVSTD6 | 6日成交金额的标准差 | 6日成交额的标准差 |
风险因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| Variance20 | 20日年化收益方差 | 20日年化收益方差 |
| Skewness20 | 个股收益的20日偏度 | 个股收益的20日偏度 |
| Kurtosis20 | 个股收益的20日峰度 | 个股收益的20日峰度 |
| sharpe_ratio_20 | 20日夏普比率 | (Rp - Rf)/Sigma p 其中,Rp是个股的年化收益率,Rf是无风险利率(在这里设置为0.04),Sigma p是个股的收益波动率(标准差) |
| Variance60 | 60日年化收益方差 | 60日年化收益方差 |
| Skewness60 | 个股收益的60日偏度 | 个股收益的60日偏度 |
| Kurtosis60 | 个股收益的60日峰度 | 个股收益的60日峰度 |
| sharpe_ratio_60 | 60日夏普比率 | (Rp - Rf)/Sigma p 其中,Rp是个股的年化收益率,Rf是无风险利率(在这里设置为0.04),Sigma p是个股的收益波动率(标准差) |
| Variance120 | 120日年化收益方差 | 120日年化收益方差 |
| Skewness120 | 个股收益的120日偏度 | 个股收益的120日偏度 |
| Kurtosis120 | 个股收益的120日峰度 | 个股收益的120日峰度 |
| sharpe_ratio_120 | 120日夏普比率 | (Rp - Rf)/Sigma p 其中,Rp是个股的年化收益率,Rf是无风险利率(在这里设置为0.04),Sigma p是个股的收益波动率(标准差) |
动量因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| arron_up_25 | Aroon指标上轨 | Aroon(上升)=[(计算期天数-最高价后的天数)/计算期天数]*100 |
| arron_down_25 | Aroon指标下轨 | Aroon(下降)=[(计算期天数-最低价后的天数)/计算期天数]*100 |
| BBIC | BBI 动量 | BBI(3, 6, 12, 24) / 收盘价 (BBI 为常用技术指标类因子“多空均线”) |
| bear_power | 空头力道 | (最低价-EMA(close,13)) / close |
| BIAS5 | 5日乖离率 | (收盘价-收盘价的N日简单平均)/ 收盘价的N日简单平均*100,在此n取5 |
| BIAS10 | 10日乖离率 | (收盘价-收盘价的N日简单平均)/ 收盘价的N日简单平均*100,在此n取10 |
| BIAS20 | 20日乖离率 | (收盘价-收盘价的N日简单平均)/ 收盘价的N日简单平均*100,在此n取20 |
| BIAS60 | 60日乖离率 | (收盘价-收盘价的N日简单平均)/ 收盘价的N日简单平均*100,在此n取60 |
| bull_power | 多头力道 | (最高价-EMA(close,13)) / close |
| CCI10 | 10日顺势指标 | CCI:=(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N)); TYP:=(HIGH+LOW+CLOSE)/3; N:=10 |
| CCI15 | 15日顺势指标 | CCI:=(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N)); TYP:=(HIGH+LOW+CLOSE)/3; N:=15 |
| CCI20 | 20日顺势指标 | CCI:=(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N)); TYP:=(HIGH+LOW+CLOSE)/3; N:=20 |
| CCI88 | 88日顺势指标 | CCI:=(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N)); TYP:=(HIGH+LOW+CLOSE)/3; N:=88 |
| CR20 | CR指标 | ①中间价=1日前的最高价+最低价/2②上升值=今天的最高价-前一日的中间价(负值记0)③下跌值=前一日的中间价-今天的最低价(负值记0)④多方强度=20天的上升值的和,空方强度=20天的下跌值的和⑤CR=(多方强度÷空方强度)×100 |
| fifty_two_week_close_rank | 当前价格处于过去1年股价的位置 | 取过去的250个交易日各股的收盘价时间序列,每只股票按照从大到小排列,并找出当日所在的位置 |
| MASS | 梅斯线 | MASS(N1=9, N2=25, M=6) |
| PLRC12 | 12日收盘价格与日期线性回归系数 | 计算 12 日收盘价格,与日期序号(1-12)的线性回归系数,(close / mean(close)) = beta * t + alpha |
| PLRC24 | 24日收盘价格与日期线性回归系数 | 计算 24 日收盘价格,与日期序号(1-24)的线性回归系数, (close / mean(close)) = beta * t + alpha |
| PLRC6 | 6日收盘价格与日期线性回归系数 | 计算 6 日收盘价格,与日期序号(1-6)的线性回归系数,(close / mean(close)) = beta * t + alpha |
| Price1M | 当前股价除以过去一个月股价均值再减1 | 当日收盘价 / mean(过去一个月(21天)的收盘价) -1 |
| Price3M | 当前股价除以过去三个月股价均值再减1 | 当日收盘价 / mean(过去三个月(61天)的收盘价) -1 |
| Price1Y | 当前股价除以过去一年股价均值再减1 | 当日收盘价 / mean(过去一年(250天)的收盘价) -1 |
| Rank1M | 1减去 过去一个月收益率排名与股票总数的比值 | 1-(Rank(个股20日收益) / 股票总数) |
| ROC12 | 12日变动速率(Price Rate of Change) | ①AX=今天的收盘价—12天前的收盘价②BX=12天前的收盘价③ROC=AX/BX*100 |
| ROC120 | 120日变动速率(Price Rate of Change) | ①AX=今天的收盘价—120天前的收盘价②BX=120天前的收盘价③ROC=AX/BX*100 |
| ROC20 | 20日变动速率(Price Rate of Change) | ①AX=今天的收盘价—20天前的收盘价②BX=20天前的收盘价③ROC=AX/BX*100 |
| ROC6 | 6日变动速率(Price Rate of Change) | ①AX=今天的收盘价—6天前的收盘价②BX=6天前的收盘价③ROC=AX/BX*100 |
| ROC60 | 60日变动速率(Price Rate of Change) | ①AX=今天的收盘价—60天前的收盘价②BX=60天前的收盘价③ROC=AX/BX*100 |
| single_day_VPT | 单日价量趋势 | (今日收盘价 - 昨日收盘价)/ 昨日收盘价 * 当日成交量 # (复权方法为基于当日前复权) |
| single_day_VPT_12 | 单日价量趋势12均值 | MA(single_day_VPT, 12) |
| single_day_VPT_6 | 单日价量趋势6日均值 | MA(single_day_VPT, 6) |
| TRIX10 | 10日终极指标TRIX | MTR=收盘价的10日指数移动平均的10日指数移动平均的10日指数移动平均;TRIX=(MTR-1日前的MTR)/1日前的MTR*100 |
| TRIX5 | 5日终极指标TRIX | MTR=收盘价的5日指数移动平均的10日指数移动平均的5日指数移动平均;TRIX=(MTR-1日前的MTR)/1日前的MTR*100 |
| Volume1M | 当前交易量相比过去1个月日均交易量 与过去过去20日日均收益率乘积 | 当日交易量 / 过去20日交易量MEAN * 过去20日收益率MEAN |
技术因子
| 因子 code | 因子名称 | 计算方法 |
|---|---|---|
| boll_down | 下轨线(布林线)指标 | (MA(CLOSE,M)-2*STD(CLOSE,M)) / 今日收盘价; M=20 |
| boll_up | 上轨线(布林线)指标 | (MA(CLOSE,M)+2*STD(CLOSE,M)) / 今日收盘价; M=20 |
| EMA5 | 5日指数移动均线 | 5日指数移动均线 / 今日收盘价 |
| EMAC10 | 10日指数移动均线 | 10日指数移动均线 / 今日收盘价 |
| EMAC12 | 12日指数移动均线 | 12日指数移动均线 / 今日收盘价 |
| EMAC20 | 20日指数移动均线 | 20日指数移动均线 / 今日收盘价 |
| EMAC26 | 26日指数移动均线 | 26日指数移动均线 / 今日收盘价 |
| EMAC120 | 120日指数移动均线 | 120日指数移动均线 / 今日收盘价 |
| MAC5 | 5日移动均线 | 5日移动均线 / 今日收盘价 |
| MAC10 | 10日移动均线 | 10日移动均线 / 今日收盘价 |
| MAC20 | 20日移动均线 | 20日移动均线 / 今日收盘价 |
| MAC60 | 60日移动均线 | 60日移动均线 / 今日收盘价 |
| MAC120 | 120日移动均线 | 120日移动均线 / 今日收盘价 |
| MACDC | 平滑异同移动平均线 | MACD(SHORT=12, LONG=26, MID=9) / 今日收盘价 |
| MFI14 | 资金流量指标 | ①求得典型价格(当日最高价,最低价和收盘价的均值)②根据典型价格高低判定正负向资金流(资金流=典型价格*成交量)③计算MR= 正向/负向 ④MFI=100-100/(1+MR) |
风格因子
进行了去极值和标准化的处理
| 因子 code | 因子名称 | 简介 |
|---|---|---|
| size | 市值 | 捕捉大盘股和小盘股之间的收益差异 |
| beta | 贝塔 | 表征股票相对于市场的波动敏感度 |
| momentum | 动量 | 描述了过去两年里相对强势的股票与弱势股票之间的差异 |
| residual_volatility | 残差波动率 | 解释了剥离了市场风险后的波动率高低产生的收益率差异 |
| non_linear_size | 非线性市值 | 描述了无法由规模因子解释的但与规模有关的收益差异,通常代表中盘股 |
| book_to_price_ratio | 账面市值比 | 描述了股票估值高低不同而产生的收益差异, 即价值因子 |
| liquidity | 流动性 | 解释了由股票相对的交易活跃度不同而产生的收益率差异 |
| earnings_yield | 盈利能力 | 描述了由盈利收益导致的收益差异 |
| growth | 成长 | 描述了对销售或盈利增长预期不同而产生的收益差异 |
| leverage | 杠杆 | 描述了高杠杆股票与低杠杆股票之间的收益差异 |
除了上面的风格因子,在计算风格因子过程中的描述因子daily_standard_deviation、cumulative_range等也可以通过get_factor_values、get_all_factors以及get_factor_kanban_values获取;描述因子是原始值,没有进行数据处理。
市值因子 size
贝塔因子 beta
动量因子 momentum
残差波动率因子 residual_volatility
非线性市值因子 non_linear_size
账面市值比因子 book_to_price_ratio
流动性因子 liquidity
盈利能力因子 earnings_yield
成长因子 growth
杠杆因子 leverage
对描述因子和风格因子的数据分别进行正规化的处理,步骤如下:
行业因子
因子来源: 根据 WorldQuant LLC 发表的论文 101 Formulaic Alphas 中给出的 101 个 Alphas 因子公式,我们将公式编写成了函数,并计算出自2005年以来的动态前复权因子值,方便大家使用。
详细介绍: 函数计算公式、API 调用方法,输入输出值详情请见:数据 - Alpha 101.
购买:用户如有需要使用Alpha101和Alpha191因子的,请联系我们的运营同事。个人用户咨询【邮箱:sunping@joinquant.com】,机构服务咨询添加微信号JQData02
使用方法:
# 导入 Alpha101 库
from jqdatasdk.alpha101 import *
# 获取沪深300成分股的 alpha_001 因子值
a = alpha_001('2019-11-19','000300.XSHG')
# 查看前5行的因子值
print(a.head())
000001.XSHE -0.175115
000002.XSHE 0.174980
000063.XSHE -0.323537
000069.XSHE 0.174980
000100.XSHE -0.323537
dtype: float64
# 查看平安银行的因子值
print(a['000001.XSHE'])
-0.17511459
# 获取所有股票 alpha_007 的因子值
a = alpha_007('2014-10-22')
因子来源: 根据国泰君安数量化专题研究报告 - 基于短周期价量特征的多因子选股体系给出了 191 个短周期交易型阿尔法因子。为了方便用户快速调用,我们将所有Alpha191因子基于股票的动态前复权价格做了完整的计算。
详细介绍: 函数计算公式、API 调用方法,输入输出值详情请见:数据 - Alpha 191.
使用方法(以Alpha001因子为例):
# 导入 Alpha191 库
from jqdatasdk import alpha191
#获取alpha001因子值
alpha191.alpha_001(code, end_date=None,fq='pre')
输入:
code:股票代码列表
end_date: 计算哪一天的因子 ,默认为None也就是最近一交易日的日期;数据类型为str或者datetime.date
fq: 复权选项:只支持 'pre', 动态前复权(所有Alpha191因子基于股票的动态复权价格已经做了完整的计算。)
输出:
因子公式:
示例:
#获取平安银行2019年4月24日按照动态前复权价格计算的Alpha002的因子值
from jqdatasdk import alpha191
a = alpha191.alpha_002('000001.XSHE','2019-04-24')
a
000001.XSHE -0.403162
Name: 2019-04-24 00:00:00, dtype: float64
详细介绍:函数计算公式、API 调用方法,用法注释, 输入输出值详情请见:数据 - 技术分析指标.
购买:用户如有需要使用技术指标因子的,请联系我们的运营同事。个人用户咨询【邮箱:sunping@joinquant.com】,机构服务咨询添加微信号JQData02
示例:
# 导入技术分析指标库
from jqdatasdk.technical_analysis import *
# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 GDX 值,分别返回:济安线、压力线和支撑线的值。
gdx_jax, gdx_ylx, gdx_zcx = GDX(security_list1,check_date='2017-01-04', N = 30, M = 9,fq_ref_date=None)
print (gdx_jax[security_list1])
print (gdx_ylx[security_list1])
print (gdx_zcx[security_list1])
# 输出 security_list2 的 GDX 值
gdx_jax, gdx_ylx, gdx_zcx = GDX(security_list2,check_date='2017-01-04', N = 30, M = 9,fq_ref_date='2017-01-04')
for stock in security_list2:
print (gdx_jax[stock])
print (gdx_ylx[stock])
print (gdx_zcx[stock])
# 查询函数说明
>>> GDX?
Signature: GDX(security_list, check_date, N=30, M=9)
Docstring:
计算公式:
AA:=ABS((2*CLOSE+HIGH+LOW)/4-MA(CLOSE,N))/MA(CLOSE,N);
JAX:DMA(CLOSE,AA);
压力线:(1+M/100)*JAX;
支撑线:(1-M/100)*JAX;
AA赋值:(2*收盘价+最高价+最低价)/4-收盘价的N日简单移动平均的绝对值/收盘价的N日简单移动平均
输出济安线 = 以AA为权重收盘价的动态移动平均
输出压力线 = (1+M/100)*JAX
输出支撑线 = (1-M/100)*JAX
输入:
security_list:股票列表
check_date:要查询数据的日期
N:统计的天数 N
M:统计的天数 M
输出:
济安线、压力线和支撑线的值。
输出结果类型:
字典(dict):键(key)为股票代码,值(value)为数据。
提供因子看板及风格因子归因数据
点击跳转因子看板
get_factor_kanban_values(universe='hs300',bt_cycle='month_3',model='long_only',category=['quality','basics','emotion','growth','risk','pershare'],skip_paused=False,commision_slippage=0)
**参数**
- universe:股票池
- 'hs300': 沪深300
- 'zz500': 中证500
- 'zz800': 中证800
- bt_cycle:测试周期
- 'month_3':近三个月
- 'year_1':近一年
- year_3':近三年
- year_10':近十年
- model:组合构建模型
- 'long_only':纯多头组合
- 'long_short':多空组合
- category:分类,具体见[聚宽因子库](https://www.joinquant.com/help/api/help#name:factor_values)
- 'quality': 质量类
- 'basics': 基础类
- 'emotion': 情绪类
- 'growth': 成长类
- 'risk': 风险类
- 'pershare': 每股类
- 'style': 风险因子 - 风格因子
- 'technical': 技术类
- 'momentum': 动量类
- skip_paused: 过滤涨停及停牌股
- False: 否
- True: 是
- commision_slippage: 手续费及滑点
- 0: 无
- 1: 3‱佣金+1‰印花税+无滑点
- 2: 3‱佣金+1‰印花税+1‰滑点
**返回**
pandas.DataFrame 针对 [model - 组合构建模型]选择的不同,返回的结构有所差异
一、long_only - 纯多头组合
- index:自然增长的数字,从0开始,无意义
- column:
- date:数据的更新日期,因子的收益需要下一交易日才可得到 ,因此实际数据的时间比date晚一天(T日收盘后的因子收益需要T+1的收盘价才可得出,数据需要在T+2日凌晨3点计算之后才可得到)
- universe: 股票池
- bt_cycle: 测试周期
- skip_paused: 过滤涨停及停牌股
- commision_slippage: 手续费及滑点
- category: 因子分类
- code:因子代码
- compound_return_1q:一分位数累积收益
- compound_return_5q:五分位数累积收益
- annualized_return_1q:一分位数年化收益率
- annualized_return_5q:五分位数年化收益率
- max_drawdown_1q:一分位数最大回撤
- max_drawdown_5q:五分位数最大回撤
- sharpe_1q:一分位数夏普比率
- sharpe_5q:五分位数夏普比率
- turnover_ratio_1q:一分位数换手率
- turnover_ratio_5q:五分位数换手率
- annual_return_bm:基准指数年化收益率
- ic_mean:IC均值
- ir:IR值
- good_ic:IC绝对值大于0.02的比率
二、long_short - 多空组合
- index:自然增长的数字,从0开始,无意义
- column:
- date:数据的更新日期,因子的收益需要下一交易日才可得到 ,因此实际数据的时间比date晚一天(T日收盘后的因子收益需要T+1的收盘价才可得出,数据需要在T+2日凌晨3点计算之后才可得到)
- universe: 股票池
- bt_cycle: 测试周期
- skip_paused: 过滤涨停及停牌股
- commision_slippage: 手续费及滑点
- category: 因子分类
- code:因子代码
- compound_return_ls:累积收益
- annualized_return_ls:年化收益率
- max_drawdown_ls:最大回撤
- sharpe_ls:夏普比率
- turnover_ratio_ls:换手率
- annual_return_bm:基准指数年化收益率
- ic_mean:IC均值
- ir:IR值
- good_ic:IC绝对值大于0.02的比率
**示例:**from jqdatasdk import *
df = get_factor_kanban_values(universe='hs300',bt_cycle='month_3',model='long_only',category=['quality','basics','emotion','growth','risk','pershare'],skip_paused=False,commision_slippage=0)
print(df.head(5))
>>> date category ... ir good_ic
0 2022-09-22 basics ... -0.174076 0.952381
1 2022-09-22 basics ... -0.114981 0.873016
2 2022-09-22 basics ... -0.052311 0.841270
3 2022-09-22 basics ... -0.041307 0.841270
4 2022-09-22 basics ... -0.015338 0.841270
[5 rows x 21 columns]
get_factor_stats(factor_names=None, universe_type='hs300',
start_date=None, end_date=None, count=None,
skip_paused=False, commision_fee=0.0)
**参数:**
- factor_names : 因子名称,单个因子(字符串)或一个因子列表,支持的因子见[聚宽因子库](https://www.joinquant.com/help/api/help#name:factor_values)
- universe_type : 股票池包括以下五种:
'hs300': 沪深300
'zz500': 中证500
'zz800': 中证800
'zz1000': 中证1000
'zzqz': 中证全指
默认为'hs300'
- start_date : 开始日期,字符串或 datetime 对象
- end_date : 结束日期,字符串或 datetime 对象,可以与 start_date 或 count 配合使用
- count: 截止 end_date 之前交易日的数量(含 end_date 当日)
- skip_paused : 是否跳过停牌,bool,默认为False
- commision_fee : 手续费,float,0.0/0.0008/0.0018, 默认为0.0
**返回:**
- 一个 dict,其中 key 是因子名称,value 是一个 pandas.DataFrame
- DataFrame 的 index 是日期,column 1,2,3,4,5是一分位、二分位、三分位、四分位、五分位累积收益
**示例:** from jqdatasdk import *
data = get_factor_stats(factor_names=['PEG','VSTD20'] , end_date ='2022-09-20',count=5 )
print(data['PEG'])
>>> {'PEG': 1 2 3 4 5
2022-09-14 3.070544 2.847542 2.390142 1.978835 1.331841
2022-09-15 2.994605 2.796805 2.310998 1.938225 1.309742
2022-09-16 2.999703 2.814595 2.308664 1.940463 1.307399
2022-09-19 3.015146 2.813510 2.310971 1.942719 1.310100
2022-09-20 3.010017 2.810997 2.294774 1.920928 1.298267,
'VSTD20': 1 2 3 4 5
2022-09-14 3.963227 2.854103 2.774518 2.034258 1.146730
2022-09-15 3.885976 2.795398 2.719512 1.977875 1.112380
2022-09-16 3.885621 2.785908 2.721697 1.985330 1.110787
2022-09-19 3.886508 2.801825 2.710205 1.986811 1.112331
2022-09-20 3.853822 2.763628 2.694442 1.985192 1.112072}
get_factor_style_returns(factors=None, start_date=None,
end_date=None, count=None,
universe=None, industry='sw_l1')
**参数:**
- factors : 因子名称,单个因子(字符串)或一个因子列表,支持[风格因子](https://www.joinquant.com/help/api/help#factor_values:%E9%A3%8E%E6%A0%BC%E5%9B%A0%E5%AD%90)如"size"及申万/聚宽一级行业如 "801010"和"HY001"
- start_date : 开始日期,字符串或 datetime 对象
- end_date : 结束日期,字符串或 datetime 对象,可以与 start_date 或 count 配合使用
- count: 截止 end_date 之前交易日的数量(含 end_date 当日)
- universe : 市场范围,默认为None代表全市场, 可选 : 'hs300': 沪深300 ; 'zz500': 中证500'; zz800': 中证800; 'zz1000':中证1000; 'zzqz':中证全指
- industry : 行业选取,默认为'sw_l1', 可选 : 'sw_l1':申万一级,'jq_l1':聚宽一级
**返回:**
一个 DataFrame, index 是日期, columns为因子名, 值为因子暴露收益率
**示例:**from jqdatasdk import *
df = get_factor_style_returns(['size','beta','momentum' ] , end_date='2022-09-01',count=2)
print(df)
>>> momentum size beta
2022-08-31 -0.006386 0.005105 -0.004319
2022-09-01 0.001502 -0.002413 -0.002344
get_factor_specific_returns(security, start_date=None, end_date=None, count=None)
**参数:**
- security : 股票代码, 或者股票代码组成的list
- start_date : 开始日期,字符串或 datetime 对象
- end_date : 结束日期,字符串或 datetime 对象,可以与 start_date 或 count 配合使用
- count: 截止 end_date 之前交易日的数量(含 end_date 当日)
**返回:**
- 个股被风格因子无法解释的那部分收益,即特质收益率
**示例:**from jqdatasdk import *
df = get_factor_specific_returns(['000001.XSHE','600000.XSHG'],end_date='2022-09-01',count=5)
print(df)
>>> 000001.XSHE 600000.XSHG
2022-08-26 0.005917 0.004784
2022-08-29 -0.006386 -0.004693
2022-08-30 -0.001301 -0.004310
2022-08-31 0.004911 -0.012619
2022-09-01 -0.003611 -0.001511
活动说明
- 参与方式:高校老师可根据教学安排联系聚宽运营。师生获得高校专属的校园账号
- 金融数据类型包括:中国A股、指数、财务、宏观数据
- 账号试用期:6个月
- 账号有效期内:每日可获取100万条的金融数据
- 账号可获取的时间范围:2005年至今
活动细则
- 金融数据类型包括:中国A股、指数、财务、宏观数据
- 账号试用期:6个月
- 账号有效期内:每日可获取100万条的金融数据
- 账号可获取的时间范围:2005年至今