精华内容
下载资源
问答
  • JQData是什么

    2019-11-22 14:11:28
    JQData是什么 JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经3年沉淀,15万...

    JQData是什么

    JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经3年沉淀,15万宽客及数百家机构投研交易验证。

    使用上,JQData适用Windows、Mac、Linux多种操作系统,支持python2、python3和以及任意编程语言。数据通过简洁的API方式提供,pip即可直接安装使用,挣脱使用束缚,实现更多场景。只需三行代码,即可随取随用~

    JQData提供哪些数据及数据更新频率

    为了满足用户的需求,聚宽数据团队在JQData中不仅提供了全面的基础金融数据,包括沪深A股行情数据,上市公司财务数据,场内基金数据,场外基金数据,指数数据,期货数据,期权数据、债券数据以及宏观经济数据;除此之外,JQData还针对因子数据和特色数据,引进了聚宽因子库,舆情数据,Alpha特色因子,技术分析指标因子,tick数据,助您更好的完成量化研究和投资决策。详细数据清单如下表所示:

    沪深A股行情数据时间范围更新频率
    股票列表数据2005至今8:00更新
    行业概念和指数成分股2005至今8:00更新
    日行情2005至今盘中实时更新(每3s刷新一次)
    分钟行情2005至今盘前9:00更新 盘中实时更新(每3s刷新一次)盘后24:00更新
    集合竞价数据2010年至今交易日最晚9:28分之前更新
    分红拆分送股2005至今8:00更新
    融资融券2010至今下一个交易日10点之前更新
    资金流向2010至今盘后20:00更新
    龙虎榜数据2005至今盘后18:00更新
    限售解禁股2005至今盘后20:00更新
    停复牌、涨跌停数据2005至今盘前9点更新
    沪深市场每日成交概况2005年至今交易日20:30-24:00更新
    沪股通,深股通和港股通(市场通数据)上市至今交易日20:30-06:30更新
    申万一级行业指数日行情数据上市至今交易日17:40更新
    申万一级行业估值数据上市至今交易日17:40更新
    上市公司财务数据时间范围更新频率
    估值数据2005至今交易日18:00-24:00更新
    财务指标2005至今交易日20:30-24:00更新
    资产负债表2005至今交易日20:30-24:00更新
    现金流量表2005至今交易日20:30-24:00更新
    利润表2005至今交易日20:30-24:00更新
    银行专项指标表2005至今交易日20:30-24:00更新
    券商专项指标表2005至今交易日20:30-24:00更新
    保险专项指标表2005至今交易日20:30-24:00更新
    上市公司概况2005年至今交易日20:30-24:00更新
    上市公司股东股本2005年至今交易日20:30-24:00更新
    场内基金数据时间范围更新频率
    场内基金列表数据2005至今8:00更新
    分级基金数据2005至今8:00更新
    日行情2005至今盘中实时更新(每3s刷新一次)
    分钟行情2005至今盘前9:00更新 盘中实时更新(每3s刷新一次)盘后24:00更新
    净值数据2005至今下一个交易日10点之前更新
    融资融券2010至今下一个交易日10点之前更新
    场内基金份额数据2005-02-23至今下一个交易日10点之前更新
    集合竞价数据2019年至今交易日最晚9:28分之前更新
    指数数据时间范围更新频率
    指数列表数据2005至今8:00更新
    指数成分股数据2005至今8:00更新
    日行情2005至今盘中实时更新(每3s刷新一次)
    分钟行情2005至今盘前9:00更新 盘中实时更新(每3s刷新一次)盘后24:00更新
    集合竞价数据2017年至今交易日最晚9:28分之前更新
    国际指数日行情上市至今盘后18:00更新
    期货数据时间范围更新频率
    期货列表数据2005至今8:00更新
    日行情2005至今盘中实时更新(每0.5s刷新一次)
    分钟行情2005至今盘前9:00更新 盘中实时更新(每0.5s刷新一次)盘后24:00更新
    期货主力合约2005至今盘前8:00更新
    期货连续指数2005至今盘前8:00更新
    期货龙虎榜数据2005年至今盘后19:00更新
    期货仓单数据2005年至今盘后20:00更新
    外盘期货日行情数据上市至今盘前09:00更新
    期权数据时间范围更新频率
    期权合约资料上市至今盘后18:00更新
    期权合约调整记录上市至今盘后18:00更新
    期权每日盘前静态文件上市至今盘前9:05日更新
    期权日行情上市至今盘中实时更新,每3s更新一次
    期权分钟行情2017-01-01至今盘中实时更新,每3s更新一次
    集合竞价数据2017年至今交易日最晚9:28分之前更新
    股票期权交易和持仓排名统计上市至今盘前8:05更新
    期权风险指标上市至今盘后19:50更新
    期权行权交收信息上市至今每日10:45更新
    场外基金时间范围更新频率
    基金主体信息上市至今盘后24:00更新
    基金净值信息上市至今盘前9:00更新
    基金持股信息上市至今盘后24:00更新
    基金持仓债券信息上市至今盘后24:00更新
    基金资产组合概况上市至今盘后24:00更新
    基金财务指标信息上市至今盘后24:00更新
    基金收益日报信息上市至今盘后24:00更新
    基金分红拆分合并信息上市至今盘后24: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之前更新
    债券数据时间范围更新频率
    债券基本信息上市至今每日19:00、22:00更新
    债券票面利率上市至今每日19:00、22:00更新
    国债逆回购日行情数据上市至今每日19:00、22:00更新
    舆情数据时间范围更新频率
    雪球热度数据2015年至今每日3:00前更新
    新闻联播文本数据2009年6月至今每日20:30前更新
    聚宽因子库时间范围更新频率
    质量因子2005年至今每日5:00前更新
    基础因子2005年至今每日5:00前更新
    情绪因子2005年至今每日5:00前更新
    成长因子2005年至今每日5:00前更新
    风险因子2005年至今每日5:00前更新
    每股因子2005年至今每日5:00前更新
    Alpha特色因子时间范围更新频率
    Alpha101因子2005至今使用指定日期日行情实时计算
    Alpha191因子2005至今使用指定日期日行情实时计算
    技术指标因子时间范围更新频率
    超买超卖型技术指标2005至今使用指定日期日行情实时计算
    趋势型技术指标2005至今使用指定日期日行情实时计算
    能量型技术指标2005至今使用指定日期日行情实时计算
    成交量型技术指标2005至今使用指定日期日行情实时计算
    均线型技术指标2005至今使用指定日期日行情实时计算
    路径型技术指标2005至今使用指定日期日行情实时计算
    其他2005至今使用指定日期日行情实时计算
    tick快照数据(仅限机构用户)时间范围更新频率
    沪深A股tick数据2010-01-01至今盘中实时更新历史tick
    金融期货和商品期货tick数据2010-01-01至今盘中实时更新历史tick
    50ETF期权tick数据2017-01-01至今盘中实时更新历史tick
    场内基金tick数据2019-01-01至今盘中实时更新历史tick
    指数tick数据2017-01-01至今盘中实时更新历史tick

    说明

    • 有关财务数据更新:一般是这样的情况,譬如财报公布的发布日期是date,实际上一般会在date前一个交易日的晚上发布出来,我们程序也会在date前一天晚上和date这天早上更新财报;
    • 期货结算价更新时间:晚上12点后;

    谁在使用JQData

    聚宽量化平台聚集了国内优秀的量化研究者和金融机构,他们使用聚宽数据生产了上百万的优质策略,如果你对量化感兴趣,很快你也能成为其中的一员。他们是:

    • 金融机构:聚宽的机构用户遍布国内主要券商,公募基金和私募基金
    • 研究人员:券商研究所,高校老师都是聚宽数据的深度用户
    • 在校学生:无论是985还是211,这些学校的学生都在使用聚宽的数据
    • 量化研究者:数十万计的量化研究者

    为什么选择JQData

    为什么JQData能受到如此众多用户的青睐?原因是聚宽数据从一开始就是为量化而生,本地使用,易于量化,调用方便,数据精度高,基础数据全部免费这是JQData区别于国内其他量化平台的最主要特点,相信您在使用过程中能有更深切的体会。具体来说:

    • 本地使用:JQData避免了各个量化平台的限制,适用于Windows,Mac,Linux多种操作系统,用户只需三行Python代码即可完成本地安装和调用,帮助您实现一整套本地化部署的量化投资研究。(支持Python2和Python3,新增HTTP版本支持任意编程语言。)

    • 易于量化:为了避免用户在指定日期获取到未来的数据,JQData在设计过程中,提供了指定日期参数,在该日期用户获取的是截止到该日期市场上已公布的数据,从而避免用户提前获取未来数据的上帝视角。

    • 调用方便:在JQData里,不同品种同一属性的数据用同一个接口就能获取,例如,使用get_price就能获取所有股票,基金,指数,期货的行情数据,从而大大减少用户的学习成本,代码也更加简洁;与之相反,大部分传统数据商提供的数据分散在不同的数据表中,需要用户自己来回查找。

    • 数据精度高:JQData的历史行情提供日行情和分钟行情,更精确的还有tick行情,而大部分量化平台最多提供到日行情这种精度。

    • 基础数据免费试用:为了让更多的用户使用上优质的金融数据,生产出更多的量化研究成果,JQData对基础数据全部免费开放试用,JQData的基础数据包含沪深A股行情数据,上市公司财务数据,指数数据,场内基金数据,期货数据和宏观经济数据;相比之下,大部分数据平台提供的本地化数据少则几万,多则十几万,费用高企让大部分量化研究者望而却步。

    • 因子数据和特色数据:除基础数据外,我们还特别提供了Alpha特色因子,技术指标因子,tick数据以及百度搜索因子,让您在投资研究中加入更多的数据维度。

    如何开通JQData

    申请试用账号: 聚宽作为国内量化行业的领军企业,本着推动量化行业快速发展的良好愿景,现已开放试用JQData。想要使用JQData的用户只需提交试用申请,就能开通JQData一年有效期的试用账号。试用账号在试用期间可免费调用JQData的全部基础数据,每天可调用100万条,具体试用权限如下表所示。(注:JQData基础数据包含沪深A股行情数据,上市公司财务数据,指数数据,场内基金数据,期货数据和宏观经济数据

    账户类型试用账户(免费)
    账户有效期1年
    可用数据全部基础数据
    可查询数据时间范围2005年至今
    每天调用数据限制100万条/天
    单个账号可同时开启连接数3个
    因子和特色数据

    开通正式账号: 如果您觉得每天100万条的数据不够用,或者想要使用诸如Alpha特色因子,技术指标因子,tick数据以及百度因子等聚宽的特色数据,可以升级到JQData正式版、标准版或专业版,升级后每天可调用2亿条数据,详情请与我们的运营人员联系。正式账号享有的权益如下表所示。(联系方式:添加管理员微信 JQData02;或发送邮箱至:jqdatasdk@joinquant.com

    账户权益权益说明正式版标准版因子礼包专业版
    账户有效期按年付费
    数据时间范围2005年至今
    每天调用数据限制2亿条/天
    单个账号可同时开启连接数3个
    可用数据全部基础数据
     Alpha101  
     Alpha191  
     聚宽因子库 
     技术指标因子  
     沪深A股tick数据   
     期货tick数据   
     50ETF期权tick数据   
     场内基金tick数据   

    如何安装使用JQData

    开通权限后,您可以在本地安装和使用JQData。Python用户请按以下教程安装使用,其他编程语言用户请查看JQData HTTP接口文档如在使用中遇到问题,还可以添加JQData管理员微信咨询,微信号:jqdata02,添加时请留言"JQData"。

    • 安装JQData: 如您本地已有python环境,打开本地cmd终端或Mac终端,将路径切换到python目录下,直接使用pip语法即可安装。在安装中出现任何问题,可查看JQData安装教程,内有详细解答。

      pip install jqdatasdk
      

      如您是windows用户:可以直接下载JQData高校版,一键完成安装。本方式不需另外配置python环境,直接在本地创建一套包含JQData的独立python环境,点击查看高校版安装教程

    • 升级JQData:JQData预计每2周会发布一次迭代版本,增加更多维度的基础数据以及因子类数据,已有python环境的用户可以使用如下语句完成升级:

      pip install -U jqdatasdk
      

      windows用户可以直接点击新版本链接下载安装。或打开cmd终端,切换到JQData所在路径下,通过下述语句升级到最新版本。

      C:\JQData>python.exe -m pip install jqdatasdk
      
    • 登录JQData:安装完成后,导入JQData,并认证用户身份。认证完毕显示“auth success”后即可使用,认证步骤如下:

      from jqdatasdk import *
      auth('账号','密码') #账号是申请时所填写的手机号;密码为聚宽官网登录密码,新申请用户默认为手机号后6位
      
    • 调用数据:详见数据调用方法

    • 每天可访问数据条数:由于用户访问数据会给服务器造成一定的压力,JQData开放给试用账号的每天可访问数据为100万条,基本上能够满足大部分用户的需要;如需更多的访问条数,您可以付费升级为正式账号,我们将为您开放每天2亿条数据的访问权限

    • 因子数据和特色数据:如果您还想使用Alpha特色因子,技术指标因子,tick数据以及百度因子数据,您可以将账号升级到正式版、标准版或专业版,详情请联系我们的运营同事。我们会为您提供定制化的JQData,尽可能满足您的数据需求。如需咨询,请添加管理员微信:JQData02 ;或发送邮箱至:jqdatasdk@joinquant.com。

    • 问题反馈和其他数据需求:如果您在使用JQData的过程中遇到问题,或者希望JQData能够加入更多的数据,请您通过社区提问的方式或者发送邮件至jqdatasdk@joinquant.com告诉我们。另外,为了增进用户之间的交流,我们还提供了JQData微信讨论组,想要加入讨论的用户可以添加JQData管理员,和我们一起更好的完善和使用JQData。(管理员微信号:JQData02,添加时请留言"JQData"。)

    商务合作

    聚宽作为国内领先的量化平台,欢迎数据行业的各位同仁,和我们共同构建起一整套领先的量化分析数据体系,如贵公司有这方面的数据资源和合作意向,请添加管理员微信:JQData02,或发送邮件至jqdatasdk@joinquant.com说明合作意向,欢迎加入聚宽JQData。

    版本信息

    V1.6.4 2019.05.24

    新增数据: 1.场内基金份额数据 2.融资融券汇总数据

    V1.6.4 2019.05.14

    新增数据: 聚宽因子库新增【Barra因子】数据

    V1.6.3 2019.04.30

    新增数据: 1.债券基本信息 2.债券票面利率 3.国债逆回购日行情数据

    V1.6.2 2019.03.19

    新增函数: get_all_factors-获取聚宽因子库所有因子代码、因子名称等信息

    V1.6.1 2019.03.19

    新增数据: 1.申万一级行业指数日行情数据 2.申万一级行业指数估值数据

    V1.6.1 2019.03.03

    新增数据: 沪深港通持股数据

    V1.6.0 2019.02.28

    新增功能: 不限任何编程语言的JQData HTTP接口上线,说明文档:https://dataapi.joinquant.com/docs

    V1.5.6 2019.02.02

    新增数据: 新闻联播文本数据

    V1.5.0 2018.12.06

    新增数据: 1.期权数据 2.场外基金 3.聚宽因子库 4.期货龙虎榜和仓单信息 5.雪球热度数据

    V1.4.4 2018.6.15

    新增数据: 上市公司概况 上市公司股东和股本信息

    关于JQData、jqdatasdk和jqdata

    (1)JQData是聚宽数据出品的本地量化数据接口,用户在本地环境使用时需要引入jqdatasdk包,输入import jqdatasdk或from jqdatasdk import * ,进一步再输入auth('ID','PASSWORD')验证账号和密码后,就能开始调用jqdatasdk包所包含的全品种量化金融数据了。具体方法详见下面的数据调用方法。
    (2)jqdata是在官网及客户端调用数据时需要引用的包,import jqdata 或 from jqdata import *,具体使用方法见官网API:https://www.joinquant.com/help/api/help?name=api
    (3)jqdata和jqdatasdk中的数据略有不同,主要区别在于jqdatasdk目前不支持聚源数据,而官网和客户端可以输入from jqdata import jy调用聚源数据 。

    展开全文
  • 本示例主要股票信息,日线行情信息与市值数据信息的本地化 ...--创建数据库 jqdata CREATE SCHEMA `jqdata` COMMENT CHARACTER SET utf8mb4 ; --创建用户 jqdata CREATE USER 'jqdata'@'%' IDENTIFI

    (转自:https://www.joinquant.com/view/community/detail/21024)
    本示例主要股票信息,日线行情信息与市值数据信息的本地化
    日线行情信息进行了分表,将res按股票代码切分为5个res分别存入5张表中
    首先 创建Mysql数据

    --创建数据库 jqdata
    CREATE SCHEMA `jqdata` COMMENT CHARACTER SET utf8mb4 ;
    
    --创建用户 jqdata
    CREATE USER 'jqdata'@'%' IDENTIFIED BY 'jqdata';
    
    grant all privileges on jqdata.* to 'jqdata'@'%' IDENTIFIED BY 'jqdata'
    
    flush privileges;
    
    --股票信息表
    CREATE TABLE `jqdata`.`t_all_securities` (
      `security` VARCHAR(20) NOT NULL COMMENT '股票代码',
      `display_name` VARCHAR(20) NULL COMMENT '中文名称',
      `name` VARCHAR(50) NULL COMMENT '缩写简称',
      `start_date` DATE NULL COMMENT '上市日期',
      `end_date` DATE NULL COMMENT '退市日期,如果没有退市则为2200-01-01',
      PRIMARY KEY (`security`))
    COMMENT = '所有股票信息';
    
    
    --日线行情数据:
    --分表规则:股票代码模5取余x
    --表名 t_kline_day_x
    --索引 股票代码,日期
    CREATE TABLE `jqdata`.`t_kline_day_0` (
      `security` VARCHAR(20) NOT NULL COMMENT '股票代码',
      `kday` DATE NOT NULL COMMENT '日期',
      `open` DECIMAL(10,2) NULL COMMENT '时间段开始时价格',
      `close` DECIMAL(10,2) NULL COMMENT '时间段结束时价格',
      `low` DECIMAL(10,2) NULL COMMENT '最低价',
      `high` DECIMAL(10,2) NULL COMMENT '最高价',
      `volume` BIGINT NULL COMMENT '成交的股票数量',
      `money` DECIMAL(20,2) NULL COMMENT '成交的金额',
      `factor` DECIMAL(15,8) NULL COMMENT '前复权因子, 我们提供的价格都是前复权后的, 但是利用这个值可以算出原始价格, 方法是价格除以factor, 比如: close/factor',
      `high_limit` DECIMAL(10,2) NULL COMMENT '涨停价',
      `low_limit` DECIMAL(10,2) NULL COMMENT '跌停价',
      `avg` DECIMAL(10,2) NULL COMMENT '这段时间的平均价, 等于money/volume',
      `pre_close` DECIMAL(10,2) NULL COMMENT '前一个单位时间结束时的价格, 按天则是前一天的收盘价, 按分钟这是前一分钟的结束价格',
      `paused` TINYINT NULL COMMENT '布尔值, 这只股票是否停牌, 停牌时open/close/low/high/pre_close依然有值,都等于停牌前的收盘价, volume=money=0',
      PRIMARY KEY (`security`, `kday`))
    COMMENT = '日线行情数据——股票代码模5余0';
    
    CREATE TABLE `jqdata`.`t_kline_day_1` (
      `security` VARCHAR(20) NOT NULL COMMENT '股票代码',
      `kday` DATE NOT NULL COMMENT '日期',
      `open` DECIMAL(10,2) NULL COMMENT '时间段开始时价格',
      `close` DECIMAL(10,2) NULL COMMENT '时间段结束时价格',
      `low` DECIMAL(10,2) NULL COMMENT '最低价',
      `high` DECIMAL(10,2) NULL COMMENT '最高价',
      `volume` BIGINT NULL COMMENT '成交的股票数量',
      `money` DECIMAL(20,2) NULL COMMENT '成交的金额',
      `factor` DECIMAL(15,8) NULL COMMENT '前复权因子, 我们提供的价格都是前复权后的, 但是利用这个值可以算出原始价格, 方法是价格除以factor, 比如: close/factor',
      `high_limit` DECIMAL(10,2) NULL COMMENT '涨停价',
      `low_limit` DECIMAL(10,2) NULL COMMENT '跌停价',
      `avg` DECIMAL(10,2) NULL COMMENT '这段时间的平均价, 等于money/volume',
      `pre_close` DECIMAL(10,2) NULL COMMENT '前一个单位时间结束时的价格, 按天则是前一天的收盘价, 按分钟这是前一分钟的结束价格',
      `paused` TINYINT NULL COMMENT '布尔值, 这只股票是否停牌, 停牌时open/close/low/high/pre_close依然有值,都等于停牌前的收盘价, volume=money=0',
      PRIMARY KEY (`security`, `kday`))
    COMMENT = '日线行情数据——股票代码模5余1';
    
    CREATE TABLE `jqdata`.`t_kline_day_2` (
      `security` VARCHAR(20) NOT NULL COMMENT '股票代码',
      `kday` DATE NOT NULL COMMENT '日期',
      `open` DECIMAL(10,2) NULL COMMENT '时间段开始时价格',
      `close` DECIMAL(10,2) NULL COMMENT '时间段结束时价格',
      `low` DECIMAL(10,2) NULL COMMENT '最低价',
      `high` DECIMAL(10,2) NULL COMMENT '最高价',
      `volume` BIGINT NULL COMMENT '成交的股票数量',
      `money` DECIMAL(20,2) NULL COMMENT '成交的金额',
      `factor` DECIMAL(15,8) NULL COMMENT '前复权因子, 我们提供的价格都是前复权后的, 但是利用这个值可以算出原始价格, 方法是价格除以factor, 比如: close/factor',
      `high_limit` DECIMAL(10,2) NULL COMMENT '涨停价',
      `low_limit` DECIMAL(10,2) NULL COMMENT '跌停价',
      `avg` DECIMAL(10,2) NULL COMMENT '这段时间的平均价, 等于money/volume',
      `pre_close` DECIMAL(10,2) NULL COMMENT '前一个单位时间结束时的价格, 按天则是前一天的收盘价, 按分钟这是前一分钟的结束价格',
      `paused` TINYINT NULL COMMENT '布尔值, 这只股票是否停牌, 停牌时open/close/low/high/pre_close依然有值,都等于停牌前的收盘价, volume=money=0',
      PRIMARY KEY (`security`, `kday`))
    COMMENT = '日线行情数据——股票代码模5余2';
    
    CREATE TABLE `jqdata`.`t_kline_day_3` (
      `security` VARCHAR(20) NOT NULL COMMENT '股票代码',
      `kday` DATE NOT NULL COMMENT '日期',
      `open` DECIMAL(10,2) NULL COMMENT '时间段开始时价格',
      `close` DECIMAL(10,2) NULL COMMENT '时间段结束时价格',
      `low` DECIMAL(10,2) NULL COMMENT '最低价',
      `high` DECIMAL(10,2) NULL COMMENT '最高价',
      `volume` BIGINT NULL COMMENT '成交的股票数量',
      `money` DECIMAL(20,2) NULL COMMENT '成交的金额',
      `factor` DECIMAL(15,8) NULL COMMENT '前复权因子, 我们提供的价格都是前复权后的, 但是利用这个值可以算出原始价格, 方法是价格除以factor, 比如: close/factor',
      `high_limit` DECIMAL(10,2) NULL COMMENT '涨停价',
      `low_limit` DECIMAL(10,2) NULL COMMENT '跌停价',
      `avg` DECIMAL(10,2) NULL COMMENT '这段时间的平均价, 等于money/volume',
      `pre_close` DECIMAL(10,2) NULL COMMENT '前一个单位时间结束时的价格, 按天则是前一天的收盘价, 按分钟这是前一分钟的结束价格',
      `paused` TINYINT NULL COMMENT '布尔值, 这只股票是否停牌, 停牌时open/close/low/high/pre_close依然有值,都等于停牌前的收盘价, volume=money=0',
      PRIMARY KEY (`security`, `kday`))
    COMMENT = '日线行情数据——股票代码模5余3';
    
    CREATE TABLE `jqdata`.`t_kline_day_4` (
      `security` VARCHAR(20) NOT NULL COMMENT '股票代码',
      `kday` DATE NOT NULL COMMENT '日期',
      `open` DECIMAL(10,2) NULL COMMENT '时间段开始时价格',
      `close` DECIMAL(10,2) NULL COMMENT '时间段结束时价格',
      `low` DECIMAL(10,2) NULL COMMENT '最低价',
      `high` DECIMAL(10,2) NULL COMMENT '最高价',
      `volume` BIGINT NULL COMMENT '成交的股票数量',
      `money` DECIMAL(20,2) NULL COMMENT '成交的金额',
      `factor` DECIMAL(15,8) NULL COMMENT '前复权因子, 我们提供的价格都是前复权后的, 但是利用这个值可以算出原始价格, 方法是价格除以factor, 比如: close/factor',
      `high_limit` DECIMAL(10,2) NULL COMMENT '涨停价',
      `low_limit` DECIMAL(10,2) NULL COMMENT '跌停价',
      `avg` DECIMAL(10,2) NULL COMMENT '这段时间的平均价, 等于money/volume',
      `pre_close` DECIMAL(10,2) NULL COMMENT '前一个单位时间结束时的价格, 按天则是前一天的收盘价, 按分钟这是前一分钟的结束价格',
      `paused` TINYINT NULL COMMENT '布尔值, 这只股票是否停牌, 停牌时open/close/low/high/pre_close依然有值,都等于停牌前的收盘价, volume=money=0',
      PRIMARY KEY (`security`, `kday`))
    COMMENT = '日线行情数据——股票代码模5余4';
    
    
    CREATE TABLE `jqdata`.`t_valuation_0` (
      `code` VARCHAR(20) NOT NULL COMMENT '股票代码  带后缀.XSHE/.XSHG',
      `day` DATE NOT NULL COMMENT '取数据的日期',
      `capitalization` DECIMAL(20,4) NULL COMMENT '总股本(万股)     公司已发行的普通股股份总数(包含A股,B股和H股的总股本)',
      `circulating_cap` DECIMAL(20,4) NULL COMMENT '流通股本(万股)     公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本)',
      `market_cap` DECIMAL(20,10) NULL COMMENT '总市值(亿元)     A股收盘价*已发行股票总股本(A股+B股+H股)',
      `circulating_market_cap` DECIMAL(20,10) NULL COMMENT '流通市值(亿元)     流通市值指在某特定时间内当时可交易的流通股股数乘以当时股价得出的流通股票总价值。     A股市场的收盘价*A股市场的流通股数',
      `turnover_ratio` DECIMAL(10,4) NULL COMMENT '换手率(%)     指在一定时间内市场中股票转手买卖的频率,是反映股票流通性强弱的指标之一。     换手率=[指定交易日成交量(手)100/截至该日股票的自由流通股本(股)]100%',
      `pe_ratio` DECIMAL(15,4) NULL COMMENT '市盈率(PE, TTM)     每股市价为每股收益的倍数,反映投资人对每元净利润所愿支付的价格,用来估计股票的投资报酬和风险     市盈率(PE,TTM)=(股票在指定交易日期的收盘价 * 当日人民币外汇挂牌价 * 截止当日公司总股本)/归属于母公司股东的净利润TTM。',
      `pe_ratio_lyr` DECIMAL(15,4) NULL COMMENT '以上一年度每股盈利计算的静态市盈率. 股价/最近年度报告EPS     市盈率(PE)=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的净利润。',
      `pb_ratio` DECIMAL(15,4) NULL COMMENT '市净率(PB)     每股股价与每股净资产的比率     市净率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的权益。',
      `ps_ratio` DECIMAL(15,4) NULL COMMENT '市销率(PS, TTM)     市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。     市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM',
      `pcf_ratio` DECIMAL(15,4) NULL COMMENT '市现率(PCF, 现金净流量TTM)     每股市价为每股现金净流量的倍数     市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM',
      PRIMARY KEY (`code`, `day`))
    COMMENT = '市值数据-股票代码模5余0';
    
    CREATE TABLE `jqdata`.`t_valuation_1` (
      `code` VARCHAR(20) NOT NULL COMMENT '股票代码  带后缀.XSHE/.XSHG',
      `day` DATE NOT NULL COMMENT '取数据的日期',
      `capitalization` DECIMAL(20,4) NULL COMMENT '总股本(万股)     公司已发行的普通股股份总数(包含A股,B股和H股的总股本)',
      `circulating_cap` DECIMAL(20,4) NULL COMMENT '流通股本(万股)     公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本)',
      `market_cap` DECIMAL(20,10) NULL COMMENT '总市值(亿元)     A股收盘价*已发行股票总股本(A股+B股+H股)',
      `circulating_market_cap` DECIMAL(20,10) NULL COMMENT '流通市值(亿元)     流通市值指在某特定时间内当时可交易的流通股股数乘以当时股价得出的流通股票总价值。     A股市场的收盘价*A股市场的流通股数',
      `turnover_ratio` DECIMAL(10,4) NULL COMMENT '换手率(%)     指在一定时间内市场中股票转手买卖的频率,是反映股票流通性强弱的指标之一。     换手率=[指定交易日成交量(手)100/截至该日股票的自由流通股本(股)]100%',
      `pe_ratio` DECIMAL(15,4) NULL COMMENT '市盈率(PE, TTM)     每股市价为每股收益的倍数,反映投资人对每元净利润所愿支付的价格,用来估计股票的投资报酬和风险     市盈率(PE,TTM)=(股票在指定交易日期的收盘价 * 当日人民币外汇挂牌价 * 截止当日公司总股本)/归属于母公司股东的净利润TTM。',
      `pe_ratio_lyr` DECIMAL(15,4) NULL COMMENT '以上一年度每股盈利计算的静态市盈率. 股价/最近年度报告EPS     市盈率(PE)=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的净利润。',
      `pb_ratio` DECIMAL(15,4) NULL COMMENT '市净率(PB)     每股股价与每股净资产的比率     市净率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的权益。',
      `ps_ratio` DECIMAL(15,4) NULL COMMENT '市销率(PS, TTM)     市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。     市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM',
      `pcf_ratio` DECIMAL(15,4) NULL COMMENT '市现率(PCF, 现金净流量TTM)     每股市价为每股现金净流量的倍数     市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM',
      PRIMARY KEY (`code`, `day`))
    COMMENT = '市值数据-股票代码模5余1';
    
    CREATE TABLE `jqdata`.`t_valuation_2` (
      `code` VARCHAR(20) NOT NULL COMMENT '股票代码  带后缀.XSHE/.XSHG',
      `day` DATE NOT NULL COMMENT '取数据的日期',
      `capitalization` DECIMAL(20,4) NULL COMMENT '总股本(万股)     公司已发行的普通股股份总数(包含A股,B股和H股的总股本)',
      `circulating_cap` DECIMAL(20,4) NULL COMMENT '流通股本(万股)     公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本)',
      `market_cap` DECIMAL(20,10) NULL COMMENT '总市值(亿元)     A股收盘价*已发行股票总股本(A股+B股+H股)',
      `circulating_market_cap` DECIMAL(20,10) NULL COMMENT '流通市值(亿元)     流通市值指在某特定时间内当时可交易的流通股股数乘以当时股价得出的流通股票总价值。     A股市场的收盘价*A股市场的流通股数',
      `turnover_ratio` DECIMAL(10,4) NULL COMMENT '换手率(%)     指在一定时间内市场中股票转手买卖的频率,是反映股票流通性强弱的指标之一。     换手率=[指定交易日成交量(手)100/截至该日股票的自由流通股本(股)]100%',
      `pe_ratio` DECIMAL(15,4) NULL COMMENT '市盈率(PE, TTM)     每股市价为每股收益的倍数,反映投资人对每元净利润所愿支付的价格,用来估计股票的投资报酬和风险     市盈率(PE,TTM)=(股票在指定交易日期的收盘价 * 当日人民币外汇挂牌价 * 截止当日公司总股本)/归属于母公司股东的净利润TTM。',
      `pe_ratio_lyr` DECIMAL(15,4) NULL COMMENT '以上一年度每股盈利计算的静态市盈率. 股价/最近年度报告EPS     市盈率(PE)=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的净利润。',
      `pb_ratio` DECIMAL(15,4) NULL COMMENT '市净率(PB)     每股股价与每股净资产的比率     市净率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的权益。',
      `ps_ratio` DECIMAL(15,4) NULL COMMENT '市销率(PS, TTM)     市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。     市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM',
      `pcf_ratio` DECIMAL(15,4) NULL COMMENT '市现率(PCF, 现金净流量TTM)     每股市价为每股现金净流量的倍数     市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM',
      PRIMARY KEY (`code`, `day`))
    COMMENT = '市值数据-股票代码模5余2';
    
    CREATE TABLE `jqdata`.`t_valuation_3` (
      `code` VARCHAR(20) NOT NULL COMMENT '股票代码  带后缀.XSHE/.XSHG',
      `day` DATE NOT NULL COMMENT '取数据的日期',
      `capitalization` DECIMAL(20,4) NULL COMMENT '总股本(万股)     公司已发行的普通股股份总数(包含A股,B股和H股的总股本)',
      `circulating_cap` DECIMAL(20,4) NULL COMMENT '流通股本(万股)     公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本)',
      `market_cap` DECIMAL(20,10) NULL COMMENT '总市值(亿元)     A股收盘价*已发行股票总股本(A股+B股+H股)',
      `circulating_market_cap` DECIMAL(20,10) NULL COMMENT '流通市值(亿元)     流通市值指在某特定时间内当时可交易的流通股股数乘以当时股价得出的流通股票总价值。     A股市场的收盘价*A股市场的流通股数',
      `turnover_ratio` DECIMAL(10,4) NULL COMMENT '换手率(%)     指在一定时间内市场中股票转手买卖的频率,是反映股票流通性强弱的指标之一。     换手率=[指定交易日成交量(手)100/截至该日股票的自由流通股本(股)]100%',
      `pe_ratio` DECIMAL(15,4) NULL COMMENT '市盈率(PE, TTM)     每股市价为每股收益的倍数,反映投资人对每元净利润所愿支付的价格,用来估计股票的投资报酬和风险     市盈率(PE,TTM)=(股票在指定交易日期的收盘价 * 当日人民币外汇挂牌价 * 截止当日公司总股本)/归属于母公司股东的净利润TTM。',
      `pe_ratio_lyr` DECIMAL(15,4) NULL COMMENT '以上一年度每股盈利计算的静态市盈率. 股价/最近年度报告EPS     市盈率(PE)=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的净利润。',
      `pb_ratio` DECIMAL(15,4) NULL COMMENT '市净率(PB)     每股股价与每股净资产的比率     市净率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的权益。',
      `ps_ratio` DECIMAL(15,4) NULL COMMENT '市销率(PS, TTM)     市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。     市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM',
      `pcf_ratio` DECIMAL(15,4) NULL COMMENT '市现率(PCF, 现金净流量TTM)     每股市价为每股现金净流量的倍数     市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM',
      PRIMARY KEY (`code`, `day`))
    COMMENT = '市值数据-股票代码模5余3';
    
    CREATE TABLE `jqdata`.`t_valuation_4` (
      `code` VARCHAR(20) NOT NULL COMMENT '股票代码  带后缀.XSHE/.XSHG',
      `day` DATE NOT NULL COMMENT '取数据的日期',
      `capitalization` DECIMAL(20,4) NULL COMMENT '总股本(万股)     公司已发行的普通股股份总数(包含A股,B股和H股的总股本)',
      `circulating_cap` DECIMAL(20,4) NULL COMMENT '流通股本(万股)     公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本)',
      `market_cap` DECIMAL(20,10) NULL COMMENT '总市值(亿元)     A股收盘价*已发行股票总股本(A股+B股+H股)',
      `circulating_market_cap` DECIMAL(20,10) NULL COMMENT '流通市值(亿元)     流通市值指在某特定时间内当时可交易的流通股股数乘以当时股价得出的流通股票总价值。     A股市场的收盘价*A股市场的流通股数',
      `turnover_ratio` DECIMAL(10,4) NULL COMMENT '换手率(%)     指在一定时间内市场中股票转手买卖的频率,是反映股票流通性强弱的指标之一。     换手率=[指定交易日成交量(手)100/截至该日股票的自由流通股本(股)]100%',
      `pe_ratio` DECIMAL(15,4) NULL COMMENT '市盈率(PE, TTM)     每股市价为每股收益的倍数,反映投资人对每元净利润所愿支付的价格,用来估计股票的投资报酬和风险     市盈率(PE,TTM)=(股票在指定交易日期的收盘价 * 当日人民币外汇挂牌价 * 截止当日公司总股本)/归属于母公司股东的净利润TTM。',
      `pe_ratio_lyr` DECIMAL(15,4) NULL COMMENT '以上一年度每股盈利计算的静态市盈率. 股价/最近年度报告EPS     市盈率(PE)=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的净利润。',
      `pb_ratio` DECIMAL(15,4) NULL COMMENT '市净率(PB)     每股股价与每股净资产的比率     市净率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的权益。',
      `ps_ratio` DECIMAL(15,4) NULL COMMENT '市销率(PS, TTM)     市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。     市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM',
      `pcf_ratio` DECIMAL(15,4) NULL COMMENT '市现率(PCF, 现金净流量TTM)     每股市价为每股现金净流量的倍数     市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM',
      PRIMARY KEY (`code`, `day`))
    COMMENT = '市值数据-股票代码模5余4';
    

    获取股票信息

    # -*- coding: UTF-8 -*-
    import sys
    import pandas as pd
    import jqdatasdk as jq
    import mysql.connector
    import pymysql
    from sqlalchemy import create_engine
    
    def get_all_securities():
        '''获取全部股票信息'''
        res = jq.get_all_securities(types=['stock'], date=None)
        '''删除type字段'''
        res=res.drop(['type'], axis=1)
    
        '''清表'''
        mdbconn = mysql.connector.connect(user='jqdata', password='jqdata', database='jqdata', use_unicode=True)
        cursor = mdbconn.cursor()
        cursor.execute('truncate table t_all_securities')
        mdbconn.commit()
        cursor.close()
        print('truncate table t_all_securities success')
        '''DataFrame入库'''
        pymysql.install_as_MySQLdb()
        mysqlconnect = create_engine('mysql+mysqldb://jqdata:jqdata@localhost:3306/jqdata?charset=utf8')
        res.to_sql(name='t_all_securities',con=mysqlconnect,schema='jqdata',if_exists='append',index=True,index_label='security',chunksize=1000)
        print('all securities saved in t_all_securities success')
        return
    
    def main():
        jq.auth('***', '***')
        get_all_securities()
        jq.logout()
    
    
    if __name__ == "__main__":
        sys.exit(main())
    

    获取日线行情信息

    # -*- coding: UTF-8 -*-
    #如不指定下载数据的时间段,则自动判断下载全量或补充增量,
    #如指定下载数据时间段,则删除期间数据,重新下载全部股票的数据
    
    import sys
    import datetime
    import pandas as pd
    import jqdatasdk as jq
    import mysql.connector
    import pymysql
    from sqlalchemy import create_engine
    
    
    def get_one_price(security,startday,endday):
        '''获取单只股票的指定时间段的后复权日线数据'''
        res = jq.get_price(security, start_date=startday, end_date=endday, 
                          frequency='daily', fields=['open','close','high','low','volume','money','factor','high_limit','low_limit','avg','pre_close','paused'], 
                          skip_paused=False, fq='post', 
                          count=None)
        '''增加股票代码列'''
        res['security']=security
        print(res)
    
        '''表路由,计算表名'''
        tmod=int(security[:6]) % 5
    
        tablename='t_kline_day_'+str(tmod)
        print(tablename)
    
    
        '''清理老数据'''
        sql="delete from " + tablename + " where security = '" + security + "' and kday >='" + startday + "' and kday <='" + endday + "'"
        print(sql)    
        mdbconn = mysql.connector.connect(user='jqdata', password='jqdata', database='jqdata', use_unicode=True)
        cursor = mdbconn.cursor()
        cursor.execute(sql)
        mdbconn.commit()
        cursor.close()
    
    
        '''DataFrame入库'''
        pymysql.install_as_MySQLdb()
        mysqlconnect = create_engine('mysql+mysqldb://jqdata:jqdata@localhost:3306/jqdata?charset=utf8')
        res.to_sql(name=tablename,con=mysqlconnect,schema='jqdata',if_exists='append',index=True,index_label='kday',chunksize=1000)
        print("all " + security + "data saved in " + tablename + " success")
        return
    
    def get_all_price(b='0',e='0'):
        '''遍历全部股票,获取日线数据'''
        '''从本地数据库里获取全部股票信息,代码,上市日期,退市日期'''
        mdbconn = mysql.connector.connect(user='jqdata', password='jqdata', database='jqdata', use_unicode=True)
        sql="select security , start_date, end_date from t_all_securities"
    
    
        securities=pd.read_sql(sql, mdbconn, index_col=None, coerce_float=True, params=None, parse_dates=None, columns=None, chunksize=None)
    
        cursor = mdbconn.cursor()
        for i in range(0,len(securities)):
            security=securities.iloc[i]['security']
            #没有入参,表示自动运行,判断已经存在的数据,加载至今的,没有数据,加载全部数据.
            if b=='0':
                startday=securities.iloc[i]['start_date'].strftime('%Y-%m-%d')
                endday=securities.iloc[i]['end_date'].strftime('%Y-%m-%d')
    
                tmod=int(security[:6]) % 5
    
                tablename='t_kline_day_'+str(tmod)
    
                sql="select ifnull(max(kday),'0000-00-00') as kday from " + tablename + " where security = '" + security + "'"
    
                cursor.execute(sql)
                kday = cursor.fetchone()[0]
    
                today=datetime.datetime.now().strftime('%Y-%m-%d')
    
                #计算起始日期
                if kday == '0000-00-00':
                    pass
                elif kday != '0000-00-00' and kday < today:
                    delta=datetime.timedelta(days=1)
                    kday=datetime.datetime.strptime(kday, '%Y-%m-%d')
                    startday=(kday+delta).strftime('%Y-%m-%d')
    
                #计算结束日期
                if today < endday :
                    endday=today
    
            else:
                #按指定日期运行
                startday=b
                endday=e
    
    
            get_one_price(security, startday, endday)
    
        cursor.close()
        return
    
    def main(b='0',e='0'):
        jq.auth('***', '***')
    
    
        get_all_price(b,e)
    
        jq.logout()
    
    
    if __name__ == "__main__":
        #sys.exit(main())
        sys.exit(main('2019-07-01','2019-07-02'))
    

    获取市值数据信息

    # -*- coding: UTF-8 -*-
    #获取市值数据,入参是日期,每日获取全部数据
    
    import sys
    import datetime
    import pandas as pd
    import jqdatasdk as jq
    from jqdatasdk import *
    import mysql.connector
    import pymysql
    import sqlalchemy
    from sqlalchemy import create_engine
    
    def get_oneday_valuation(day):
        '''
        获取某一天的所有市值数据
        由于返回数量限制,分股票代码 0 3 6 开头三次取数据.
        如何分表呢,将res按股票代码切分为5个res,分别存入5张表中
    
        '''
        for x in ['0','3','6']:
    
            #get_fundamentals(query(valuation),date)
            qry = query(
                valuation
            ).filter(
                valuation.code.ilike (x+'__________')
            )
            res = get_fundamentals(qry, day)
            res=res.drop(['id'], axis=1)
    
            #增加模列
            res['mod']=res['code'].map(lambda x:int(x[:6])%5)
    
            res0=res.loc[res['mod']==0].drop(['mod'],axis=1)
            res1=res.loc[res['mod']==1].drop(['mod'],axis=1)
            res2=res.loc[res['mod']==2].drop(['mod'],axis=1)
            res3=res.loc[res['mod']==3].drop(['mod'],axis=1)
            res4=res.loc[res['mod']==4].drop(['mod'],axis=1)
    
            #'''清理老数据'''
            sql0="delete from t_valuation_0 where day = '" + day + "' and code like '"+x+"%'"
            sql1="delete from t_valuation_1 where day = '" + day + "' and code like '"+x+"%'"
            sql2="delete from t_valuation_2 where day = '" + day + "' and code like '"+x+"%'"
            sql3="delete from t_valuation_3 where day = '" + day + "' and code like '"+x+"%'"
            sql4="delete from t_valuation_4 where day = '" + day + "' and code like '"+x+"%'"
            mdbconn = mysql.connector.connect(user='jqdata', password='jqdata', database='jqdata', use_unicode=True)
            cursor = mdbconn.cursor()
            cursor.execute(sql0)
            cursor.execute(sql1)
            cursor.execute(sql2)
            cursor.execute(sql3)
            cursor.execute(sql4)
            mdbconn.commit()
            cursor.close()
    
    
            '''DataFrame入库'''
            pymysql.install_as_MySQLdb()
            mysqlconnect = create_engine('mysql+mysqldb://jqdata:jqdata@localhost:3306/jqdata?charset=utf8')
            res0.to_sql(name='t_valuation_0',con=mysqlconnect,schema='jqdata',if_exists='append',index=False,chunksize=1000)
            res1.to_sql(name='t_valuation_1',con=mysqlconnect,schema='jqdata',if_exists='append',index=False,chunksize=1000)
            res2.to_sql(name='t_valuation_2',con=mysqlconnect,schema='jqdata',if_exists='append',index=False,chunksize=1000)
            res3.to_sql(name='t_valuation_3',con=mysqlconnect,schema='jqdata',if_exists='append',index=False,chunksize=1000)
            res4.to_sql(name='t_valuation_4',con=mysqlconnect,schema='jqdata',if_exists='append',index=False,chunksize=1000)
            print("all "+ day + "valuation data saved in t_valuation_[0,4] success")
    
        return
    
    jq.auth('***', '***')
    #如果传入非交易日,将会获取到之前的最近一个交易日数据,但是删除数据库历史数据删除传入日期,导致后续插入数据失败.
    #使用交易日表 按日期循环取历史
    get_oneday_valuation('2019-07-05')
    jq.logout()
    
    展开全文
  • JQData说明书

    千次阅读 2019-03-02 21:34:24
    JQData说明书 由于内容较多,可使用Ctrl+F搜索您需要的数据。 注意:query函数的更多用法详见:query简易教程 JQData是什么 JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务...

    JQData说明书

    由于内容较多,可使用Ctrl+F搜索您需要的数据。

    注意:query函数的更多用法详见:query简易教程

    JQData是什么

    JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经3年沉淀,15万宽客及数百家机构投研交易验证。

    使用上,JQData适用Windows、Mac、Linux多种操作系统,支持python2、python3和以及任意编程语言。数据通过简洁的API方式提供,pip即可直接安装使用,挣脱使用束缚,实现更多场景。只需三行代码,即可随取随用~

    JQData提供哪些数据

    为了满足用户的需求,聚宽数据团队在JQData中不仅提供了全面的基础金融数据,包括沪深A股行情数据,上市公司财务数据,场内基金数据,场外基金数据,指数数据,期货数据,期权数据以及宏观经济数据;除此之外,JQData还针对因子数据和特色数据,引进了聚宽因子库,舆情数据,Alpha特色因子,技术分析指标因子,tick数据以及百度因子数据,助您更好的完成量化研究和投资决策。详细数据清单如下表所示:

    沪深A股行情数据 时间范围 更新频率
    股票列表数据 2005至今 8:00更新
    行业概念和指数成分股 2005至今 8:00更新
    日行情 2005至今 盘中实时更新(1分钟刷新一次)
    分钟行情 2005至今 盘前9:00更新 盘中实时更新(1分钟刷新一次)盘后24:00更新
    分红拆分送股 2005至今 8:00更新
    融资融券 2010至今 下一个交易日10点之前更新
    资金流向 2010至今 盘后20:00更新
    龙虎榜数据 2005至今 盘后18:00更新
    限售解禁股 2005至今 盘后20:00更新
    停复牌数据 2005至今 盘前9点更新
    沪深市场每日成交概况 2005年至今 交易日20:30-24:00更新
    沪股通,深股通和港股通 上市至今 交易日20:30-24:00更新
    上市公司财务数据 时间范围 更新频率
    估值数据 2005至今 交易日18:00-24:00更新
    财务指标 2005至今 交易日20:30-24:00更新
    资产负债表 2005至今 交易日20:30-24:00更新
    现金流量表 2005至今 交易日20:30-24:00更新
    利润表 2005至今 交易日20:30-24:00更新
    银行专项指标表 2005至今 交易日20:30-24:00更新
    券商专项指标表 2005至今 交易日20:30-24:00更新
    保险专项指标表 2005至今 交易日20:30-24:00更新
    上市公司概况 2005年至今 交易日20:30-24:00更新
    上市公司股东股本 2005年至今 交易日20:30-24:00更新
    场内基金数据 时间范围 更新频率
    场内基金列表数据 2005至今 8:00更新
    分级基金数据 2005至今 8:00更新
    日行情 2005至今 盘中实时更新(1分钟刷新一次)
    分钟行情 2005至今 盘前9:00更新 盘中实时更新(1分钟刷新一次)盘后24:00更新
    净值数据 2005至今 盘前9:00更新 盘中实时更新(1分钟刷新一次)盘后24:00更新
    融资融券 2010至今 下一个交易日10点之前更新
    指数数据 时间范围 更新频率
    指数列表数据 2005至今 8:00更新
    指数成分股数据 2005至今 8:00更新
    日行情 2005至今 盘中实时更新(1分钟刷新一次)
    分钟行情 2005至今 盘前9:00更新 盘中实时更新(1分钟刷新一次)盘后24:00更新
    国际指数日行情 上市至今 盘后18:00更新
    期货数据 时间范围 更新频率
    期货列表数据 2005至今 8:00更新
    日行情 2005至今 盘中实时更新(1分钟刷新一次)
    分钟行情 2005至今 盘前9:00更新 盘中实时更新(1分钟刷新一次)盘后24:00更新
    期货主力合约 2005至今 盘前8:00更新
    期货连续指数 2005至今 盘前8:00更新
    期货龙虎榜数据 2005年至今 盘后19:00更新
    期货仓单数据 2005年至今 盘后19:00更新
    期权数据 时间范围 更新频率
    期权合约资料 上市至今 盘后18:00更新
    期权合约调整记录 上市至今 盘前18:00更新
    期权每日盘前静态文件 上市至今 盘前9:05日更新
    期权日行情 上市至今 盘后17:55更新
    期权分钟行情 2017-01-01至今 盘后20:30更新
    股票期权交易和持仓排名统计 上市至今 盘前8:05更新
    期权风险指标 上市至今 盘后19:50更新
    期权行权交收信息 上市至今 每日10:45更新
    场外基金 时间范围 更新频率
    基金主体信息 上市至今 盘后24:00更新
    基金净值信息 上市至今 盘前9:00更新
    基金持股信息 上市至今 盘后24:00更新
    基金持仓债券信息 上市至今 盘后24:00更新
    基金资产组合概况 上市至今 盘后24:00更新
    基金财务指标信息 上市至今 盘后24:00更新
    基金收益日报信息 上市至今 盘后24:00更新
    基金分红拆分合并信息 上市至今 盘后24: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之前更新
    舆情数据 时间范围 更新频率
    雪球热度数据 2015年至今 每日3:00前更新
    新闻联播文本数据 2009年6月至今 每日20:30前更新
    聚宽因子库 时间范围 更新频率
    质量因子 2005年至今 每日5:00前更新
    基础因子 2005年至今 每日5:00前更新
    情绪因子 2005年至今 每日5:00前更新
    成长因子 2005年至今 每日5:00前更新
    风险因子 2005年至今 每日5:00前更新
    每股因子 2005年至今 每日5:00前更新
    Alpha特色因子 时间范围 更新频率
    Alpha101因子 2005至今 使用指定日期日行情实时计算
    Alpha191因子 2005至今 使用指定日期日行情实时计算
    技术指标因子 时间范围 更新频率
    超买超卖型技术指标 2005至今 使用指定日期日行情实时计算
    趋势型技术指标 2005至今 使用指定日期日行情实时计算
    能量型技术指标 2005至今 使用指定日期日行情实时计算
    成交量型技术指标 2005至今 使用指定日期日行情实时计算
    均线型技术指标 2005至今 使用指定日期日行情实时计算
    路径型技术指标 2005至今 使用指定日期日行情实时计算
    其他 2005至今 使用指定日期日行情实时计算
    tick快照数据(仅限机构用户) 时间范围 更新频率
    沪深A股tick数据 2010-01-01至今 交易日盘后21:30
    金融期货和商品期货tick数据 2010-01-01至今 交易日盘后21:30
    50ETF期权tick数据 2017-01-01至今 交易日盘后20:30
    百度因子数据(仅限机构用户) 时间范围 更新频率
    中证800指数成分股百度全网搜索量 2017-09-01至今 每日上午12:30之前更新前一日的搜索量数据,遇节假日顺延到下一工作日。
    中证800指数成分股百度分省份搜索量 2017-09-01至今 每日上午12:30之前更新前一日的搜索量数据,遇节假日顺延到下一工作日。
    谁在使用JQData

    聚宽量化平台聚集了国内优秀的量化研究者和金融机构,他们使用聚宽数据生产了上百万的优质策略,如果你对量化感兴趣,很快你也能成为其中的一员。他们是:

    金融机构:聚宽的机构用户遍布国内主要券商,公募基金和私募基金
    研究人员:券商研究所,高校老师都是聚宽数据的深度用户
    在校学生:无论是985还是211,这些学校的学生都在使用聚宽的数据
    量化研究者:数十万计的量化研究者
    为什么选择JQData

    为什么JQData能受到如此众多用户的青睐?原因是聚宽数据从一开始就是为量化而生,本地使用,易于量化,调用方便,数据精度高,基础数据全部免费这是JQData区别于国内其他量化平台的最主要特点,相信您在使用过程中能有更深切的体会。具体来说:

    本地使用:JQData避免了各个量化平台的限制,适用于Windows,Mac,Linux多种操作系统,用户只需三行Python代码即可完成本地安装和调用,帮助您实现一整套本地化部署的量化投资研究。(支持Python2和Python3)

    易于量化:为了避免用户在指定日期获取到未来的数据,JQData在设计过程中,提供了指定日期参数,在该日期用户获取的是截止到该日期市场上已公布的数据,从而避免用户提前获取未来数据的上帝视角。

    调用方便:在JQData里,不同品种同一属性的数据用同一个接口就能获取,例如,使用get_price就能获取所有股票,基金,指数,期货的行情数据,从而大大减少用户的学习成本,代码也更加简洁;与之相反,大部分传统数据商提供的数据分散在不同的数据表中,需要用户自己来回查找。

    数据精度高:JQData的历史行情提供日行情和分钟行情,更精确的还有tick行情,而大部分量化平台最多提供到日行情这种精度。

    基础数据免费试用:为了让更多的用户使用上优质的金融数据,生产出更多的量化研究成果,JQData对基础数据全部免费开放试用,JQData的基础数据包含沪深A股行情数据,上市公司财务数据,指数数据,场内基金数据,期货数据和宏观经济数据;相比之下,大部分数据平台提供的本地化数据少则几万,多则十几万,费用高企让大部分量化研究者望而却步。

    因子数据和特色数据:除基础数据外,我们还特别提供了Alpha特色因子,技术指标因子,tick数据以及百度搜索因子,让您在投资研究中加入更多的数据维度。

    如何开通JQData

    申请试用账号: 聚宽作为国内量化行业的领军企业,本着推动量化行业快速发展的良好愿景,现已开放试用JQData。想要使用JQData的用户只需提交试用申请,就能开通JQData一年有效期的试用账号。试用账号在试用期间可免费调用JQData的全部基础数据,每天可调用100万条,具体试用权限如下表所示。(注:JQData基础数据包含沪深A股行情数据,上市公司财务数据,指数数据,场内基金数据,期货数据和宏观经济数据)

    账户类型 试用账户(免费)
    账户有效期 1年
    可用数据 全部基础数据
    可查询数据时间范围 2005年至今
    每天调用数据限制 100万条/天
    单个账号可同时开启连接数 3个
    因子和特色数据 无
    开通正式账号: 如果您觉得每天100万条的数据不够用,或者想要使用诸如Alpha特色因子,技术指标因子,tick数据以及百度因子等聚宽的特色数据,可以升级到JQData正式版、标准版或专业版,升级后每天可调用2亿条数据,详情请与我们的运营人员联系。正式账号享有的权益如下表所示。(联系方式:添加管理员微信 JQData01;或发送邮箱至:jqdatasdk@joinquant.com)

    账户权益 权益说明 正式版 标准版 专业版
    账户有效期 按年付费 √ √ √
    数据时间范围 2005年至今 √ √ √
    每天调用数据限制 2亿条/天 √ √ √
    单个账号可同时开启连接数 3个 √ √ √
    可用数据 全部基础数据 √ √ √
    Alpha101 √ √
    Alpha191 √ √
    聚宽因子库 √ √
    技术指标因子 √ √
    沪深A股tick数据 √
    期货tick数据 √
    百度因子
    如何安装使用JQData

    开通权限后,您可以在本地安装和使用JQData。Python用户请按以下教程安装使用,其他编程语言用户请查看JQData HTTP接口文档。如在使用中遇到问题,还可以添加JQData管理员微信咨询,微信号:jqdata01,添加时请留言"JQData"。

    安装JQData: 如您本地已有python环境,打开本地cmd终端或Mac终端,将路径切换到python目录下,直接使用pip语法即可安装。在安装中出现任何问题,可查看JQData安装教程,内有详细解答。

    pip install jqdatasdk
    如您是windows用户:可以直接下载JQData高校版,一键完成安装。本方式不需另外配置python环境,直接在本地创建一套包含JQData的独立python环境,点击查看高校版安装教程。

    升级JQData:JQData预计每2周会发布一次迭代版本,增加更多维度的基础数据以及因子类数据,已有python环境的用户可以使用如下语句完成升级:

    pip install -U jqdatasdk
    windows用户可以直接点击新版本链接下载安装。或打开cmd终端,切换到JQData所在路径下,通过下述语句升级到最新版本。

    C:\JQData>python.exe -m pip install jqdatasdk
    登录JQData:安装完成后,导入JQData,并认证用户身份。认证完毕显示“auth success”后即可使用,认证步骤如下:

    from jqdatasdk import *
    auth(‘账号’,‘密码’) #账号是申请时所填写的手机号;密码为聚宽官网登录密码,新申请用户默认为手机号后6位
    调用数据:详见数据调用方法

    每天可访问数据条数:由于用户访问数据会给服务器造成一定的压力,JQData开放给试用账号的每天可访问数据为100万条,基本上能够满足大部分用户的需要;如需更多的访问条数,您可以付费升级为正式账号,我们将为您开放每天2亿条数据的访问权限。

    因子数据和特色数据:如果您还想使用Alpha特色因子,技术指标因子,tick数据以及百度因子数据,您可以将账号升级到正式版、标准版或专业版,详情请联系我们的运营同事。我们会为您提供定制化的JQData,尽可能满足您的数据需求。如需咨询,请添加管理员微信:JQData01 ;或发送邮箱至:jqdatasdk@joinquant.com。

    问题反馈和其他数据需求:如果您在使用JQData的过程中遇到问题,或者希望JQData能够加入更多的数据,请您通过社区提问的方式或者发送邮件至jqdatasdk@joinquant.com告诉我们。另外,为了增进用户之间的交流,我们还提供了JQData微信讨论组,想要加入讨论的用户可以添加JQData管理员,和我们一起更好的完善和使用JQData。(管理员微信号:JQData01,添加时请留言"JQData"。)

    商务合作

    聚宽作为国内领先的量化平台,欢迎数据行业的各位同仁,和我们共同构建起一整套领先的量化分析数据体系,如贵公司有这方面的数据资源和合作意向,请添加管理员微信:JQData01,或发送邮件至jqdatasdk@joinquant.com说明合作意向,欢迎加入聚宽JQData。

    版本信息

    V1.5.0 2018.12.06

    新增数据: 1.期权数据 2.场外基金 3.聚宽因子库 4.期货龙虎榜和仓单信息 5.雪球热度数据

    V1.4.4 2018.6.15

    新增数据: 上市公司概况 上市公司股东和股本信息

    数据调用方法

    由于内容较多,可使用Ctrl+F搜索您需要的数据。

    注意:query函数的更多用法详见:sqlalchemy.orm.query.Query对象

    登录JQData

    打开代码编辑器(第三方编辑器请指定运行环境为已安装JQData的Python环境),输入如下代码认证用户身份。认证完毕后显示“auth success”即可开始调用数据,认证步骤如下:

    from jqdatasdk import *
    auth(‘ID’,‘Password’) #ID是申请时所填写的手机号;Password为聚宽官网登录密码,新申请用户默认为手机号后6位
    查询版本信息

    version
    描述:查看当前jqdatasdk版本

    返回

    一个str,当前jqdatasdk版本:

    示例

    #查看当前jqdatasdk版本
    print(version)

    ‘1.5.0’
    查询当日剩余可调用条数

    get_query_count()
    描述:查看当日剩余可调用条数,试用账号默认是每日100万条;正式账号是每日2亿条。

    返回

    一个dict,字段说明如下:

    字段名 说明
    total 当日可调用数据总条数
    spare 当日剩余可调用条数
    示例

    #查询当日剩余可调用数据条数
    count=get_query_count()
    print(count)
    {‘total’: 1000000,‘spare’: 996927}
    获取标的基本信息

    JQData证券代码标准格式

    由于同一代码可能代表不同的交易品种,JQData给每个交易品种后面都添加了该市场特定的代码后缀,用户在调用API时,需要将参数security传入带有该市场后缀的证券代码,如security=‘600519.XSHG’,以便于区分实际调用的交易品种。以下列出了每个交易市场的代码后缀和示例代码。

    交易市场 代码后缀 示例代码 证券简称
    上海证券交易所 .XSHG ‘600519.XSHG’ 贵州茅台
    深圳证券交易所 .XSHE ‘000001.XSHE’ 平安银行
    中金所 .CCFX ‘IC9999.CCFX’ 中证500主力合约
    大商所 .XDCE ‘A9999.XDCE’ 豆一主力合约
    上期所 .XSGE ‘AU9999.XSGE’ 黄金主力合约
    郑商所 .XZCE ‘CY8888.XZCE’ 棉纱期货指数
    上海国际能源期货交易所 .XINE ‘SC9999.XINE’ 原油主力合约
    get_all_securities - 获取所有标的信息

    get_all_securities(types=[], date=None)
    获取平台支持的所有股票、基金、指数、期货信息

    参数

    types: list: 用来过滤securities的类型, list元素可选: ‘stock’, ‘fund’, ‘index’, ‘futures’, ‘etf’, ‘lof’, ‘fja’, ‘fjb’。types为空时返回所有股票, 不包括基金,指数和期货
    date: 日期, 一个字符串或者 [datetime.datetime]/[datetime.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
    display_name: 中文名称
    name: 缩写简称
    start_date: 上市日期
    end_date: 退市日期,如果没有退市则为2200-01-01
    type: 类型,stock(股票),index(指数),etf(ETF基金),fja(分级A),fjb(分级B)
    示例

    #将所有股票列表转换成数组
    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_security_info - 获取单个标的信息

    get_security_info(code)
    获取股票/基金/指数的信息.

    参数

    code: 证券代码
    返回值

    一个对象, 有如下属性:

    display_name: 中文名称
    name: 缩写简称
    start_date: 上市日期, [datetime.date] 类型
    end_date: 退市日期, [datetime.date] 类型, 如果没有退市则为2200-01-01
    type: 类型,stock(股票),index(指数),etf(ETF基金),fja(分级A),fjb(分级B)
    parent: 分级基金的母基金代码
    示例

    获取基金的母基金, 下面的判断为真.

    assert get_security_info(‘502050.XSHG’).parent == ‘502048.XSHG’
    get_index_stocks - 获取指数成份股

    get_index_stocks(index_symbol, date=None)
    获取一个指数给定日期在平台可交易的成分股列表,请点击指数列表查看指数信息

    参数

    index_symbol: 指数代码
    date: 查询日期, 一个字符串(格式类似’2015-10-15’)或者[datetime.date]/[datetime.datetime]对象, 可以是None,
    返回 返回股票代码的list

    示例

    获取所有沪深300的股票

    stocks = get_index_stocks(‘000300.XSHG’)
    print(stocks)
    normalize_code-股票代码格式转化

    normalize_code(code)
    将其他形式的股票代码转换为jqdatasdk函数可用的股票代码形式。 仅适用于A股市场股票代码以及基金代码 示例

    #输入
    for code in (‘000001’, ‘SZ000001’, ‘000001SZ’, ‘000001.sz’, ‘000001.XSHE’):
    print normalize_code(code)

    #输出
    000001.XSHE
    000001.XSHE
    000001.XSHE
    000001.XSHE
    000001.XSHE
    get_margincash_stocks - 获取融资标的列表

    get_margincash_stocks(dt)
    参数 dt:默认为None,不指定时返回上交所、深交所最近一次披露的的可融资标的列表的list。

    返回结果 返回指定日期上交所、深交所披露的的可融资标的列表的list。

    示例

    获取融资标的列表,并赋值给 margincash_stocks

    margincash_stocks = get_margincash_stocks(dt=‘2018-07-02’)

    判断平安银行是否在可融资列表

    ‘000001.XSHE’ in get_margincash_stocks(dt=‘2018-07-02’)
    True
    get_marginsec_stocks - 获取融券标的列表

    get_marginsec_stocks(dt)
    参数 dt:默认为None,不指定时返回上交所、深交所最近一次披露的的可融券标的列表的list。

    返回结果 返回指定日期上交所、深交所披露的的可融券标的列表的list。

    示例

    获取融券标的列表,并赋值给 marginsec_stocks

    marginsec_stocks= get_marginsec_stocks(dt=‘2018-07-05’)

    判断平安银行是否在可融券列表

    ‘000001.XSHE’ in get_marginsec_stocks(dt=‘2018-07-05’)
    True
    get_extras - 获取基金净值/期货结算价等

    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’, ‘futures_positions’] 中的一个

    指定info字段 返回信息
    is_st 是否是ST,是则返回 True,否则返回 False
    acc_net_value 基金累计净值
    unit_net_value 基金单位净值
    futures_sett_price 期货结算价
    futures_positions 期货持仓量
    adj_net_value 场外基金的复权净值
    security_list: 股票列表

    start_date/end_date: 开始结束日期, 同 [get_price]

    df: 返回[pandas.DataFrame]对象还是一个dict, 同 [history]

    count: 数量, 与 start_date 二选一, 不可同时使用, 必须大于 0. 表示取 end_date 往前的 count 个交易日的数据

    返回值

    df=True: 返回[pandas.DataFrame]对象, 列索引是股票代号, 行索引是[datetime.datetime], 比如
    get_extras(‘acc_net_value’, [‘510300.XSHG’, ‘510050.XSHG’], start_date=‘2015-12-01’, end_date=‘2015-12-03’)
    返回结果:

    — 510300.XSHG 510050.XSHG
    2015-12-01 00:00:00 1.395 3.119
    2015-12-02 00:00:00 1.4432 3.251
    2015-12-03 00:00:00 1.4535 3.254
    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 00:00:00 False True
    2013-12-03 00:00:00 False True
    df=False 返回一个dict, key是基金代号, value是[numpy.ndarray], 比如
    get_extras(‘acc_net_value’, [‘510300.XSHG’, ‘510050.XSHG’], start_date=‘2015-12-01’, end_date=‘2015-12-03’, df=False)
    返回结果: { u’510050.XSHG’: array([ 3.119, 3.251, 3.254]), u’510300.XSHG’: array([ 1.395 , 1.4432, 1.4535]) }

    get_locked_shares - 获取限售解禁数据

    get_locked_shares(stock_list, start_date, end_date, forward_count)
    获取指定日期区间内的限售解禁数据

    参数

    stock_list: 一个股票代码的 list
    start_date: 开始日期
    end_date: 结束日期
    forward_count: 交易日数量, 可以与 start_date 同时使用, 表示获取 start_date 到 forward_count 个交易日区间的数据
    返回值

    pandas.DataFrame, 各 column 的含义如下:

    day: 解禁日期
    code: 股票代码
    num: 解禁股数
    rate1: 解禁股数/总股本
    rate2: 解禁股数/总流通股本
    示例

    在策略中获取个股未来500天的解禁情况

    get_locked_shares(stock_list=[‘000001.XSHE’, ‘000002.XSHE’], start_date=‘2018-08-01’, forward_count=500)
    get_index_weights -获取指数成份股权重(月度)

    get_index_weights(index_id, date=None)
    获取指数成份股给定日期的权重数据,每月更新一次,请点击指数列表查看指数信息

    参数

    index_id: 代表指数的标准形式代码, 形式:指数代码.交易所代码,例如"000001.XSHG"。
    date: 查询权重信息的日期,形式:"%Y-%m-%d",例如"2018-05-03";
    返回

    查询到对应日期,且有权重数据,返回 pandas.DataFrame, code(股票代码),display_name(股票名称), date(日期), weight(权重);
    查询到对应日期,且无权重数据, 返回距离查询日期最近日期的权重信息;
    找不到对应日期的权重信息, 返回距离查询日期最近日期的权重信息;
    示例

    #获取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
    获取行业概念成分股

    get_industries - 获取行业列表

    get_industries(name=‘zjw’)
    按照行业分类获取行业列表。

    参数

    name: 行业代码, 取值如下:

    “sw_l1”: 申万一级行业
    “sw_l2”: 申万二级行业
    “sw_l3”: 申万三级行业
    “jq_l1”: 聚宽一级行业
    “jq_l2”: 聚宽二级行业
    “zjw”: 证监会行业
    返回值

    pandas.DataFrame, 各 column 的含义如下:

    index: 行业代码
    name: 行业名称
    start_date: 开始日期
    get_industry_stocks - 获取行业成份股

    get_industry_stocks(industry_code, date=None)
    获取在给定日期一个行业的所有股票,行业分类列表见数据页面-行业概念数据。

    参数

    industry_code: 行业编码
    date: 查询日期, 一个字符串(格式类似’2015-10-15’)或者[datetime.date]/[datetime.datetime]对象, 可以是None.
    返回 返回股票代码的list

    示例

    获取计算机/互联网行业的成分股

    stocks = get_industry_stocks(‘I64’)
    get_concepts - 获取概念列表

    get_concepts()
    获取概念板块列表

    返回值

    pandas.DataFrame, 各 column 的含义如下:

    index: 概念代码
    name: 概念名称
    start_date: 开始日期
    get_concept_stocks - 获取概念成份股

    get_concept_stocks(concept_code, date=None)
    获取在给定日期一个概念板块的所有股票,概念板块分类列表见数据页面-行业概念数据。

    参数

    concept_code: 概念板块编码
    date: 查询日期, 一个字符串(格式类似’2015-10-15’)或者[datetime.date]/[datetime.datetime]对象, 可以是None.
    返回 返回股票代码的list

    示例

    获取风力发电概念板块的成分股

    stocks = get_concept_stocks(‘GN036’)
    get_industry - 查询股票所属行业

    get_industry(security, date=None)
    参数

    security:标的代码,类型为字符串,形式如"000001.XSHE";或为包含标的代码字符串的列表,形如[“000001.XSHE”, “000002.XSHE”]
    date:查询的日期。类型为字符串,形如"2018-06-01"或"2018-06-01 09:00:00";或为datetime.datetime对象和datetime.date。注意传入对象的时分秒将被忽略。
    返回

    返回结果是一个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’: {‘sw_l1’: {‘industry_code’: ‘801780’, ‘industry_name’: ‘银行I’}, ‘sw_l2’: {‘industry_code’: ‘801192’, ‘industry_name’: ‘银行II’}, ‘sw_l3’: {‘industry_code’: ‘851911’, ‘industry_name’: ‘银行III’}, ‘zjw’: {‘industry_code’: ‘J66’, ‘industry_name’: ‘货币金融服务’}, ‘jq_l2’: {‘industry_code’: ‘HY493’, ‘industry_name’: ‘多元化银行指数’}, ‘jq_l1’: {‘industry_code’: ‘HY007’, ‘industry_name’: ‘金融指数’}}, ‘000002.XSHE’: {‘sw_l1’: {‘industry_code’: ‘801180’, ‘industry_name’: ‘房地产I’}, ‘sw_l2’: {‘industry_code’: ‘801181’, ‘industry_name’: ‘房地产开发II’}, ‘sw_l3’: {‘industry_code’: ‘851811’, ‘industry_name’: ‘房地产开发III’}, ‘zjw’: {‘industry_code’: ‘K70’, ‘industry_name’: ‘房地产业’}, ‘jq_l2’: {‘industry_code’: ‘HY509’, ‘industry_name’: ‘房地产开发指数’}, ‘jq_l1’: {‘industry_code’: ‘HY011’, ‘industry_name’: ‘房地产指数’}}}
    获取交易行情数据

    get_trade_days - 获取指定范围交易日

    get_trade_days(start_date=None, end_date=None, count=None)
    获取指定日期范围内的所有交易日, 返回 [numpy.ndarray], 包含指定的 start_date 和 end_date, 默认返回至 datatime.date.today() 的所有交易日

    参数

    start_date: 开始日期, 与 count 二选一, 不可同时使用. str/[datetime.date]/[datetime.datetime] 对象
    end_date: 结束日期, str/[datetime.date]/[datetime.datetime] 对象, 默认为 datetime.date.today()
    count: 数量, 与 start_date 二选一, 不可同时使用, 必须大于 0. 表示取 end_date 往前的 count 个交易日,包含 end_date 当天。
    get_all_trade_days - 获取所有交易日

    get_all_trade_days()
    获取所有交易日, 不需要传入参数, 返回一个包含所有交易日的 [numpy.ndarray], 每个元素为一个 [datetime.date] 类型.

    get_price - 获取行情数据

    get_price(security, start_date=None, end_date=None, frequency=‘daily’, fields=None, skip_paused=False, fq=‘pre’, count=None)
    获取一支或者多只股票的实时行情和历史行情, 按天或者按分钟,这里在使用时注意 end_date 的设置,不要引入未来的数据。

    参数

    security: 一支股票代码或者一个股票代码的list

    count: 与 start_date 二选一,不可同时使用. 数量, 返回的结果集的行数, 即表示获取 end_date 之前几个 frequency 的数据

    start_date: 与 count 二选一,不可同时使用. 字符串或者 [datetime.datetime]/[datetime.date] 对象, 开始时间.

    如果 count 和 start_date 参数都没有, 则 start_date 生效, 值是 ‘2015-01-01’. 注意:
    当取分钟数据时, 时间可以精确到分钟, 比如: 传入 datetime.datetime(2015, 1, 1, 10, 0, 0) 或者 ‘2015-01-01 10:00:00’.
    当取分钟数据时, 如果只传入日期, 则日内时间是当日的 00:00:00.
    当取天数据时, 传入的日内时间会被忽略
    end_date: 格式同上, 结束时间, 默认是’2015-12-31’, 包含此日期. 注意: 当取分钟数据时, 如果 end_date 只有日期, 则日内时间等同于 00:00:00, 所以返回的数据是不包括 end_date 这一天的.

    frequency: 单位时间长度, 几天或者几分钟, 现在支持’Xd’,‘Xm’, ‘daily’(等同于’1d’), ‘minute’(等同于’1m’), X是一个正整数, 分别表示X天和X分钟(不论是按天还是按分钟回测都能拿到这两种单位的数据), 注意, 当X > 1时, fields只支持[‘open’, ‘close’, ‘high’, ‘low’, ‘volume’, ‘money’]这几个标准字段. 默认值是daily

    fields: 字符串list, 选择要获取的行情数据字段, 默认是None(表示[‘open’, ‘close’, ‘high’, ‘low’, ‘volume’, ‘money’]这几个标准字段), 支持SecurityUnitData里面的所有基本属性,,包含:[‘open’, ’ close’, ‘low’, ‘high’, ‘volume’, ‘money’, ‘factor’, ‘high_limit’,’ low_limit’, ‘avg’, ’ pre_close’, ‘paused’]

    skip_paused: 是否跳过不交易日期(包括停牌, 未上市或者退市后的日期). 如果不跳过, 停牌时会使用停牌前的数据填充(具体请看SecurityUnitData的paused属性), 上市前或者退市后数据都为 nan, 但要注意:

    默认为 False
    当 skip_paused 是 True 时, 只能取一只股票的信息 关于停牌: 因为此API可以获取多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致,我们默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充(请看 [SecurityUnitData] 的 paused 属性). 如想跳过, 请使用 skip_paused=True 参数, 同时只取一只股票的信息
    fq: 复权选项:

    ‘pre’: 前复权
    None: 不复权, 返回实际价格
    ‘post’: 后复权
    返回

    请注意, 为了方便比较一只股票的多个属性, 同时也满足对比多只股票的一个属性的需求, 我们在security参数是一只股票和多只股票时返回的结构完全不一样

    如果是一支股票, 则返回[pandas.DataFrame]对象, 行索引是[datetime.datetime]对象, 列索引是行情字段名字, 比如’open’/‘close’. 比如: get_price(‘000300.XSHG’)[:2] 返回:

    — open close high low volume money
    2015-01-05 00:00:00 3566.09 3641.54 3669.04 3551.51 451198098.0 519849817448.0
    2015-01-06 00:00:00 3608.43 3641.06 3683.23 3587.23 420962185.0 498529588258.0
    如果是多支股票, 则返回[pandas.Panel]对象, 里面是很多[pandas.DataFrame]对象, 索引是行情字段(open/close/…), 每个[pandas.DataFrame]的行索引是[datetime.datetime]对象, 列索引是股票代号. 比如get_price([‘000300.XSHG’, ‘000001.XSHE’])[‘open’][:2]返回:

    — 000300.XSHG 000001.XSHE
    2015-01-05 00:00:00 3566.09 13.21
    2015-01-06 00:00:00 3608.43 13.09
    示例

    获取一支股票

    df = get_price(‘000001.XSHE’) # 获取000001.XSHE的2015年的按天数据
    df = get_price(‘000001.XSHE’, start_date=‘2015-01-01’, end_date=‘2015-01-31 23:00:00’, frequency=‘minute’, fields=[‘open’, ‘close’]) # 获得000001.XSHG的2015年01月的分钟数据, 只获取open+close字段
    df = get_price(‘000001.XSHE’, count = 2, end_date=‘2015-01-31’, frequency=‘daily’, fields=[‘open’, ‘close’]) # 获取获得000001.XSHG在2015年01月31日前2个交易日的数据
    df = get_price(‘000001.XSHE’, start_date=‘2015-12-01 14:00:00’, end_date=‘2015-12-02 12:00:00’, frequency=‘1m’) # 获得000001.XSHG的2015年12月1号14:00-2015年12月2日12:00的分钟数据

    获取多只股票

    panel = get_price(get_index_stocks(‘000903.XSHG’)) # 获取中证100的所有成分股的2015年的天数据, 返回一个[pandas.Panel]
    df_open = panel[‘open’] # 获取开盘价的[pandas.DataFrame], 行索引是[datetime.datetime]对象, 列索引是股票代号
    df_volume = panel[‘volume’] # 获取交易量的[pandas.DataFrame]

    df_open[‘000001.XSHE’] # 获取平安银行的2015年每天的开盘价数据
    get_bars - 获取指定时间周期的行情数据

    get_bars(security, count, unit=‘1d’,
    fields=[‘date’,‘open’,‘high’,‘low’,‘close’],
    include_now=False, end_dt=None, fq_ref_date=None)
    获取各种时间周期的bar数据,bar的分割方式与主流股票软件相同, 同时还支持返回当前时刻所在 bar 的数据。

    参数

    security: 股票代码
    count: 大于0的整数,表示获取bar的个数。如果行情数据的bar不足count个,返回的长度则小于count个数。
    unit: bar的时间单位, 支持如下周期:‘1m’, ‘5m’, ‘15m’, ‘30m’, ‘60m’, ‘120m’, ‘1d’, ‘1w’, ‘1M’。其中m表示分钟,d表示天,w表示周,M表示月。
    fields: 获取数据的字段, 支持如下值:‘date’, ‘open’, ‘close’, ‘high’, ‘low’, ‘volume’, ‘money’。
    include_now: 取值True 或者False。 表示是否包含当前bar, 比如策略时间是9:33,unit参数为5m, 如果 include_now=True,则返回9:30-9:33这个分钟 bar。
    end_dt:查询的截止时间,支持的类型为datetime.datetime或None,默认为datetime.now()。
    fq_ref_date:复权基准日期,为None时为不复权数据。
    返回

    返回一个pandas.dataframe对象,可以按任意周期返回股票的开盘价、收盘价、最高价、最低价,同时也可以利用date数据查看所返回的数据是什么时刻的。

    示例

    #获取贵州茅台按天为周期以"2018-12-05"为基础往前10个交易日的数据
    df = get_bars(‘600519.XSHG’, 10, unit=‘1d’,fields=[‘date’,‘open’,‘high’,‘low’,‘close’],include_now=False,end_dt=‘2018-12-05’)
    print(df)
    date open high low close
    0 2018-11-21 554.00 568.90 553.68 564.70
    1 2018-11-22 565.15 567.33 558.00 564.50
    2 2018-11-23 564.00 567.30 556.90 556.90
    3 2018-11-26 558.00 560.20 552.00 552.11
    4 2018-11-27 552.00 554.99 546.50 548.10
    5 2018-11-28 550.85 559.19 545.50 557.00
    6 2018-11-29 566.03 569.80 549.01 551.60
    7 2018-11-30 557.00 568.89 553.00 565.00
    8 2018-12-03 589.00 605.00 584.77 601.20
    9 2018-12-04 602.99 604.26 595.00 602.23
    get_mtss - 获取融资融券信息

    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 对应.

    示例

    获取一只股票的融资融券信息

    get_mtss(‘000001.XSHE’, ‘2016-01-01’, ‘2016-04-01’)
    get_mtss(‘000001.XSHE’, ‘2016-01-01’, ‘2016-04-01’, fields=[“date”, “sec_code”, “fin_value”, “fin_buy_value”])
    get_mtss(‘000001.XSHE’, ‘2016-01-01’, ‘2016-04-01’, fields=“sec_sell_value”)

    获取多只股票的融资融券信息

    get_mtss([‘000001.XSHE’, ‘000002.XSHE’, ‘000099.XSHE’], ‘2015-03-25’, ‘2016-01-25’)
    get_mtss([‘000001.XSHE’, ‘000002.XSHE’, ‘000099.XSHE’], ‘2015-03-25’, ‘2016-01-25’, fields=[“date”, “sec_code”, “sec_value”, “fin_buy_value”, “sec_sell_value”])

    获取股票 000001.XSHE 在日期 2016-06-30 往前 20 个交易日的融资融券信息

    get_mtss(‘000001.XSHE’, end_date=“2016-06-30”, count=20)

    获取股票 000001.XSHE 往前 20 个交易日的融资融券信息

    get_mtss(‘000001.XSHE’, count=20)
    get_money_flow - 获取资金流信息

    get_money_flow(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 股票代码 —
    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 对应.

    示例

    获取一只股票在一个时间段内的资金流量数据

    get_money_flow(‘000001.XSHE’, ‘2016-02-01’, ‘2016-02-04’)
    get_money_flow(‘000001.XSHE’, ‘2015-10-01’, ‘2015-12-30’, fields=“change_pct”)
    get_money_flow([‘000001.XSHE’], ‘2010-01-01’, ‘2010-01-30’, [“date”, “sec_code”, “change_pct”, “net_amount_main”, “net_pct_l”, “net_amount_m”])

    — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

    获取多只股票在一个时间段内的资金流向数据

    get_money_flow([‘000001.XSHE’, ‘000040.XSHE’, ‘000099.XSHE’], ‘2010-01-01’, ‘2010-01-30’)

    获取多只股票在某一天的资金流向数据

    get_money_flow([‘000001.XSHE’, ‘000040.XSHE’, ‘000099.XSHE’], ‘2016-04-01’, ‘2016-04-01’)

    — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

    获取股票 000001.XSHE 在日期 2016-06-30 往前 20 个交易日的资金流量数据

    get_money_flow(‘000001.XSHE’, end_date=“2016-06-30”, count=20)

    获取股票 000001.XSHE 往前 20 个交易日的资金流量数据

    get_money_flow(‘000001.XSHE’, count=20)
    get_billboard_list - 获取龙虎榜数据

    get_billboard_list(stock_list, start_date, end_date, count)
    获取指定日期区间内的龙虎榜数据

    参数

    stock_list: 一个股票代码的 list。 当值为 None 时, 返回指定日期的所有股票。
    start_date:开始日期
    end_date: 结束日期
    count: 交易日数量, 可以与 end_date 同时使用, 表示获取 end_date 前 count 个交易日的数据(含 end_date 当日)
    返回值

    pandas.DataFrame, 各 column 的含义如下:

    code: 股票代码
    day: 日期
    direction: ALL 表示『汇总』,SELL 表示『卖』,BUY 表示『买』
    abnormal_code: 异常波动类型
    abnormal_name: 异常波动名称
    sales_depart_name: 营业部名称
    rank: 0 表示汇总, 1~5 表示买一到买5, 6~10 表示卖一到卖五
    buy_value:买入金额
    buy_rate:买入金额占比(买入金额/市场总成交额)
    sell_value:卖出金额
    sell_rate:卖出金额占比(卖出金额/市场总成交额)
    net_value:净额(买入金额 - 卖出金额)
    amount:市场总成交额
    示例

    获取2018-08-01的龙虎榜数据

    get_billboard_list(stock_list=None, end_date = ‘2018-08-01’, count =1)
    get_future_contracts-获取期货可交易合约列表

    get_future_contracts(underlying_symbol, dt)
    获取某期货品种在指定日期下的可交易合约标的列表

    参数

    security: 期货合约品种,如 ‘AG’(白银)
    dt:指定日期,默认为None,不指定时返回当前日期下可交易的合约标的列表
    返回

    某一期货品种在指定日期下的可交易合约标的列表
    示例

    获取某一天的主力合约对应的期货合约代码

    get_future_contracts(‘AU’,‘2017-01-05’)

    输出

    [‘AU1701.XSGE’, ‘AU1702.XSGE’, ‘AU1703.XSGE’, ‘AU1704.XSGE’, ‘AU1706.XSGE’, ‘AU1708.XSGE’, ‘AU1710.XSGE’, ‘AU1712.XSGE’]
    get_dominant_future-获取主力合约对应的标的

    get_dominant_future(underlying_symbol,dt)
    参数

    underlying_symbol: 期货合约品种,如 ‘AG’(白银)
    dt:指定日期参数,获取历史上该日期的主力期货合约
    返回

    主力合约对应的期货合约
    示例

    获取某一天的主力合约对应的期货合约代码,指定日期为’2018-05-06’

    get_dominant_future(‘AU’,‘2018-05-06’)
    ‘AU1812.XSGE’
    什么是主力连续合约

    关于主力合约:

    期货合约的生存周期是有限的,到合约最后交易日后就要交割。因此我们根据持仓量对期货合约进行拼接,形成主力连续合约。

    合约代码:品种代号+9999,例如AG9999(白银主力合约)、Y9999(豆油主力合约)。

    主力合约定义:如果某合约持仓量连续2天为同一个品种中最大的,且该合约相对于当前主力合约为远期合约,则自动变成主力合约。不会在日内进行主力合约切换。

    关于品种指数: 期货品种指数是反映某一品种的价格总体水平和波动情况的指标,由聚宽根据各合约的持仓量作为加权平均计算所得。用户可以通过get_price()接口来调用期货指数的行情信息。

    下面是主要期货交易所的主力合约列表和指数列表:

    上海国际能源交易中心

    名称 主力合约代码 指数合约代码
    原油合约 SC9999.XINE SC8888.XINE
    上期所

    名称 主力合约代码 指数合约代码
    白银合约 AG9999.XSGE AG8888.XSGE
    铝合约 AL9999.XSGE AL8888.XSGE
    黄金合约 AU9999.XSGE AU8888.XSGE
    沥青合约 BU9999.XSGE BU8888.XSGE
    铜合约 CU9999.XSGE CU8888.XSGE
    燃料油合约 FU9999.XSGE FU8888.XSGE
    热轧卷板合约 HC9999.XSGE HC8888.XSGE
    镍合约 NI9999.XSGE NI8888.XSGE
    铅合约 PB9999.XSGE PB8888.XSGE
    螺纹钢合约 RB9999.XSGE RB8888.XSGE
    天然橡胶合约 RU9999.XSGE RU8888.XSGE
    锡合约 SN9999.XSGE SN8888.XSGE
    线材合约 WR9999.XSGE WR8888.XSGE
    锌合约 ZN9999.XSGE ZN8888.XSGE
    纸浆合约 SP9999.XSGE SP8888.XSGE
    郑商所

    名称 主力合约代码 指数合约代码 备注
    苹果合约 AP9999.XZCE AP8888.XZCE
    棉花合约 CF9999.XZCE CF8888.XZCE
    棉纱合约 CY9999.XZCE CY8888.XZCE
    早籼稻合约 ER9999.XZCE ER8888.XZCE
    玻璃合约 FG9999.XZCE FG8888.XZCE
    绿豆合约 GN9999.XZCE GN8888.XZCE
    粳稻谷合约 JR9999.XZCE JR8888.XZCE
    晚籼稻合约 LR9999.XZCE LR8888.XZCE
    甲醇合约 MA9999.XZCE MA8888.XZCE MA为新的甲醇合约代码,自MA1506开始执行
    甲醇合约 ME9999.XZCE ME8888.XZCE ME为旧的甲醇合约代码,自ME1505停止执行
    菜籽油合约 OI9999.XZCE OI8888.XZCE
    普麦合约 PM9999.XZCE PM8888.XZCE
    早籼稻合约 RI9999.XZCE RI8888.XZCE
    菜籽粕合约 RM9999.XZCE RM8888.XZCE
    菜籽油合约 RO9999.XZCE RO8888.XZCE
    油菜籽合约 RS9999.XZCE RS8888.XZCE
    硅铁合约 SF9999.XZCE SF8888.XZCE
    锰硅合约 SM9999.XZCE SM8888.XZCE
    白糖合约 SR9999.XZCE SR8888.XZCE
    PTA合约 TA9999.XZCE TA8888.XZCE
    动力煤合约 TC9999.XZCE TC8888.XZCE
    强麦合约 WH9999.XZCE WH8888.XZCE WH为新的强麦合约代码,自WH1307开始执行
    强麦合约 WS9999.XZCE WS8888.XZCE WS为旧的强麦合约代码,自WS1305停止执行
    硬白小麦合约 WT9999.XZCE WT8888.XZCE
    动力煤合约 ZC9999.XZCE ZC8888.XZCE
    大商所

    名称 主力合约代码 指数合约代码
    豆一合约 A9999.XDCE A8888.XDCE
    豆二合约 B9999.XDCE B8888.XDCE
    胶合板合约 BB9999.XDCE BB8888.XDCE
    玉米合约 C9999.XDCE C8888.XDCE
    玉米淀粉合约 CS9999.XDCE CS8888.XDCE
    纤维板合约 FB9999.XDCE FB8888.XDCE
    铁矿石合约 I9999.XDCE I8888.XDCE
    焦炭合约 J9999.XDCE J8888.XDCE
    鸡蛋合约 JD9999.XDCE JD8888.XDCE
    焦煤合约 JM9999.XDCE JM8888.XDCE
    聚乙烯合约 L9999.XDCE L8888.XDCE
    豆粕合约 M9999.XDCE M8888.XDCE
    棕榈油合约 P9999.XDCE P8888.XDCE
    聚丙烯合约 PP9999.XDCE PP8888.XDCE
    聚氯乙烯合约 V9999.XDCE V8888.XDCE
    豆油合约 Y9999.XDCE Y8888.XDCE
    乙二醇合约 EG9999.XDCE EG8888.XDCE
    获取期货龙虎榜数据

    from jqdatasdk import finance
    finance.run_query(query(finance.FUT_MEMBER_POSITION_RANK).filter(finance.FUT_MEMBER_POSITION_RANK.code==code).limit(n))
    描述:记录各个期货交易所对不同商品下的期货合约,记录该交易所会员持仓排名前20的信息。(每天更新)

    获取期货交易所会员持仓(龙虎榜)

    参数:

    query(finance.FUT_MEMBER_POSITION_RANK):表示从finance.FUT_MEMBER_POSITION_RANK这张表中查询期货龙虎榜数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUT_MEMBER_POSITION_RANK:收录了期货龙虎榜数据,表结构和字段信息如下:
    字段设计

    字段名称 中文名称 字段类型 含义
    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
    filter(finance.FUT_MEMBER_POSITION_RANK.codecode):指定筛选条件,通过finance.FUT_MEMBER_POSITION_RANK.codecode可以指定你想要查询的合约编码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FUT_MEMBER_POSITION_RANK.rank_type_ID==“501001”,表示按成交量排名查询龙虎榜数据;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询A1905.XDCE最新一个交易日的持仓量龙虎榜数据
    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).order_by(finance.FUT_MEMBER_POSITION_RANK.day.desc()).limit(20)
    df=finance.run_query(q)
    print(df)

           day        code rank_type  rank member_name  indicator
    

    0 2018-12-05 A1905.XDCE 持买单量排名 7 兴证期货 1753
    1 2018-12-05 A1905.XDCE 持买单量排名 8 广发期货 1575
    2 2018-12-05 A1905.XDCE 持买单量排名 6 华泰期货 1792
    3 2018-12-05 A1905.XDCE 持买单量排名 5 永安期货 1977
    4 2018-12-05 A1905.XDCE 持买单量排名 4 一德期货 2072
    5 2018-12-05 A1905.XDCE 持买单量排名 3 五矿经易 2424
    6 2018-12-05 A1905.XDCE 持买单量排名 2 国投安信 2959
    7 2018-12-05 A1905.XDCE 持买单量排名 1 华安期货 4525
    8 2018-12-05 A1905.XDCE 持买单量排名 20 宏源期货 621
    9 2018-12-05 A1905.XDCE 持买单量排名 9 广州金控 1271
    10 2018-12-05 A1905.XDCE 持买单量排名 10 国泰君安 1184
    11 2018-12-05 A1905.XDCE 持买单量排名 11 浙商期货 1121
    12 2018-12-05 A1905.XDCE 持买单量排名 18 中国国际 681
    13 2018-12-05 A1905.XDCE 持买单量排名 17 南华期货 746
    14 2018-12-05 A1905.XDCE 持买单量排名 16 申银万国 772
    15 2018-12-05 A1905.XDCE 持买单量排名 15 北京首创 921
    16 2018-12-05 A1905.XDCE 持买单量排名 14 中信期货 1013
    17 2018-12-05 A1905.XDCE 持买单量排名 13 东证期货 1067
    18 2018-12-05 A1905.XDCE 持买单量排名 12 信达期货 1079
    19 2018-12-05 A1905.XDCE 持买单量排名 19 徽商期货 625
    获取期货仓单数据

    from jqdatasdk import finance
    finance.run_query(query(finance.FUT_WAREHOUSE_RECEIPT).filter(finance.FUT_WAREHOUSE_RECEIPT.underlying_code==underlying_code).limit(n))
    描述:期货仓单是指由期货交易所指定交割仓库,按照期货交易所指定的程序,签发的符合合约规定质量的实物提货凭证。记录了交易所所有期货实物的库存情况以及变更情况。

    参数:

    query(finance.FUT_WAREHOUSE_RECEIPT):表示从finance.FUT_WAREHOUSE_RECEIPT这张表中查询期货仓单数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUT_WAREHOUSE_RECEIPT:收录了期货仓单数据,表结构和字段信息如下:
    字段设计

    字段名称 中文名称 字段类型 注释
    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
    filter(finance.FUT_WAREHOUSE_RECEIPT.underlying_codeunderlying_code):指定筛选条件,通过finance.FUT_WAREHOUSE_RECEIPT.underlying_codeunderlying_code可以指定你想要查询的品种;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询品种为铜(‘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.day.desc())
    df=finance.run_query(q)
    print(df)

           day underlying_code warehouse_name  warehouse_receipt_number
    

    0 2018-12-05 CU 上海-上海裕强 0
    1 2018-12-05 CU 上海-上港物流 3524
    2 2018-12-05 CU 上海-世天威洋山 0
    3 2018-12-05 CU 上海-中储临港(保税) 0
    4 2018-12-05 CU 上海-中储吴淞 5238
    5 2018-12-05 CU 上海-中储大场 224
    6 2018-12-05 CU 上海-中海华东宝山 2804
    7 2018-12-05 CU 上海-同盛松江 177
    8 2018-12-05 CU 上海-同盛洋山(保税) 0
    9 2018-12-05 CU 上海-国储外高桥 0
    10 2018-12-05 CU 上海-国储天威 199
    11 2018-12-05 CU 上海-外运华东张华浜 25
    12 2018-12-05 CU 上海-期晟公司 200
    13 2018-12-05 CU 上海-裕强闵行 2111
    14 2018-12-05 CU 广东-八三O黄浦 9141
    15 2018-12-05 CU 广东-南储仓储 5025
    16 2018-12-05 CU 江苏-上港物流苏州 0
    17 2018-12-05 CU 江苏-中储无锡 10517
    18 2018-12-05 CU 江苏-常州融达 6787
    19 2018-12-05 CU 江苏-无锡国联 1349
    20 2018-12-05 CU 江苏-添马行物流 202
    21 2018-12-05 CU 江西-江西国储 1238
    22 2018-12-05 CU 浙江-国储837处 4205
    23 2018-12-05 CU 浙江-宁波九龙仓 0
    上市公司分红送股(除权除息)数据

    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_datereport_date):指定筛选条件,通过finance.STK_XR_XD.report_datereport_date可以指定你想要查询的分红报告期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_XR_XD.code==‘000001.XSHE’,表示筛选股票编码为000001.XSHE的数据; 多个筛选条件用英文逗号分隔。

    order_by(finance.STK_XR_XD.report_date): 将返回结果按分红报告期排序

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个dataframe,每一行对应数据表中的一条数据,列索引是你所查询的字段名称。
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    q=query(finance.STK_XR_XD).filter(finance.STK_XR_XD.report_date>=‘2015-01-01’).limit(10)
    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 中期分红
    5 24 300000062 广东德美精细化工集团股份有限公司 002054.XSHE 2017-12-31 年度分红
    6 43 300000123 深圳市得润电子股份有限公司 002055.XSHE 2015-06-30 中期分红
    7 44 300000123 深圳市得润电子股份有限公司 002055.XSHE 2015-12-31 年度分红
    8 45 300000123 深圳市得润电子股份有限公司 002055.XSHE 2016-06-30 中期分红
    9 46 300000123 深圳市得润电子股份有限公司 002055.XSHE 2016-12-31 年度分红 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
    5 2018-04-27 10派0.47元(含税) 41923.0828
    6 2015-07-25 不分配不转增 NaN
    7 2016-04-23 不分配不转增 NaN
    8 2016-08-27 不分配不转增 NaN
    9 2017-04-29 10派0.2元(含税) 45051.208 shareholders_plan_pub_date …
    0 NaN …
    1 2016-05-18 …
    2 NaN …
    3 2017-05-17 …
    4 NaN …
    5 2018-05-19 …
    6 NaN …
    7 2016-05-14 …
    8 NaN …
    9 2017-05-20 … float_capital_before_transfer float_capital_after_transfer note
    0 NaN NaN NaN
    1 NaN NaN NaN
    2 NaN NaN NaN
    3 NaN NaN NaN
    4 NaN NaN NaN
    5 NaN NaN NaN
    6 NaN NaN NaN
    7 NaN NaN NaN
    8 NaN NaN NaN
    9 NaN NaN NaN

    a_transfer_arrival_date b_transfer_arrival_date b_dividend_arrival_date
    0 NaN NaN NaN
    1 NaN NaN NaN
    2 NaN NaN NaN
    3 NaN NaN NaN
    4 NaN NaN NaN
    5 NaN NaN NaN
    6 NaN NaN NaN
    7 NaN NaN NaN
    8 NaN NaN NaN
    9 NaN NaN NaN

    note_of_no_dividend plan_progress_code plan_progress bonus_cancel_pub_date
    0 NaN 313001 董事会预案 NaN
    1 NaN 313002 实施方案 NaN
    2 NaN 313001 董事会预案 NaN
    3 NaN 313002 实施方案 NaN
    4 NaN 313001 董事会预案 NaN
    5 NaN 313002 实施方案 NaN
    6 NaN 313001 董事会预案 NaN
    7 NaN 313003 股东大会预案 NaN
    8 NaN 313001 董事会预案 NaN
    9 NaN 313002 实施方案 NaN
    沪深市场每日成交概况

    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)
    记录沪深两市股票交易的成交情况,包括市值、成交量,市盈率等情况。

    参数:

    query(finance.STK_EXCHANGE_TRADE_INFO):表示从finance.STK_EXCHANGE_TRADE_INFO这张表中查询沪深两市股票交易的成交情况,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:query简易教程
    finance.STK_EXCHANGE_TRADE_INFO:代表沪深市场每日成交概况表,记录沪深两市股票交易的成交情况,包括市值、成交量,市盈率等情况,表结构和字段信息如下:
    字段名称 中文名称 字段类型 能否为空 含义
    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.datedate):指定筛选条件,通过finance.STK_EXCHANGE_TRADE_INFO.datedate可以指定你想要查询的交易日期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EXCHANGE_TRADE_INFO.exchange_code==322001,表示筛选市场编码为322001(上海市场)的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个dataframe,每一行对应数据表中的一条数据,列索引是你所查询的字段名称。
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    q=query(finance.STK_EXCHANGE_TRADE_INFO).filter(finance.STK_EXCHANGE_TRADE_INFO.date>=‘2015-01-01’).limit(10)
    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
    4 14851 322005 深市主板 2015-01-05 57235.450000
    5 14852 322004 深圳市场 2015-01-05 130625.770000
    6 14853 322007 创业板 2015-01-05 21603.430000
    7 14854 322002 上海A股 2015-01-06 252786.779098
    8 14855 322003 上海B股 2015-01-06 879.903673
    9 14856 322001 上海市场 2015-01-06 253666.682771

    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
    4 47395.540000 1.412500e+06 1598.710000 579.6500 26.010
    5 96936.140000 NaN 2789.140000 NaN 34.600
    6 12992.170000 1.793000e+05 344.530000 140.9500 63.790
    7 228171.900720 5.011329e+06 5321.072770 1817.5373 16.581
    8 879.903673 6.242410e+03 3.806482 3.0057 15.922
    9 229051.804393 5.021845e+06 5328.157451 1820.6523 16.579

    turnover_ratio
    0 2.1486
    1 0.4856
    2 2.1385
    3 NaN
    4 NaN
    5 3.2800
    6 NaN
    7 2.0226
    8 0.4133
    9 2.0128
    市场通(沪港通、深港通和港股通)

    AH股价格对比

    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股上市的股票的价格比对。

    参数:

    query(finance.STK_AH_PRICE_COMP):表示从finance.STK_AH_PRICE_COMP这张表中查询同时在A股和H股上市的股票的价格对比,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.STK_AH_PRICE_COMP:代表A股和H股的价格对比表,收录了同时在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股港币价格*港币兑人民币的汇率)
    filter(finance.STK_AH_PRICE_COMP.a_codea_code):指定筛选条件,通过finance.STK_AH_PRICE_COMP.a_codea_code可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_AH_PRICE_COMP.day>=‘2015-01-01’,表示筛选日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
    order_by(finance.STK_AH_PRICE_COMP.day): 将返回结果按日期排序
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    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(10)
    df=finance.run_query(q)
    print(df)

       id         day  name       a_code h_code a_price h_price  \
    

    0 256697 2014-11-03 万科企业 000002.XSHE 02202 9.3 14.72
    1 257025 2014-11-04 万科企业 000002.XSHE 02202 9.39 14.9
    2 242534 2014-11-05 万科企业 000002.XSHE 02202 9.29 14.88
    3 222118 2014-11-06 万科企业 000002.XSHE 02202 9.33 14.62
    4 221046 2014-11-07 万科企业 000002.XSHE 02202 9.4 14.54
    5 254498 2014-11-10 万科企业 000002.XSHE 02202 9.58 14.26
    6 224246 2014-11-11 万科企业 000002.XSHE 02202 9.6 14.08
    7 232273 2014-11-12 万科企业 000002.XSHE 02202 9.71 14.04
    8 245124 2014-11-13 万科企业 000002.XSHE 02202 9.51 13.84
    9 249818 2014-11-14 万科企业 000002.XSHE 02202 9.67 14.28

    a_quote_change h_quote_change h_a_comp
    0 -0.0106 1.7981 0.7964
    1 0.0097 1.2228 0.7939
    2 -0.0106 -0.1342 0.7869
    3 0.0043 -1.7473 0.8036
    4 0.0075 -0.5472 0.8137
    5 0.0192 -1.9257 0.8486
    6 0.0021 -1.2623 0.8609
    7 0.0115 -0.2841 0.873
    8 -0.0206 -1.4245 0.8675
    9 0.0168 3.1792 0.8553
    合格证券变动记录

    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(分别为纳入和剔除)
    filter(finance.STK_EL_CONST_CHANGE.codecode):指定筛选条件,通过finance.STK_EL_CONST_CHANGE.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EL_CONST_CHANGE.change_date>=‘2015-01-01’,表示筛选变更日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
    order_by(finance.STK_EL_CONST_CHANGE.change_date): 将返回结果按变更日期排序
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    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(10)
    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 浦发银行 NaN XSHG 2014-11-17
    1 537 310001 沪股通 600004.XSHG 白云机场 NaN XSHG 2014-11-17
    2 539 310001 沪股通 600007.XSHG 中国国贸 NaN XSHG 2014-11-17
    3 540 310001 沪股通 600008.XSHG 首创股份 NaN XSHG 2014-11-17
    4 541 310001 沪股通 600009.XSHG 上海机场 NaN XSHG 2014-11-17
    5 542 310001 沪股通 600010.XSHG 包钢股份 NaN XSHG 2014-11-17
    6 543 310001 沪股通 600011.XSHG 华能国际 NaN XSHG 2014-11-17
    7 544 310001 沪股通 600012.XSHG 皖通高速 NaN XSHG 2014-11-17
    8 545 310001 沪股通 600015.XSHG 华夏银行 NaN XSHG 2014-11-17
    9 546 310001 沪股通 600016.XSHG 民生银行 NaN XSHG 2014-11-17
    市场通交易日历

    from jqdatasdk import finance finance.run_query(query(finance.STK_EXCHANGE_LINK_CALENDAR).filter(finance.STK_EXCHANGE_LINK_CALENDAR.day==day).limit(n))
    记录沪港通、深港通和港股通每天是否开市。

    参数:

    query(finance.STK_EXCHANGE_LINK_CALENDAR):表示从finance.STK_EXCHANGE_LINK_CALENDAR这张表中查询市场沪港通、深港通和港股通交易日历的信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.STK_EXCHANGE_LINK_CALENDAR:代表市场通交易日历表,记录沪港通、深港通和港股通每天是否开市,包括交易日期,交易日类型等,表结构和字段信息如下:
    字段 名称 类型 非空 备注/示例
    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 港股通(深)
    filter(finance.STK_EXCHANGE_LINK_CALENDAR.dayday):指定筛选条件,通过finance.STK_EXCHANGE_LINK_CALENDAR.dayday可以指定你想要查询的日期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EXCHANGE_LINK_CALENDAR.type_id==312001,表示筛选交易日类型为正常交易日的数据;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    q=query(finance.STK_EXCHANGE_LINK_CALENDAR).filter(finance.STK_EXCHANGE_LINK_CALENDAR.day>=‘2015-01-01’).limit(10)
    df=finance.run_query(q)
    print(df)

        id       day   link_id    link_name type_id    type
    

    0 1244830 2015-01-01 310001 沪股通 312003 全天休市
    1 145 2015-01-01 310003 港股通(沪) 312003 全天休市
    2 1244831 2015-01-02 310001 沪股通 312003 全天休市
    3 146 2015-01-02 310003 港股通(沪) 312003 全天休市
    4 1244832 2015-01-03 310001 沪股通 312003 全天休市
    5 147 2015-01-03 310003 港股通(沪) 312003 全天休市
    6 1244833 2015-01-04 310001 沪股通 312003 全天休市
    7 148 2015-01-04 310003 港股通(沪) 312003 全天休市
    8 1244834 2015-01-05 310001 沪股通 312001 正常交易日
    9 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 港股通(深)
    filter(finance.STK_EL_TOP_ACTIVATE.codecode):指定筛选条件,通过finance.STK_EL_TOP_ACTIVATE.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EL_TOP_ACTIVATE.day>=‘2015-01-01’,表示筛选日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    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))
    记录沪股通、深股通和港股通每个交易日的成交与额度的控制情况。

    参数:

    query(finance.STK_ML_QUOTA):表示从finance.STK_ML_QUOTA这张表中查询沪港通、深港通和港股通的成交与额度信息,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用英文逗号进行分隔;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.STK_ML_QUOTA:代表了市场通成交与额度信息表,记录了沪港通、深港通和港股通成交与额度的信息,包括买入、卖出等,表结构和字段信息如下:
    字段 名称 类型 备注/示例
    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 港股通(深)
    filter(finance.STK_ML_QUOTA.dayday):指定筛选条件,通过finance.STK_ML_QUOTA.dayday可以指定你想要查询的日期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_ML_QUOTA.link_id==310001,表示筛选市场通编码为310001(沪股通)的数据;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    q=query(finance.STK_ML_QUOTA).filter(finance.STK_ML_QUOTA.day>=‘2015-01-01’).limit(10)
    df=finance.run_query(q)
    print(df)

    id         day link_id    link_name     currency_id   currency_name  buy_amount  \
    

    0 183 2015-01-05 310001 沪股通 110001 人民币 40.01
    1 271 2015-01-05 310003 港股通(沪) 110003 港元 20.51
    2 182 2015-01-06 310001 沪股通 110001 人民币 32.4
    3 270 2015-01-06 310003 港股通(沪) 110003 港元 11.15
    4 181 2015-01-07 310001 沪股通 110001 人民币 20.43
    5 269 2015-01-07 310003 港股通(沪) 110003 港元 10.28
    6 180 2015-01-08 310001 沪股通 110001 人民币 22.31
    7 268 2015-01-08 310003 港股通(沪) 110003 港元 7.86
    8 179 2015-01-09 310001 沪股通 110001 人民币 34.7
    9 267 2015-01-09 310003 港股通(沪) 110003 港元 11.16

    buy_volume sell_amount sell_volume sum_amount sum_volume quota
    0 96819.0 19.98 48515.0 59.99 145334.0 NaN
    1 33888.0 5.22 12241.0 25.73 46129.0 NaN
    2 67392.0 32.64 76188.0 65.04 143580.0 NaN
    3 22180.0 2.88 6806.0 14.03 28986.0 NaN
    4 62539.0 17.01 39833.0 37.44 102372.0 NaN
    5 21663.0 2.85 6296.0 13.13 27959.0 NaN
    6 53725.0 21.74 62294.0 44.05 116019.0 NaN
    7 15741.0 2.95 7050.0 10.81 22791.0 NaN
    8 128236.0 20.17 51436.0 54.87 179672.0 NaN
    9 21465.0 4.47 8845.0 15.63 30310.0 NaN

    quota_balance quota_daily quota_daily_balance
    0 NaN 130.0 83.11
    1 NaN 105.0 87.7
    2 NaN 130.0 109.09
    3 NaN 105.0 95.32
    4 NaN 130.0 112.47
    5 NaN 105.0 95.91
    6 NaN 130.0 119.22
    7 NaN 105.0 98.63
    8 NaN 130.0 113.83
    9 NaN 105.0 96.98
    市场通汇率表

    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 港股通(深)
    filter(finance.STK_EXCHANGE_LINK_RATE.dayday):指定筛选条件,通过finance.STK_EXCHANGE_LINK_RATE.dayday可以指定你想要查询的日期;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EXCHANGE_LINK_RATE.link_id==310001,表示筛选市场通编码为310001(沪股通)的数据;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行

    不能进行连表查询,即同时查询多张表的数据

    示例:

    q=query(finance.STK_EXCHANGE_LINK_RATE).filter(finance.STK_EXCHANGE_LINK_RATE.day>=‘2015-01-01’).limit(10)
    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
    4 35 2015-01-09 310003 港股通(沪) RMB HKD
    5 36 2015-01-12 310003 港股通(沪) RMB HKD
    6 37 2015-01-13 310003 港股通(沪) RMB HKD
    7 38 2015-01-14 310003 港股通(沪) RMB HKD
    8 39 2015-01-15 310003 港股通(沪) RMB HKD
    9 40 2015-01-16 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
    4 0.7776 0.8258 0.802 0.8014
    5 0.7771 0.8251 0.80176 0.80044
    6 0.7758 0.8238 0.7999 0.7997
    7 0.7755 0.8235 0.79973 0.79927
    8 0.7752 0.8232 0.79983 0.79857
    9 0.7744 0.8222 0.79597 0.80063
    获取国际指数行情数据

    from jqdatasdk import finance
    finance.run_query(query(finance.GLOBAL_IDX_DAILY).filter(finance.GLOBAL_IDX_DAILY.code==code).limit(n))
    获取港美股指数日行情数据

    参数

    query(finance.GLOBAL_IDX_DAILY):表示从finance.GLOBAL_IDX_DAILY这张表中查询港美股指数日行情的数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.GLOBAL_IDX_DAILY:收录了港美股各个指数数据,表结构和字段信息如下:
    字段设计

    字段 名称 类型 释义
    code 指数代码 varchar(64) 800000.XHKG-恒生指数;800100.XHKG-国企指数;800151.XHKG-红筹指数;INX-标普500指数;IXIC-纳斯达克综合指数;DJI-道琼斯指数
    name 指数名称 varchar(64)
    day 日期 date
    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)
    pre_close 前收价 decimal(20,6)
    filter(finance.GLOBAL_IDX_DAILY.codecode):指定筛选条件,通过finance.GLOBAL_IDX_DAILY.codecode可以指定您想要查询的指数代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.GLOBAL_IDX_DAILY.day.desc(),表示按天倒序排名。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    获取港美股指数日行情数据示例:

    #查询美股指数标普500(‘INX’)近十天的指数数据
    q=query(finance.GLOBAL_IDX_DAILY).filter(finance.GLOBAL_IDX_DAILY.code==‘INX’).order_by(finance.GLOBAL_IDX_DAILY.day.desc()).limit(10)
    df=finance.run_query(q)
    print(df)

      id code     name         day     open    close      low     high  \
    

    0 99564 INX 标普500指数 2018-12-04 2782.43 2700.06 2697.18 2785.93
    1 99525 INX 标普500指数 2018-12-03 2790.50 2790.37 2773.38 2800.18
    2 99524 INX 标普500指数 2018-11-30 2737.76 2760.17 2732.76 2760.88
    3 99523 INX 标普500指数 2018-11-29 2736.97 2737.76 2722.94 2753.75
    4 99522 INX 标普500指数 2018-11-28 2691.45 2743.79 2684.38 2744.00
    5 99521 INX 标普500指数 2018-11-27 2663.75 2682.17 2655.89 2682.53
    6 99520 INX 标普500指数 2018-11-26 2649.97 2673.45 2649.97 2674.35
    7 99519 INX 标普500指数 2018-11-23 2633.36 2632.56 2631.09 2647.55
    8 99518 INX 标普500指数 2018-11-21 2657.74 2649.93 2649.82 2670.73
    9 99517 INX 标普500指数 2018-11-20 2654.60 2641.89 2631.52 2669.44

         volume  change_pct  pre_close  
    

    0 2.990888e+09 -0.032365 2790.37
    1 2.752398e+09 0.010941 2760.17
    2 3.061711e+09 0.008186 2737.76
    3 2.102760e+09 -0.002198 2743.79
    4 2.464244e+09 0.022974 2682.17
    5 2.164784e+09 0.003262 2673.45
    6 2.223764e+09 0.015532 2632.56
    7 9.966006e+08 -0.006555 2649.93
    8 2.052551e+09 0.003043 2641.89
    9 2.887816e+09 -0.018151 2690.73
    获取单季度/年度财务数据

    get_fundamentals - 查询财务数据

    get_fundamentals(query_object, date=None, statDate=None)
    查询财务数据,详细的数据字段描述请点击财务数据文档查看

    date和statDate参数只能传入一个:

    传入date时, 查询指定日期date收盘后所能看到的最近(对市值表来说, 最近一天, 对其他表来说, 最近一个季度)的数据, 我们会查找上市公司在这个日期之前(包括此日期)发布的数据, 不会有未来函数.
    传入statDate时, 查询 statDate 指定的季度或者年份的财务数据. 注意:
    由于公司发布财报不及时, 一般是看不到当季度或年份的财务报表的, 回测中使用这个数据可能会有未来函数, 请注意规避.
    由于估值表每天更新, 当按季度或者年份查询时, 返回季度或者年份最后一天的数据
    由于“资产负债数据”这个表是存量性质的, 查询年度数据是返回第四季度的数据。
    银行业、券商、保险专项数据只有年报数据,需传入statDate参数,当传入 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: 财报统计的季度或者年份, 一个字符串, 有两种格式:

    季度: 格式是: 年 + ‘q’ + 季度序号, 例如: ‘2015q1’, ‘2013q4’.
    年份: 格式就是年份的数字, 例如: ‘2015’, ‘2016’.
    返回 返回一个 [pandas.DataFrame], 每一行对应数据库返回的每一行(可能是几个表的联合查询结果的一行), 列索引是你查询的所有字段 注意:

    为了防止返回数据量过大, 我们每次最多返回10000行
    当相关股票上市前、退市后,财务数据返回各字段为空
    示例

    查询’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])

    获取多只股票在某一日期的市值, 利润

    df = get_fundamentals(query(
    valuation, income
    ).filter(
    # 这里不能使用 in 操作, 要使用in_()函数
    valuation.code.in_([‘000001.XSHE’, ‘600000.XSHG’])
    ), date=‘2015-10-15’)

    选出所有的总市值大于1000亿元, 市盈率小于10, 营业总收入大于200亿元的股票

    df = get_fundamentals(query(
    valuation.code, valuation.market_cap, valuation.pe_ratio, income.total_operating_revenue
    ).filter(
    valuation.market_cap > 1000,
    valuation.pe_ratio < 10,
    income.total_operating_revenue > 2e10
    ).order_by(
    # 按市值降序排列
    valuation.market_cap.desc()
    ).limit(
    # 最多返回100个
    100
    ), date=‘2015-10-15’)

    使用 or_ 函数: 查询总市值大于1000亿元 或者 市盈率小于10的股票

    from sqlalchemy.sql.expression import or_
    get_fundamentals(query(
    valuation.code
    ).filter(
    or_(
    valuation.market_cap > 1000,
    valuation.pe_ratio < 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=‘2014q’+str(i)) for i in range(1, 5)]

    查询平安银行2014年的年报

    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=‘2014’)
    get_fundamentals_continuously - 查询多日的财务数据

    get_fundamentals_continuously(query_object, end_date=None,count=None)
    查询财务数据,详细的数据字段描述请点击财务数据文档查看

    参数

    query_object: 一个sqlalchemy.orm.query.Query对象,可以通过全局的 query 函数获取 Query 对象,query简易教程。
    end_date: 查询日期, 一个字符串(格式类似’2015-10-15’)或者[datetime.date]/[datetime.datetime]对象, 可以是None, 如果传入的 date 不是交易日, 则使用这个日期之前的最近的一个交易日
    count: 获取 end_date 前 count 个日期的数据
    返回 返回一个 [pandas.Panel]

    出于性能方面考虑,我们做出了返回总条数不超过10000条的限制。 也就是说:查询的股票数量*count 要小于10000。 否则,返回的数据会不完整。

    示例

    q = query(valuation.turnover_ratio,
    valuation.market_cap,
    indicator.eps
    ).filter(valuation.code.in_([‘000001.XSHE’, ‘600000.XSHG’]))

    panel = get_fundamentals_continuously(q, end_date=‘2018-01-01’, count=5)

    panel

    <class ‘pandas.core.panel.Panel’>
    Dimensions: 3 (items) x 5 (major_axis) x 2 (minor_axis)
    Items axis: turnover_ratio to eps
    Major_axis axis: 2017-12-25 to 2017-12-29
    Minor_axis axis: 000001.XSHE to 600000.XSHG

    panel.minor_xs(‘600000.XSHG’)

    turnover_ratio market_cap eps
    day
    2017-12-25 0.0687 3695.4270 0.48
    2017-12-26 0.0542 3710.1030 0.48
    2017-12-27 0.1165 3704.2324 0.48
    2017-12-28 0.0849 3680.7510 0.48
    2017-12-29 0.0582 3695.4270 0.48

    panel.major_xs(‘2017-12-25’)

    turnover_ratio market_cap eps
    code
    000001.XSHE 0.9372 2275.0796 0.38
    600000.XSHG 0.0687 3695.4270 0.48

    panel.xs(‘turnover_ratio’,axis=0)

    axis=0 表示 items axis; axis=1 表示 major axis; axis=2 表示 minor axis

    code 000001.XSHE 600000.XSHG
    day
    2017-12-25 0.9372 0.0687
    2017-12-26 0.6642 0.0542
    2017-12-27 0.8078 0.1165
    2017-12-28 0.9180 0.0849
    2017-12-29 0.5810 0.0582
    市值数据(每日更新)

    每天更新,可以使用get_fundamentals(query(valuation),date),指定date为某一交易日,获取该交易日的估值数据。查询方法详见get_fundamentals()接口说明

    表名: valuation

    列名 列的含义 解释 公式
    code 股票代码 带后缀.XSHE/.XSHG
    day 日期 取数据的日期
    capitalization 总股本(万股) 公司已发行的普通股股份总数(包含A股,B股和H股的总股本)
    circulating_cap 流通股本(万股) 公司已发行的境内上市流通、以人民币兑换的股份总数(A股市场的流通股本)
    market_cap 总市值(亿元) 总市值是指在某特定的时间内,交易所挂牌交易全部证券(以总股本计)按当时价格计算的证券总值 A股合计* A股收盘价 + B股合计 * B股收盘价 * 外汇汇率 + H股合计H股收盘价外汇汇率 + (总股本 - 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) 每股股价与每股净资产的比率 市净率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/归属母公司股东的权益。
    ps_ratio 市销率(PS, TTM) 市销率为股票价格与每股销售收入之比,市销率越小,通常被认为投资价值越高。 市销率TTM=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/营业总收入TTM
    pcf_ratio 市现率(PCF, 现金净流量TTM) 每股市价为每股现金净流量的倍数 市现率=(股票在指定交易日期的收盘价 * 当日人民币外汇牌价 * 截至当日公司总股本)/现金及现金等价物净增加额TTM
    财务指标数据

    按季度更新, 统计周期是一季度。可以使用get_fundamentals(query(indicator),date,statDate)查询,查询方法详见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%。
    获取报告期财务数据

    报告期财务数据是上市公司定期公告中按照报告期统计的财务数据,使用run_query()方法进行查询,各类型报表的使用方法如下。

    业绩预告

    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.codecode):指定筛选条件,通过finance.STK_FIN_FORCAST.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_FIN_FORCAST.pub_date>=‘2015-01-01’,表示公告日期在2015年1月1日之后发布的业绩预告;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台2015年之后公布的业绩预告信息,限定返回条数为10条
    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’).limit(10)
    df=finance.run_query(q)
    print(df)

       id  company_id         code         name           end_date  report_type_id  \
    

    0 138256 420600519 600519.XSHG 贵州茅台酒股份有限公司 2017-12-31 304004

     report_type    pub_date  type_id    type      profit_min profit_max  \
    

    0 四季度预告 2018-01-31 305001 业绩大幅上升 None None

    profit_last  profit_ratio_min  profit_ratio_max  \
    

    0 1.671836e+10 58 58

                                     content  
    

    0 预计公司2017年01-12月归属于上市公司股东的净利润与上年同期相比增长58%。
    合并利润表

    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:代表上市公司合并利润表,收录了上市公司定期公告中公布的合并利润表数据,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.STK_INCOME_STATEMENT.codecode):指定筛选条件,通过finance.STK_INCOME_STATEMENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_INCOME_STATEMENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司公布的合并利润表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台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(20)
    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
    8 贵州茅台酒股份有限公司 600519.XSHG 2017-04-15 2016-01-01 2016-12-31
    9 贵州茅台酒股份有限公司 600519.XSHG 2017-04-25 2017-01-01 2017-03-31
    10 贵州茅台酒股份有限公司 600519.XSHG 2017-07-28 2017-01-01 2017-06-30
    11 贵州茅台酒股份有限公司 600519.XSHG 2017-10-26 2017-01-01 2017-09-30
    12 贵州茅台酒股份有限公司 600519.XSHG 2018-03-28 2017-01-01 2017-12-31
    13 贵州茅台酒股份有限公司 600519.XSHG 2018-04-28 2018-01-01 2018-03-31
    14 贵州茅台酒股份有限公司 600519.XSHG 2018-08-02 2018-01-01 2018-06-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
    8 4.015508e+10 1.671836e+10
    9 1.391341e+10 6.123119e+09
    10 2.549390e+10 1.125086e+10
    11 4.448737e+10 1.998385e+10
    12 6.106276e+10 2.707936e+10
    13 1.839526e+10 8.506907e+09
    14 3.525146e+10 1.576419e+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:代表上市公司母公司利润表,收录了上市公司母公司的利润信息,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.STK_INCOME_STATEMENT_PARENT.codecode):指定筛选条件,通过finance.STK_INCOME_STATEMENT_PARENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_INCOME_STATEMENT_PARENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司公布的母公司利润表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台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(20)
    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
    8 贵州茅台酒股份有限公司 600519.XSHG 2017-04-15 2016-01-01 2016-12-31
    9 贵州茅台酒股份有限公司 600519.XSHG 2017-04-25 2017-01-01 2017-03-31
    10 贵州茅台酒股份有限公司 600519.XSHG 2017-07-28 2017-01-01 2017-06-30
    11 贵州茅台酒股份有限公司 600519.XSHG 2017-10-26 2017-01-01 2017-09-30
    12 贵州茅台酒股份有限公司 600519.XSHG 2018-03-28 2017-01-01 2017-12-31
    13 贵州茅台酒股份有限公司 600519.XSHG 2018-04-28 2018-01-01 2018-03-31
    14 贵州茅台酒股份有限公司 600519.XSHG 2018-08-02 2018-01-01 2018-06-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
    8 1.289781e+10 9.251255e+09
    9 4.992937e+09 1.023919e+09
    10 9.310346e+09 8.967873e+09
    11 1.720851e+10 1.074275e+10
    12 2.192229e+10 1.079946e+10
    13 6.005294e+09 9.480740e+08
    14 1.162651e+10 5.081753e+10
    合并现金流量表

    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:代表上市公司合并现金流量表,收录了上市公司定期公告中公布的合并现金流量表数据,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.STK_CASHFLOW_STATEMENT.codecode):指定筛选条件,通过finance.STK_CASHFLOW_STATEMENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_CASHFLOW_STATEMENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司合并现金流量表数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台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(20)
    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
    8 贵州茅台酒股份有限公司 600519.XSHG 2017-04-15 2016-01-01 2016-12-31
    9 贵州茅台酒股份有限公司 600519.XSHG 2017-04-25 2017-01-01 2017-03-31
    10 贵州茅台酒股份有限公司 600519.XSHG 2017-07-28 2017-01-01 2017-06-30
    11 贵州茅台酒股份有限公司 600519.XSHG 2017-10-26 2017-01-01 2017-09-30
    12 贵州茅台酒股份有限公司 600519.XSHG 2018-03-28 2017-01-01 2017-12-31
    13 贵州茅台酒股份有限公司 600519.XSHG 2018-04-28 2018-01-01 2018-03-31
    14 贵州茅台酒股份有限公司 600519.XSHG 2018-08-02 2018-01-01 2018-06-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
    8 3.745125e+10 -1.102501e+09 -8.334512e+09
    9 6.108975e+09 -3.003397e+08 NaN
    10 6.935360e+09 -4.706886e+08 -3.640000e+08
    11 2.278677e+10 -7.477752e+08 -8.893178e+09
    12 2.215304e+10 -1.120645e+09 -8.899178e+09
    13 4.935501e+09 -5.919110e+08 NaN
    14 1.773503e+10 -7.397817e+08 -1.385492e+10
    母公司现金流量表

    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:代表上市公司母公司现金流量表,收录了上市公司定期公告中公布的母公司现金流量表数据,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.STK_CASHFLOW_STATEMENT_PARENT.codecode)**:指定筛选条件,通过finance.STK_CASHFLOW_STATEMENT_PARENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_CASHFLOW_STATEMENT_PARENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司公布的母公司现金流量表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台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(20)
    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
    8 贵州茅台酒股份有限公司 600519.XSHG 2017-04-15 2016-01-01 2016-12-31
    9 贵州茅台酒股份有限公司 600519.XSHG 2017-04-25 2017-01-01 2017-03-31
    10 贵州茅台酒股份有限公司 600519.XSHG 2017-07-28 2017-01-01 2017-06-30
    11 贵州茅台酒股份有限公司 600519.XSHG 2017-10-26 2017-01-01 2017-09-30
    12 贵州茅台酒股份有限公司 600519.XSHG 2018-03-28 2017-01-01 2017-12-31
    13 贵州茅台酒股份有限公司 600519.XSHG 2018-04-28 2018-01-01 2018-03-31
    14 贵州茅台酒股份有限公司 600519.XSHG 2018-08-02 2018-01-01 2018-06-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
    8 7.157030e+08 8.562947e+09 -7.818445e+09
    9 -2.124767e+09 -3.119164e+08 NaN
    10 -1.473598e+09 -4.806175e+08 NaN
    11 8.751075e+08 6.337564e+09 -8.525814e+09
    12 1.565579e+09 5.981627e+09 -8.525814e+09
    13 -2.814955e+08 -5.779401e+08 NaN
    14 -2.121182e+09 1.535743e+10 -1.381692e+10
    合并资产负债表

    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:代表上市公司合并资产负债表信息,收录了上市公司定期公告中公布的合并资产负债表数据,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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_comprehesive_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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.STK_BALANCE_SHEET.codecode):指定筛选条件,通过finance.STK_BALANCE_SHEET.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_BALANCE_SHEET.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司公布的合并资产负债表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台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(20)
    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
    8 贵州茅台酒股份有限公司 600519.XSHG 2017-04-15 2016-01-01 2016-12-31
    9 贵州茅台酒股份有限公司 600519.XSHG 2017-04-25 2017-01-01 2017-03-31
    10 贵州茅台酒股份有限公司 600519.XSHG 2017-07-28 2017-01-01 2017-06-30
    11 贵州茅台酒股份有限公司 600519.XSHG 2017-10-26 2017-01-01 2017-09-30
    12 贵州茅台酒股份有限公司 600519.XSHG 2018-03-28 2017-01-01 2017-12-31
    13 贵州茅台酒股份有限公司 600519.XSHG 2018-04-28 2018-01-01 2018-03-31
    14 贵州茅台酒股份有限公司 600519.XSHG 2018-08-02 2018-01-01 2018-06-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
    8 6.685496e+10 1.129345e+11 3.703600e+10
    9 7.270833e+10 1.189787e+11 3.652483e+10
    10 7.363535e+10 1.203827e+11 4.131949e+10
    11 8.096468e+10 1.277800e+11 3.939919e+10
    12 8.786887e+10 1.346101e+11 3.859049e+10
    13 8.721137e+10 1.344049e+11 2.925526e+10
    14 8.366017e+10 1.299148e+11 3.341036e+10
    母公司资产负债表

    from jqdata 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:代表上市公司母公司资产负债表信息,收录了上市公司定期公告中公布的母公司资产负债表数据,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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_comprehesive_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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.STK_BALANCE_SHEET_PARENT.codecode):指定筛选条件,通过finance.STK_BALANCE_SHEET_PARENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_BALANCE_SHEET_PARENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司公布的母公司资产负债表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询贵州茅台2015年之后公告的母公司资产负债表数据,取出本期的货币资金,总资产和总负债
    from jqdata 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(20)
    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
    8 贵州茅台酒股份有限公司 600519.XSHG 2017-04-15 2016-01-01 2016-12-31
    9 贵州茅台酒股份有限公司 600519.XSHG 2017-04-25 2017-01-01 2017-03-31
    10 贵州茅台酒股份有限公司 600519.XSHG 2017-07-28 2017-01-01 2017-06-30
    11 贵州茅台酒股份有限公司 600519.XSHG 2017-10-26 2017-01-01 2017-09-30
    12 贵州茅台酒股份有限公司 600519.XSHG 2018-03-28 2017-01-01 2017-12-31
    13 贵州茅台酒股份有限公司 600519.XSHG 2018-04-28 2018-01-01 2018-03-31
    14 贵州茅台酒股份有限公司 600519.XSHG 2018-08-02 2018-01-01 2018-06-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
    8 1.651317e+10 5.966072e+10 2.385817e+10
    9 1.407649e+10 5.863382e+10 2.180735e+10
    10 1.455895e+10 6.757545e+10 3.133084e+10
    11 1.520003e+10 6.220742e+10 2.418794e+10
    12 1.553456e+10 6.507375e+10 2.699755e+10
    13 1.467512e+10 6.102503e+10 2.200076e+10
    14 1.495389e+10 7.800655e+10 2.929751e+09
    金融类合并利润表

    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:代表金融类上市公司合并利润表,收录了金融类上市公司的合并利润表,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.FINANCE_INCOME_STATEMENT.codecode)**:指定筛选条件,通过finance.FINANCE_INCOME_STATEMENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_INCOME_STATEMENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日金融类上市公司公布的合并利润表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询中国平安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(10)
    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 02318
    1 248 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    2 250 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    3 252 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    4 254 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    5 256 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    6 258 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    7 260 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    8 262 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    9 264 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    10 265 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    11 266 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    12 267 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    13 4189 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    14 4333 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318

      pub_date  start_date    end_date         ...           net_profit  \
    

    0 2015-03-20 2014-01-01 2014-12-31 … 47930000000
    1 2015-04-30 2015-01-01 2015-03-31 … 22436000000
    2 2015-08-21 2015-01-01 2015-06-30 … 39911000000
    3 2015-10-28 2015-01-01 2015-09-30 … 56405000000
    4 2016-03-16 2015-01-01 2015-12-31 … 65178000000
    5 2016-04-27 2016-01-01 2016-03-31 … 23389000000
    6 2016-08-18 2016-01-01 2016-06-30 … 46308000000
    7 2016-10-28 2016-01-01 2016-09-30 … 64813000000
    8 2017-03-23 2016-01-01 2016-12-31 … 72368000000
    9 2017-04-28 2017-01-01 2017-03-31 … 25740000000
    10 2017-08-18 2017-01-01 2017-06-30 … 49093000000
    11 2017-10-28 2017-01-01 2017-09-30 … 75219000000
    12 2018-03-21 2017-01-01 2017-12-31 … 99978000000
    13 2018-04-27 2018-01-01 2018-03-31 … 28951000000
    14 2018-08-22 2018-01-01 2018-06-30 … 64770000000

    np_parent_company_owners  minority_profit  eps  basic_eps  diluted_eps  \
    

    0 39279000000 8651000000 NaN 4.93 4.68
    1 19964000000 2472000000 NaN 2.19 2.19
    2 34649000000 5262000000 NaN 1.90 1.90
    3 48276000000 8129000000 NaN 2.64 2.64
    4 54203000000 10975000000 NaN 2.98 2.98
    5 20700000000 2689000000 NaN 1.16 1.16
    6 40776000000 5532000000 NaN 2.28 2.28
    7 56508000000 8305000000 NaN 3.17 3.16
    8 62394000000 9974000000 NaN 3.50 3.49
    9 23053000000 2687000000 NaN 1.29 1.29
    10 43427000000 5666000000 NaN 2.43 2.43
    11 66318000000 8901000000 NaN 3.72 3.71
    12 89088000000 10890000000 NaN 4.99 4.99
    13 25702000000 3249000000 NaN 1.44 1.44
    14 58095000000 6675000000 NaN 3.26 3.25

    other_composite_income  total_composite_income  ci_parent_company_owners  \
    

    0 30774000000 7.870400e+10 6.959000e+10
    1 -3572000000 1.886400e+10 1.633600e+10
    2 71000000 3.998200e+10 3.450800e+10
    3 -13161000000 4.324400e+10 3.488100e+10
    4 752000000 6.593000e+10 5.456500e+10
    5 -11246000000 1.214300e+10 9.509000e+09
    6 -9129000000 3.717900e+10 3.167900e+10
    7 -5917000000 5.889600e+10 5.050300e+10
    8 -7567000000 6.480100e+10 5.471000e+10
    9 6311000000 3.205100e+10 2.923600e+10
    10 9927000000 5.902000e+10 5.315300e+10
    11 17846000000 9.306500e+10 8.369900e+10
    12 21881000000 1.218590e+11 1.106720e+11
    13 -658000000 2.829300e+10 2.481100e+10
    14 130000000 6.490000e+10 5.787400e+10

    ci_minority_owners  
    

    0 9114000000
    1 2528000000
    2 5474000000
    3 8363000000
    4 11365000000
    5 2634000000
    6 5500000000
    7 8393000000
    8 10091000000
    9 2815000000
    10 5867000000
    11 9366000000
    12 11187000000
    13 3482000000
    14 7026000000

    [15 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:代表金融类上市公司母公司利润表,收录了金融类上市公司的母公司利润表,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.FINANCE_INCOME_STATEMENT_PARENT.codecode)**:指定筛选条件,通过finance.FINANCE_INCOME_STATEMENT_PARENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_INCOME_STATEMENT_PARENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日金融类上市公司公布的母公司利润表信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询中国平安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(20)
    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 02318
    1 216 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    2 218 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    3 220 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    4 222 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    5 224 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    6 226 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    7 228 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    8 230 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    9 232 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    10 233 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    11 234 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    12 235 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    13 3508 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318
    14 3638 300002221 中国平安保险(集团)股份有限公司 601318.XSHG 601318 None 02318

      pub_date  start_date    end_date        ...           net_profit  \
    

    0 2015-03-20 2014-01-01 2014-12-31 … 7214000000
    1 2015-04-30 2015-01-01 2015-03-31 … 316000000
    2 2015-08-21 2015-01-01 2015-06-30 … 8390000000
    3 2015-10-28 2015-01-01 2015-09-30 … 8969000000
    4 2016-03-16 2015-01-01 2015-12-31 … 10280000000
    5 2016-04-27 2016-01-01 2016-03-31 … 181000000
    6 2016-08-18 2016-01-01 2016-06-30 … 13850000000
    7 2016-10-28 2016-01-01 2016-09-30 … 13747000000
    8 2017-03-23 2016-01-01 2016-12-31 … 28678000000
    9 2017-04-28 2017-01-01 2017-03-31 … 2000000
    10 2017-08-18 2017-01-01 2017-06-30 … 12068000000
    11 2017-10-28 2017-01-01 2017-09-30 … 14439000000
    12 2018-03-21 2017-01-01 2017-12-31 … 29238000000
    13 2018-04-27 2018-01-01 2018-03-31 … -214000000
    14 2018-08-22 2018-01-01 2018-06-30 … 21911000000

    np_parent_company_owners  minority_profit  eps  basic_eps diluted_eps  \
    

    0 7214000000 NaN NaN NaN NaN
    1 316000000 NaN NaN NaN NaN
    2 8390000000 NaN NaN NaN NaN
    3 8969000000 NaN NaN NaN NaN
    4 10280000000 NaN NaN NaN NaN
    5 181000000 NaN NaN NaN NaN
    6 13850000000 NaN NaN NaN NaN
    7 13747000000 NaN NaN NaN NaN
    8 28678000000 NaN NaN NaN NaN
    9 2000000 NaN NaN NaN NaN
    10 12068000000 NaN NaN NaN NaN
    11 14439000000 NaN NaN NaN NaN
    12 29238000000 NaN NaN NaN NaN
    13 -214000000 NaN NaN NaN NaN
    14 21911000000 NaN NaN NaN NaN

    other_composite_income total_composite_income ci_parent_company_owners
    0 235000000 7449000000 NaN
    1 -47000000 269000000 NaN
    2 85000000 8475000000 NaN
    3 191000000 9160000000 NaN
    4 436000000 10716000000 NaN
    5 -38000000 143000000 NaN
    6 -48000000 13802000000 13802000000
    7 7000000 13754000000 13754000000
    8 -285000000 28393000000 28393000000
    9 -9000000 -7000000 NaN
    10 7000000 12075000000 12075000000
    11 41000000 14480000000 14480000000
    12 -172000000 29066000000 29066000000
    13 52000000 -162000000 -162000000
    14 84000000 21995000000 21995000000

    ci_minority_owners
    0 NaN
    1 NaN
    2 NaN
    3 NaN
    4 NaN
    5 NaN
    6 NaN
    7 NaN
    8 NaN
    9 NaN
    10 NaN
    11 NaN
    12 NaN
    13 NaN
    14 NaN

    [15 rows x 66 columns]
    金融类合并现金流量表

    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:代表金融类上市公司合并现金流量表,收录了金融类上市公司的合并现金流量,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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_sale_and_service_render_cash 购买商品、提供劳务支付的现金 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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.FINANCE_CASHFLOW_STATEMENT.codecode):指定筛选条件,通过finance.FINANCE_CASHFLOW_STATEMENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_CASHFLOW_STATEMENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日金融类上市公司公布的合并现金流量信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询中国平安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(20)
    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
    8 中国平安保险(集团)股份有限公司 601318.XSHG 2017-03-23 2016-01-01 2016-12-31
    9 中国平安保险(集团)股份有限公司 601318.XSHG 2017-04-28 2017-01-01 2017-03-31
    10 中国平安保险(集团)股份有限公司 601318.XSHG 2017-08-18 2017-01-01 2017-06-30
    11 中国平安保险(集团)股份有限公司 601318.XSHG 2017-10-28 2017-01-01 2017-09-30
    12 中国平安保险(集团)股份有限公司 601318.XSHG 2018-03-21 2017-01-01 2017-12-31
    13 中国平安保险(集团)股份有限公司 601318.XSHG 2018-04-27 2018-01-01 2018-03-31
    14 中国平安保险(集团)股份有限公司 601318.XSHG 2018-08-22 2018-01-01 2018-06-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
    8 2.278210e+11 -3.306160e+11 1.330040e+11
    9 -4.168500e+10 -9.311700e+10 5.026700e+10
    10 -1.397500e+10 -2.399940e+11 1.139460e+11
    11 7.821000e+09 -2.805420e+11 1.511410e+11
    12 1.212830e+11 -3.547670e+11 1.785880e+11
    13 1.398670e+11 -8.252000e+10 -1.837000e+09
    14 1.616070e+11 -6.376100e+10 -3.634900e+10
    金融类母公司现金流量表

    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:代表金融类上市公司母公司现金流量表,收录了金融类上市公司的母公司现金流量,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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_sale_and_service_render_cash 购买商品、提供劳务支付的现金 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)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.FINANCE_CASHFLOW_STATEMENT_PARENT.codecode):指定筛选条件,通过finance.FINANCE_CASHFLOW_STATEMENT_PARENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_CASHFLOW_STATEMENT_PARENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日金融类上市公司公布的母公司现金流量信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询中国平安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(20)
    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
    8 中国平安保险(集团)股份有限公司 601318.XSHG 2017-03-23 2016-01-01 2016-12-31
    9 中国平安保险(集团)股份有限公司 601318.XSHG 2017-04-28 2017-01-01 2017-03-31
    10 中国平安保险(集团)股份有限公司 601318.XSHG 2017-08-18 2017-01-01 2017-06-30
    11 中国平安保险(集团)股份有限公司 601318.XSHG 2017-10-28 2017-01-01 2017-09-30
    12 中国平安保险(集团)股份有限公司 601318.XSHG 2018-03-21 2017-01-01 2017-12-31
    13 中国平安保险(集团)股份有限公司 601318.XSHG 2018-04-27 2018-01-01 2018-03-31
    14 中国平安保险(集团)股份有限公司 601318.XSHG 2018-08-22 2018-01-01 2018-06-30

    net_operate_cash_flow  net_invest_cash_flow  net_finance_cash_flow  
    

    0 -88000000 -14333000000 23543000000
    1 -202000000 -718000000 691000000
    2 -88000000 -8063000000 3010000000
    3 -25000000 -11168000000 -7130000000
    4 -203000000 -10990000000 -5711000000
    5 -533000000 456000000 -300000000
    6 -236000000 3237000000 -1620000000
    7 -418000000 10895000000 -10390000000
    8 -639000000 15006000000 -11895000000
    9 -259000000 -912000000 -1994000000
    10 -165000000 5139000000 -3376000000
    11 -647000000 13784000000 -12390000000
    12 -310000000 22612000000 -15924000000
    13 -211000000 246000000 470000000
    14 -188000000 15464000000 -12487000000
    金融类合并资产负债表

    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:代表金融类上市公司合并资产负债表,收录了金融类上市公司的合并资产负债,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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_comprehesive_income 其他综合收益 decimal(20,4)
    good_will 商誉 decimal(20,4)
    shortterm_loan_payable 应付短期融资款 decimal(20,4)
    accounts_payable 应付账款 decimal(20,4)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.FINANCE_BALANCE_SHEET.codecode):指定筛选条件,通过finance.FINANCE_BALANCE_SHEET.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_BALANCE_SHEET.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日金融类上市公司公布的合并资产负债信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询中国平安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(20)
    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
    8 中国平安保险(集团)股份有限公司 601318.XSHG 2017-03-23 2016-01-01 2016-12-31
    9 中国平安保险(集团)股份有限公司 601318.XSHG 2017-04-28 2017-01-01 2017-03-31
    10 中国平安保险(集团)股份有限公司 601318.XSHG 2017-08-18 2017-01-01 2017-06-30
    11 中国平安保险(集团)股份有限公司 601318.XSHG 2017-10-28 2017-01-01 2017-09-30
    12 中国平安保险(集团)股份有限公司 601318.XSHG 2018-03-21 2017-01-01 2017-12-31
    13 中国平安保险(集团)股份有限公司 601318.XSHG 2018-04-27 2018-01-01 2018-03-31
    14 中国平安保险(集团)股份有限公司 601318.XSHG 2018-08-22 2018-01-01 2018-06-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
    8 5.696830e+11 5.576903e+12 5.090442e+12
    9 5.415870e+11 5.773318e+12 5.254793e+12
    10 5.559020e+11 5.978688e+12 5.445990e+12
    11 5.396110e+11 6.168516e+12 5.609576e+12
    12 5.683990e+11 6.493075e+12 5.905158e+12
    13 5.091390e+11 6.725766e+12 6.108353e+12
    14 5.300420e+11 6.851431e+12 6.216339e+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:代表金融类上市公司母公司资产负债表,收录了金融类上市公司的母公司资产负债,表结构和字段信息如下:

    字段名称 中文名称 字段类型 含义
    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_comprehesive_income 其他综合收益 decimal(20,4)
    good_will 商誉 decimal(20,4)
    shortterm_loan_payable 应付短期融资款 decimal(20,4)
    accounts_payable 应付账款 decimal(20,4)
    报表来源编码

    编码 名称
    321001 招募说明书
    321002 上市公告书
    321003 定期报告
    321004 预披露公告
    321005 换股报告书
    321099 其他
    filter(finance.FINANCE_BALANCE_SHEET_PARENT.codecode):指定筛选条件,通过finance.FINANCE_BALANCE_SHEET_PARENT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.FINANCE_BALANCE_SHEET_PARENT.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日金融类上市公司公布的母公司资产负债信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询中国平安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(20)
    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
    8 中国平安保险(集团)股份有限公司 601318.XSHG 2017-03-23 2016-01-01 2016-12-31
    9 中国平安保险(集团)股份有限公司 601318.XSHG 2017-04-28 2017-01-01 2017-03-31
    10 中国平安保险(集团)股份有限公司 601318.XSHG 2017-08-18 2017-01-01 2017-06-30
    11 中国平安保险(集团)股份有限公司 601318.XSHG 2017-10-28 2017-01-01 2017-09-30
    12 中国平安保险(集团)股份有限公司 601318.XSHG 2018-03-21 2017-01-01 2017-12-31
    13 中国平安保险(集团)股份有限公司 601318.XSHG 2018-04-27 2018-01-01 2018-03-31
    14 中国平安保险(集团)股份有限公司 601318.XSHG 2018-08-22 2018-01-01 2018-06-30

    cash_equivalents  total_assets  total_liability  
    

    0 26214000000 1.970230e+11 17331000000
    1 25899000000 1.980580e+11 8930000000
    2 20809000000 2.096090e+11 16105000000
    3 8815000000 2.004830e+11 9538000000
    4 10179000000 2.033480e+11 10805000000
    5 9906000000 2.031290e+11 10349000000
    6 10234000000 2.155980e+11 15577000000
    7 10453000000 2.069940e+11 10585000000
    8 10028000000 2.203310e+11 9205000000
    9 8923000000 2.183790e+11 7200000000
    10 14429000000 2.291570e+11 15987000000
    11 11133000000 2.264570e+11 19084000000
    12 19039000000 2.351180e+11 12990000000
    13 18961000000 2.356310e+11 13536000000
    14 15981000000 2.454330e+11 23082000000
    获取上市公司概况

    上市公司员工情况

    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.codecode):指定筛选条件,通过finance.STK_EMPLOYEE_INFO.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_EMPLOYEE_INFO.pub_date>=‘2015-01-01’,表示公告日期大于2015年1月1日上市公司公布的员工信息;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    指定查询对象为恒瑞医药(600276.XSHG)的员工信息且公告日期大于2015年1月1日,限定返回条数为10

    q=query(finance.STK_EMPLOYEE_INFO).filter(finance.STK_EMPLOYEE_INFO.code==‘600276.XSHG’,finance.STK_EMPLOYEE_INFO.pub_date>=‘2015-01-01’).limit(10)
    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

    retirement graduate_rate college_rate middle_rate
    0 NaN NaN NaN NaN
    1 NaN NaN NaN NaN
    2 NaN NaN NaN 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)
    email 电子信箱 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.codecode):指定筛选条件,通过finance.STK_COMPANY_INFO.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_COMPANY_INFO.city==‘北京市’,表示所属城市为北京市;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    指定查询对象为恒瑞医药(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_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 已发行未上市 已经完成新股发行,还未在沪市或深市挂牌交易
    变更类型编码

    变更类型编码 公司状态变更类型
    303001 恢复上市
    303002 摘星
    303003 摘帽
    303004 摘星摘帽
    303005 披星
    303006 戴帽
    303007 戴帽披星
    303008 拟上市
    303009 新股上市
    303010 发行失败
    303011 暂停上市
    303012 终止上市
    303013 退市整理
    303014 暂缓发行
    303015 暂缓上市
    303016 实行投资者适当性管理标识
    303017 未过会
    303018 预披露
    303019 正常转让
    303020 停止转让
    filter(finance.STK_STATUS_CHANGE.codecode):指定筛选条件,通过finance.STK_STATUS_CHANGE.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_STATUS_CHANGE.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    指定查询对象为恒瑞医药(600276.XSHG)的上市公司状态变动,限定返回条数为10

    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_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.codecode):指定筛选条件,通过finance.STK_LIST.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_LIST.start_date>=‘2015-01-01’,表示筛选上市日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    指定查询对象为恒瑞医药(600276.XSHG)的上市信息,限定返回条数为10

    q=query(finance.STK_LIST).filter(finance.STK_LIST.code==‘600276.XSHG’).limit(10)
    df=finance.run_query(q)
    print(df)

     id         code     name    short_name  category   exchange    start_date   \    
    

    0 1364 600276.XSHG 恒瑞医药 HRYY A XSHG 2000-10-18

    end_date company_id company_name ipo_shares book_price par_value \
    0 NaN 420600276 江苏恒瑞医药股份有限公司 40000000.0 11.98 1.0

    state_id state
    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.codecode):指定筛选条件,通过finance.STK_NAME_HISTORY.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_NAME_HISTORY.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    指定查询对象为恒瑞医药(600276.XSHG)的股票简称变更信息,限定返回条数为10

    q=query(finance.STK_NAME_HISTORY).filter(finance.STK_NAME_HISTORY.code==‘600276.XSHG’).limit(10)
    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 jqdata 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)
    filter(finance.STK_MANAGEMENT_INFO.codecode):指定筛选条件,通过finance.STK_MANAGEMENT_INFO.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_MANAGEMENT_INFO.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。
    order_by(finance.STK_MANAGEMENT_INFO.pub_date): 将返回结果按公告日期排序
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    **为了防止返回数据量过大, 我们每次最多返回3000行 **

    不能进行连表查询,即同时查询多张表的数据

    示例:

    q=query(finance.STK_MANAGEMENT_INFO).filter(finance.STK_MANAGEMENT_INFO.code==‘000001.XSHE’).order_by(finance.STK_MANAGEMENT_INFO.pub_date).limit(10)
    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
    5 138267 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201314655
    6 138268 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201314656
    7 138269 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201317398
    8 138270 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201317399
    9 138271 430000001 平安银行股份有限公司 000001.XSHE 2014-10-10 201317400

        name title_class_id    title_class   title  \
    

    0 肖遂宁 314001 董事会成员 董事
    1 肖遂宁 314003 高管成员 行长
    2 肖遂宁 314001 董事会成员 董事长
    3 罗伯特·巴内姆 314001 董事会成员 独立董事
    4 孙昌基 314001 董事会成员 独立董事
    5 张桐以 314001 董事会成员 董事
    6 王开国 314001 董事会成员 董事
    7 陈武朝 314001 董事会成员 独立董事
    8 谢国忠 314001 董事会成员 独立董事
    9 马雪征 314001 董事会成员 董事

                         ...                         highest_degree_id  \
    

    0 … 316004.0
    1 … 316004.0
    2 … 316004.0
    3 … 316002.0
    4 … NaN
    5 … 316002.0
    6 … 316001.0
    7 … 316001.0
    8 … 316001.0
    9 … 316003.0

     highest_degree  title_level_id  title_level   profession_certificate_id  \
    

    0 大专及其他 317003.0 高级 NaN
    1 大专及其他 317003.0 高级 NaN
    2 大专及其他 317003.0 高级 NaN
    3 硕士及研究生 NaN NaN NaN
    4 NaN 317003.0 高级 NaN
    5 硕士及研究生 NaN NaN NaN
    6 博士研究生 NaN NaN NaN
    7 博士研究生 317003.0 高级 NaN
    8 博士研究生 NaN NaN NaN
    9 本科 NaN NaN NaN

    profession_certificate nationality_id nationality
    0 NaN NaN NaN
    1 NaN NaN NaN
    2 NaN NaN NaN
    3 NaN NaN NaN
    4 NaN NaN NaN
    5 NaN NaN NaN
    6 NaN NaN NaN
    7 注册会计师 NaN NaN
    8 NaN NaN NaN
    9 NaN NaN NaN

    security_career_start_year
    0 NaN
    1 NaN
    2 NaN
    3 NaN
    4 NaN
    5 NaN
    6 NaN
    7 NaN
    8 NaN
    9 NaN

                                              resume  
    

    0 肖遂宁先生:出生于1948年2月,高级经济师。曾任深圳发展银行总行行长、董事长,平安银行股份…
    1 肖遂宁先生:出生于1948年2月,高级经济师。曾任深圳发展银行总行行长、董事长,平安银行股份…
    2 肖遂宁先生:出生于1948年2月,高级经济师。曾任深圳发展银行总行行长、董事长,平安银行股份…
    3 罗伯特巴内姆先生(RobertT.Barnum)自1997年至今在美国加州的PokerFla…
    4 孙昌基,男,研究员级高级工程师。1942年8月20日出生于上海,1966年9月毕业于清华大学…
    5 张桐以(JustinChang)先生,现居香港,是德州太平洋投资集团和新桥投资的合伙人之一。…
    6 王开国先生:1958年出生,获得经济学博士学位。现任海通证券股份有限公司董事长、党委书记。2…
    7 陈武朝先生:1970年出生,中国国籍,无境外永久居留权。毕业于清华大学会计学专业,博士学历,…
    8 谢国忠先生,独立董事候选人,1960年出生,毕业于同济大学路桥系,于1987年获麻省理工学院…
    9 马雪征:中国香港居民,女,1952年出生,大学学历。1978年至1990年任职于中国科学院;…
    获取上市公司股东和股本信息

    十大股东

    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.codecode):指定筛选条件,通过finance.STK_SHAREHOLDER_TOP10.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHAREHOLDER_TOP10.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为恒瑞医药(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.codecode):指定筛选条件,通过finance.STK_SHAREHOLDER_FLOATING_TOP10.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHAREHOLDER_FLOATING_TOP10.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为恒瑞医药(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 15019 定期报告 1 0
    1 15019 定期报告 2 0
    2 15019 定期报告 3 0
    3 15019 定期报告 4 0
    4 15019 定期报告 5 0
    5 15019 定期报告 6 0
    6 15019 定期报告 7 77160219
    7 15019 定期报告 8 77163402
    8 15019 定期报告 9 77050009
    9 15019 定期报告 10 0

                    shareholder_name              shareholder_name_en     shareholder_class_id  \
    

    0 江苏恒瑞医药集团有限公司 NaN 3999
    1 西藏达远投资有限公司 NaN 3999
    2 连云港恒创医药科技有限公司 NaN 3999
    3 中国医药工业有限公司 NaN 3999
    4 江苏金海投资有限公司 NaN 3999
    5 香港中央结算有限公司 NaN 3999
    6 中国农业银行股份有限公司-国泰国证医药卫生行业指数分级证券投资基金 NaN 3003
    7 兴业银行股份有限公司-兴全趋势投资混合型证券投资基金 NaN 3003
    8 交通银行-博时新兴成长股票型证券投资基金 NaN 3003
    9 新华人寿保险股份有限公司-分红-团体分红-018L-FH001沪 NaN 3017

    shareholder_class share_number share_ratio sharesnature_id sharesnature
    0 其他机构 332523790.0 22.109 25007 流通A股
    1 其他机构 229034683.0 15.228 25007 流通A股
    2 其他机构 102094053.0 6.788 25007 流通A股
    3 其他机构 70203316.0 4.668 25007 流通A股
    4 其他机构 50367370.0 3.349 25007 流通A股
    5 其他机构 17207872.0 1.144 25007 流通A股
    6 证券投资基金 15161505.0 1.008 25007 流通A股
    7 证券投资基金 10299800.0 0.685 25007 流通A股
    8 证券投资基金 9929500.0 0.66 25007 流通A股
    9 保险投资组合 9296487.0 0.618 25007 流通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.codecode):指定筛选条件,通过finance.STK_SHARES_PLEDGE.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHARES_PLEDGE.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为万科(000002.XSHE)的股东股份质押情况,返回条数为10条q=query(finance.STK_SHARES_PLEDGE).filter(finance.STK_SHARES_PLEDGE.code==‘000002.XSHE’,finance.STK_SHARES_PLEDGE.pub_date>‘2015-01-01’).limit(10)
    df=finance.run_query(q)
    print(df)

      id company_id      company_name         code      pub_date     pledgor_id  \
    

    0 30928 430000002 万科企业股份有限公司 000002.XSHE 2015-11-11 NaN
    1 41070 430000002 万科企业股份有限公司 000002.XSHE 2016-07-14 NaN
    2 52962 430000002 万科企业股份有限公司 000002.XSHE 2017-03-08 NaN
    3 52963 430000002 万科企业股份有限公司 000002.XSHE 2017-03-08 NaN
    4 53281 430000002 万科企业股份有限公司 000002.XSHE 2017-03-14 NaN
    5 53430 430000002 万科企业股份有限公司 000002.XSHE 2017-03-17 NaN
    6 53454 430000002 万科企业股份有限公司 000002.XSHE 2017-03-17 NaN
    7 53455 430000002 万科企业股份有限公司 000002.XSHE 2017-03-17 NaN
    8 53456 430000002 万科企业股份有限公司 000002.XSHE 2017-03-17 NaN
    9 53504 430000002 万科企业股份有限公司 000002.XSHE 2017-03-17 NaN

         pledgor                   pledgee  \
    

    0 深圳市钜盛华股份有限公司 鹏华资产管理(深圳)有限公司
    1 深圳市钜盛华股份有限公司 中国银河证券股份有限公司
    2 深圳市钜盛华股份有限公司 鹏华资产管理(深圳)有限公司
    3 深圳市钜盛华股份有限公司 鹏华资产管理(深圳)有限公司
    4 深圳市钜盛华股份有限公司 平安证券股份有限公司
    5 广州市凯进投资有限公司 中信证券股份有限公司
    6 广州市悦朗投资有限公司 中信证券股份有限公司
    7 广州市广域实业有限公司 中信证券股份有限公司
    8 广州市启通实业有限公司 中信证券股份有限公司
    9 广州市昱博投资有限公司 中信证券股份有限公司

                                         pledge_item pledge_nature_id  \
    

    0 本公司股东深圳市钜盛华股份有限公司将持有的公司728,000,000股无限售流通A股质押给鹏… NaN
    1 本公司股东深圳市钜盛华股份有限公司将持有的本公司37357300股股权质押给中国银河证券股份… 308007.0
    2 本公司股东深圳市钜盛华股份有限公司将2015年10月28日质押给鹏华资产管理(深圳)有限公司… 308007.0
    3 本公司股东深圳市钜盛华股份有限公司将2015年10月21日质押给鹏华资产管理(深圳)有限公司… 308007.0
    4 本公司第一大股东深圳市钜盛华股份有限公司将持有的本公司182000000股流通A股股权质押给… 308007.0
    5 本公司股东广州市凯进投资有限公司将持有的本公司50759970股股权质押给中信证券股份有限公… NaN
    6 本公司股东广州市悦朗投资有限公司将持有的本公司205731814股股权质押给中信证券股份有限… NaN
    7 本公司股东广州市广域实业有限公司将持有的本公司86701961股股权质押给中信证券股份有限公… NaN
    8 本公司股东广州市启通实业有限公司将持有的本公司68205047股股权质押给中信证券股份有限公… NaN
    9 本公司股东广州市昱博投资有限公司将持有的本公司210778555股股权质押给中信证券股份有限… NaN

      pledge_nature pledge_number   pledge_total_ratio  start_date    end_date  \
    

    0 NaN 728000000.0 7.0 2015-10-15 NaN
    1 流通A股 37357300.0 NaN 2016-07-12 NaN
    2 流通A股 NaN NaN 2015-10-28 2017-03-03
    3 流通A股 NaN NaN 2015-10-21 2017-03-03
    4 流通A股 182000000.0 NaN 2017-03-09 NaN
    5 NaN 50759970.0 NaN 2017-03-16 2018-03-16
    6 NaN 205731814.0 NaN 2017-03-16 2018-03-16
    7 NaN 86701961.0 NaN 2017-03-16 2018-03-16
    8 NaN 68205047.0 NaN 2017-03-16 2018-03-16
    9 NaN 210778555.0 NaN 2017-03-16 2018-03-16

    unpledged_date unpledged_number unpledged_detail is_buy_back
    0 NaN NaN NaN NaN
    1 NaN NaN NaN 1
    2 2017-03-03 91000000.0 NaN NaN
    3 2017-03-03 91000000.0 NaN NaN
    4 NaN NaN NaN 1
    5 NaN NaN NaN 1
    6 NaN NaN NaN 1
    7 NaN NaN NaN 1
    8 NaN NaN NaN 1
    9 NaN NaN NaN 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.codecode):指定筛选条件,通过finance.STK_SHARES_FROZEN.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHARES_FROZEN.pub_date>=‘2015-01-01’,表示筛选公告日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为文一科技(600520.XSHG)的股东股份冻结情况,返回条数为10条
    q=query(finance.STK_SHARES_FROZEN).filter(finance.STK_SHARES_FROZEN.code==‘600520.XSHG’,finance.STK_SHARES_FROZEN.pub_date>‘2015-01-01’).limit(10)
    df=finance.run_query(q)
    print(df)

     id company_id    company_name    pub_date         code frozen_person_id  \
    

    0 4213 420600520 铜陵中发三佳科技股份有限公司 2015-07-11 600520.XSHG NaN
    1 4227 420600520 铜陵中发三佳科技股份有限公司 2015-08-13 600520.XSHG NaN
    2 4261 420600520 铜陵中发三佳科技股份有限公司 2015-09-22 600520.XSHG NaN
    3 4446 420600520 铜陵中发三佳科技股份有限公司 2016-03-24 600520.XSHG NaN
    4 4499 420600520 铜陵中发三佳科技股份有限公司 2016-04-30 600520.XSHG NaN
    5 4509 420600520 铜陵中发三佳科技股份有限公司 2016-05-07 600520.XSHG NaN
    6 4513 420600520 铜陵中发三佳科技股份有限公司 2016-05-21 600520.XSHG NaN
    7 4541 420600520 铜陵中发三佳科技股份有限公司 2016-06-25 600520.XSHG NaN
    8 4542 420600520 铜陵中发三佳科技股份有限公司 2016-06-25 600520.XSHG NaN
    9 4569 420600520 铜陵中发三佳科技股份有限公司 2016-07-09 600520.XSHG NaN

       frozen_person frozen_reason frozen_share_nature_id frozen_share_nature  \
    

    0 铜陵市三佳电子(集团)有限责任公司 NaN 308001.0 境内法人股
    1 铜陵市三佳电子(集团)有限责任公司 NaN 308001.0 境内法人股
    2 铜陵市三佳电子(集团)有限责任公司 NaN 308001.0 境内法人股
    3 铜陵市三佳电子(集团)有限责任公司 NaN 308001.0 境内法人股
    4 铜陵市三佳电子(集团)有限责任公司 NaN 308001.0 境内法人股
    5 铜陵市三佳电子(集团)有限责任公司 NaN 308001.0 境内法人股
    6 铜陵市三佳电子(集团)有限责任公司 NaN NaN NaN
    7 铜陵市三佳电子(集团)有限责任公司 NaN NaN NaN
    8 铜陵市三佳电子(集团)有限责任公司 NaN NaN NaN
    9 铜陵市三佳电子(集团)有限责任公司 NaN NaN NaN

        ...       frozen_total_ratio freeze_applicant        freeze_executor  \
    

    0 … 17.09 NaN 上海市金山区人民法院
    1 … 17.09 NaN NaN
    2 … 17.09 中信银行股份有限公司安庆分行 NaN
    3 … 17.089 NaN 安庆市宜秀区人民法院及安庆市迎江区人民法院
    4 … 17.089 NaN 上海市浦东新区人民法院
    5 … 17.089 NaN 上海市浦东新区人民法院
    6 … 17.089 NaN 广东省深圳市宝安区人民法院
    7 … NaN 上海富汇融资租赁有限公司 上海市浦东新区人民法院
    8 … 17.089 NaN 铜陵市中级人民法院
    9 … NaN NaN 广东省深圳市宝安区人民法院

    change_reason_id change_reason start_date end_date unfrozen_date
    0 NaN NaN 2015-07-10 NaN NaN
    1 NaN NaN NaN 2015-08-11 2015-08-11
    2 NaN NaN NaN NaN NaN
    3 NaN NaN NaN 2016-03-16 2016-03-16
    4 NaN NaN 2016-04-27 2019-04-20 NaN
    5 NaN NaN 2016-05-04 2019-05-04 NaN
    6 NaN NaN NaN NaN NaN
    7 NaN NaN NaN 2016-06-23 2016-06-23
    8 NaN NaN NaN 2016-06-23 2016-06-23
    9 NaN NaN NaN 2016-07-07 2016-07-07

    unfrozen_number unfrozen_detail
    0 NaN NaN
    1 27073333.0 NaN
    2 NaN NaN
    3 27073333.0 NaN
    4 NaN NaN
    5 NaN NaN
    6 NaN NaN
    7 27073333.0 NaN
    8 27073333.0 NaN
    9 27073333.0 NaN

    [10 rows x 21 columns]
    股东户数

    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.codecode):指定筛选条件,通过finance.STK_HOLDER_NUM.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_HOLDER_NUM.pub_date>=‘2015-01-01’,表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为万科(000002.XSHE)的股东户数情况,返回条数为10条
    q=query(finance.STK_HOLDER_NUM).filter(finance.STK_HOLDER_NUM.code==‘000002.XSHE’,finance.STK_HOLDER_NUM.pub_date>‘2015-01-01’).limit(10)
    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
    5 144 000002.XSHE 2015-12-31 2016-03-14 272370 272350
    6 145 000002.XSHE 2016-02-29 2016-03-14 272167 272145
    7 146 000002.XSHE 2016-03-31 2016-04-28 272085 272063
    8 147 000002.XSHE 2016-06-30 2016-08-25 272027 272006
    9 148 000002.XSHE 2016-07-31 2016-08-25 546713 546691

    b_share_holders h_share_holders
    0 NaN 15
    1 NaN 17
    2 NaN 17
    3 NaN 18
    4 NaN 21
    5 NaN 20
    6 NaN 22
    7 NaN 22
    8 NaN 21
    9 NaN 22
    大股东增减持

    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)
    after_change_ratio 变动后占比 decimal(10,4) %,变动后持股数量占总股本比例
    filter(finance.STK_SHAREHOLDERS_SHARE_CHANGE.codecode):指定筛选条件,通过finance.STK_SHAREHOLDERS_SHARE_CHANGE.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_SHAREHOLDERS_SHARE_CHANGE.pub_date>=‘2015-01-01’,表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为万科(000002.XSHE)的大股东增减持情况,返回条数为10条
    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’).limit(10)
    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

    shareholder_id shareholder_name change_number change_ratio price_ceiling
    0 NaN 深圳市矩盛华股份有限公司 369084217.0 3.34 NaN

    after_change_ratio
    0 NaN
    受限股份实际解禁日期

    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.codecode):指定筛选条件,通过finance.STK_LIMITED_SHARES_UNLIMIT.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_LIMITED_SHARES_UNLIMIT.pub_date>=‘2015-01-01’,表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为恒瑞医药(600276.XSHG)的受限股份实际解禁日期,返回条数为10条
    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(10)
    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 蒋素梅等
    5 15291 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2018-01-26 周云曙等

    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
    5 2018-01-31 574517.0 0.0051

    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
    5 309004 股权激励 143628.0
    上市公司股本变动

    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.codecode):指定筛选条件,通过finance.STK_CAPITAL_CHANGE.codecode可以指定你想要查询的股票代码;除此之外,还可以对表中其他字段指定筛选条件,如finance.STK_CAPITAL_CHANGE.pub_date>=‘2015-01-01’,表示筛选公布日期大于等于2015年1月1日之后的数据;多个筛选条件用英文逗号分隔。

    limit(n):限制返回的数据条数,n指定返回条数。

    返回结果:

    返回一个 dataframe, 每一行对应数据表中的一条数据, 列索引是你所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #指定查询对象为恒瑞医药(600276.XSHG)的股本变动情况,返回条数为10条
    q=query(finance.STK_CAPITAL_CHANGE).filter(finance.STK_CAPITAL_CHANGE.code==‘600276.XSHG’,finance.STK_CAPITAL_CHANGE.pub_date>‘2015-01-01’).limit(10)
    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
    5 8432 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-09-22 2017-09-22
    6 9839 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2018-01-18 2018-01-20
    7 9911 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2018-01-31 2018-01-26
    8 12261 420600276 江苏恒瑞医药股份有限公司 600276.XSHG 2017-12-31 2018-04-16

    change_reason_id change_reason share_total share_non_trade …
    0 306037 激励股份上市 234745.9674 0.0 …
    1 306010 送股 281695.1609 0.0 …
    2 306016 股份回购 281688.9833 0.0 …
    3 306037 激励股份上市 281688.9833 0.0 …
    4 306019 定期报告 281688.9833 0.0 …
    5 306016 股份回购 281688.3038 0.0 …
    6 306004 增发新股上市 283264.8038 0.0 …
    7 306037 激励股份上市 283264.8038 0.0 …
    8 306019 定期报告 281688.3038 0.0 …

    share_h share_h_limited share_management share_management_limited
    0 0.0 NaN 0.0 NaN
    1 0.0 NaN 0.0 NaN
    2 0.0 NaN 0.0 NaN
    3 0.0 NaN 0.0 NaN
    4 0.0 NaN 0.0 NaN
    5 0.0 NaN 0.0 NaN
    6 0.0 NaN 0.0 NaN
    7 0.0 NaN 0.0 NaN
    8 0.0 NaN 0.0 NaN

    share_other_trade control_shareholder_limited core_employee_limited
    0 0.0 NaN NaN
    1 0.0 NaN NaN
    2 0.0 NaN NaN
    3 0.0 NaN NaN
    4 0.0 NaN NaN
    5 0.0 NaN NaN
    6 0.0 NaN NaN
    7 0.0 NaN NaN
    8 0.0 NaN NaN

    individual_fund_limited other_legal_limited other_limited
    0 NaN NaN NaN
    1 NaN NaN NaN
    2 NaN NaN NaN
    3 NaN NaN NaN
    4 NaN NaN NaN
    5 NaN NaN NaN
    6 NaN NaN NaN
    7 NaN NaN NaN
    8 NaN NaN NaN

    [9 rows x 49 columns]
    场外基金数据

    获取公募基金主体信息

    from jqdatasdk import finance
    finance.run_query(query(finance.FUND_MAIN_INFO).filter(finance.FUND_MAIN_INFO.main_code==main_code).limit(n))
    描述:记录不同基金的主体信息

    参数:

    query(finance.FUND_MAIN_INFO):表示从finance.FUND_MAIN_INFO这张表中查询公募基金主体信息数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_MAIN_INFO:收录了公募基金主体信息数据,表结构和字段信息如下:
    字段设计

    字段 名称 类型
    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
    基金运作方式编码

    401001 开放式基金
    401002 封闭式基金
    401003 QDII
    401004 FOF
    401005 ETF
    401006 LOF
    基金类别编码

    402001 股票型
    402002 债券型
    402003 混合型
    402004 货币型
    402005 基金型
    402006 封闭式
    402007 贵金属
    filter(finance.FUND_MAIN_INFO.main_codemain_code):指定筛选条件,通过finance.FUND_MAIN_INFO.main_codemain_code可以指定你想要查询的基金主体代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长公募基金主体信息数据,传入的基金代码无须添加后缀
    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))
    描述:记录公募基金的净值数据

    参数:

    query(finance.FUND_NET_VALUE):表示从finance.FUND_NET_VALUE这张表中查询基金净值数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_NET_VALUE:收录了基金净值数据,表结构和字段信息如下:
    字段设计

    字段 名称 类型 注释
    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+涨跌幅)
    filter(finance.FUND_NET_VALUE.codecode):指定筛选条件,通过finance.FUND_NET_VALUE.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长证券投资基金(“000001”)基金净值数据,传入的基金代码无需添加后缀
    q=query(finance.FUND_NET_VALUE).filter(finance.FUND_NET_VALUE.code==“000001”).order_by(finance.FUND_NET_VALUE.day.desc()).limit(10)
    df=finance.run_query(q)
    print(df)

         id    code         day  net_value  sum_value  factor  acc_factor  \
    

    0 10809550 000001 2018-12-05 0.951 3.362 1.0 1.0
    1 10802416 000001 2018-12-04 0.955 3.366 1.0 1.0
    2 10795313 000001 2018-12-03 0.956 3.367 1.0 1.0
    3 10785209 000001 2018-11-30 0.940 3.351 1.0 1.0
    4 10777915 000001 2018-11-29 0.937 3.348 1.0 1.0
    5 10771834 000001 2018-11-28 0.951 3.362 1.0 1.0
    6 10763406 000001 2018-11-27 0.942 3.353 1.0 1.0
    7 10755361 000001 2018-11-26 0.936 3.347 1.0 1.0
    8 10747703 000001 2018-11-23 0.943 3.354 1.0 1.0
    9 10739878 000001 2018-11-22 0.962 3.373 1.0 1.0

    refactor_net_value
    0 0.951
    1 0.955
    2 0.956
    3 0.940
    4 0.937
    5 0.951
    6 0.942
    7 0.936
    8 0.943
    9 0.962
    获取基金持股信息(按季度公布)

    from jqdatasdk import finance
    finance.run_query(query(finance.FUND_PORTFOLIO_STOCK).filter(finance.FUND_PORTFOLIO_STOCK.code==code).limit(n))
    描述:统计基金季度报表、半年度报表和年度报表披露的股票持仓数据

    参数:

    query(finance.FUND_PORTFOLIO_STOCK):表示从finance.FUND_PORTFOLIO_STOCK这张表中查询基金持仓股票组合数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_PORTFOLIO_STOCK:收录了基金持仓股票组合数据,表结构和字段信息如下:
    字段设计

    字段名称 中文名称 字段类型
    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)
    filter(finance.FUND_PORTFOLIO_STOCK.codecode):指定筛选条件,通过finance.FUND_PORTFOLIO_STOCK.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长证券投资基金(“000001”)最近一个季度的基金持仓股票组合前10只股票
    q=query(finance.FUND_PORTFOLIO_STOCK).filter(finance.FUND_PORTFOLIO_STOCK.code==“000001”).order_by(finance.FUND_PORTFOLIO_STOCK.pub_date.desc()).limit(10)
    df=finance.run_query(q)
    print(df)

        id    code period_start  period_end    pub_date  report_type_id  \
    

    0 5548462 000001 2018-07-01 2018-09-30 2018-10-26 403003
    1 5548461 000001 2018-07-01 2018-09-30 2018-10-26 403003
    2 5548460 000001 2018-07-01 2018-09-30 2018-10-26 403003
    3 5548459 000001 2018-07-01 2018-09-30 2018-10-26 403003
    4 5548458 000001 2018-07-01 2018-09-30 2018-10-26 403003
    5 5548457 000001 2018-07-01 2018-09-30 2018-10-26 403003
    6 5548456 000001 2018-07-01 2018-09-30 2018-10-26 403003
    7 5548455 000001 2018-07-01 2018-09-30 2018-10-26 403003
    8 5548454 000001 2018-07-01 2018-09-30 2018-10-26 403003
    9 5548453 000001 2018-07-01 2018-09-30 2018-10-26 403003

    report_type rank symbol name shares market_cap proportion
    0 第三季度 10 600519 贵州茅台 122922.0 8.973306e+07 2.10
    1 第三季度 9 000858 五 粮 液 1403911.0 9.539575e+07 2.23
    2 第三季度 8 601318 中国平安 1500000.0 1.027500e+08 2.40
    3 第三季度 7 002236 大华股份 8663212.0 1.279556e+08 2.99
    4 第三季度 6 000568 泸州老窖 2727419.0 1.295797e+08 3.03
    5 第三季度 5 300226 上海钢联 3104079.0 1.480646e+08 3.46
    6 第三季度 4 000002 万 科A 8235839.0 2.001309e+08 4.68
    7 第三季度 3 300309 吉艾科技 19940203.0 2.043871e+08 4.78
    8 第三季度 2 002127 南极电商 29168907.0 2.135164e+08 4.99
    9 第三季度 1 002195 二三四五 60168800.0 2.587258e+08 6.05
    获取基金资产组合概况

    from jqdatasdk import finance
    finance.run_query(query(finance.FUND_PORTFOLIO).filter(finance.FUND_PORTFOLIO.code==code).limit(n))
    描述:基金资产组合概况

    参数:

    query(finance.FUND_PORTFOLIO):表示从finance.FUND_PORTFOLIO这张表中查询基金资产组合概况数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_PORTFOLIO:收录了基金资产组合概况数据,表结构和字段信息如下:
    字段设计

    字段名称 中文名称 字段类型
    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)
    filter(finance.FUND_PORTFOLIO.codecode):指定筛选条件,通过finance.FUND_PORTFOLIO.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长证券投资基金(“000001”)基金资产组合概况数据,传入的基金代码无需后缀
    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==“000001”).order_by(finance.FUND_PORTFOLIO.pub_date.desc()).limit(10)
    df=finance.run_query(q)
    print(df)

     code        name    pub_date  stock_rate  fixed_income_rate   total_asset
    

    0 000001 华夏成长证券投资基金 2018-10-26 63.57 22.31 4.324823e+09
    1 000001 华夏成长证券投资基金 2018-07-18 70.69 20.72 4.586269e+09
    2 000001 华夏成长证券投资基金 2018-04-21 69.10 21.40 4.806826e+09
    3 000001 华夏成长证券投资基金 2018-01-22 69.78 20.72 5.209661e+09
    4 000001 华夏成长证券投资基金 2017-10-25 73.44 20.32 5.195534e+09
    5 000001 华夏成长证券投资基金 2017-07-20 69.17 20.12 5.162538e+09
    6 000001 华夏成长证券投资基金 2017-04-24 62.64 18.79 5.431267e+09
    7 000001 华夏成长证券投资基金 2017-01-19 67.99 20.85 4.811381e+09
    8 000001 华夏成长证券投资基金 2016-10-25 48.70 37.77 5.216964e+09
    9 000001 华夏成长证券投资基金 2016-07-21 52.36 25.24 5.613803e+09
    获取基金持有的债券信息

    from jqdatasdk import finance
    finance.run_query(query(finance.FUND_PORTFOLIO_TOP_BOND).filter(finance.FUND_PORTFOLIO_TOP_BOND.code==code).limit(n))
    描述:记录公募基金按季度公布的债券组合,为债券投资者提供一些参照

    参数:

    query(finance.FUND_PORTFOLIO_TOP_BOND):表示从finance.FUND_PORTFOLIO_TOP_BOND这张表中查询基金持仓债券组合数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_PORTFOLIO_TOP_BOND:收录了基金持仓债券组合数据,表结构和字段信息如下:
    字段设计

    字段名称 中文名称 字段类型
    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)
    filter(finance.FUND_PORTFOLIO_TOP_BOND.codecode):指定筛选条件,通过finance.FUND_PORTFOLIO_TOP_BOND.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长证券投资基金(“000001”)基金持有的债券组合数据
    df=finance.run_query(query(finance.FUND_PORTFOLIO_BOND).filter(finance.FUND_PORTFOLIO_BOND.code==‘000001’).order_by(finance.FUND_PORTFOLIO_BOND.pub_date.desc()).limit(10))
    print(df)

       id    code period_start  period_end    pub_date  report_type_id  \
    

    0 606569 000001 2018-07-01 2018-09-30 2018-10-26 403003
    1 606568 000001 2018-07-01 2018-09-30 2018-10-26 403003
    2 606567 000001 2018-07-01 2018-09-30 2018-10-26 403003
    3 606566 000001 2018-07-01 2018-09-30 2018-10-26 403003
    4 606565 000001 2018-07-01 2018-09-30 2018-10-26 403003
    5 563871 000001 2018-04-01 2018-06-30 2018-07-18 403002
    6 563870 000001 2018-04-01 2018-06-30 2018-07-18 403002
    7 563872 000001 2018-04-01 2018-06-30 2018-07-18 403002
    8 563873 000001 2018-04-01 2018-06-30 2018-07-18 403002
    9 563874 000001 2018-04-01 2018-06-30 2018-07-18 403002

    report_type rank symbol name shares market_cap
    0 第三季度 5 180203 18国开03 700000.0 71484000.0
    1 第三季度 4 101564021 15华能集MTN002 1000000.0 100740000.0
    2 第三季度 3 180207 18国开07 1300000.0 130312000.0
    3 第三季度 2 180409 18农发09 1300000.0 131794000.0
    4 第三季度 1 180209 18国开09 3100000.0 310527000.0
    5 第二季度 2 180207 18国开07 1000000.0 99930000.0
    6 第二季度 1 180404 18农发04 2600000.0 260780000.0
    7 第二季度 3 101564021 15华能集MTN002 1000000.0 99590000.0
    8 第二季度 4 170410 17农发10 900000.0 90027000.0
    9 第二季度 5 180407 18农发07 600000.0 60096000.0

    proportion
    0 1.67
    1 2.36
    2 3.05
    3 3.08
    4 7.26
    5 2.23
    6 5.83
    7 2.23
    8 2.01
    9 1.34
    获取基金财务信息

    from jqdatasdk import finance
    finance.run_query(query(finance.FUND_FIN_INDICATOR).filter(finance.FUND_FIN_INDICATOR.code==code).limit(n))
    描述:基金财务指标表

    参数:

    query(finance.FUND_FIN_INDICATOR):表示从finance.FUND_FIN_INDICATOR这张表中查询基金财务指标数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_FIN_INDICATOR:收录了基金财务指标数据,表结构和字段信息如下:
    字段设计

    字段 名称 类型
    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 扣除配售新股基金净值增长率
    filter(finance.FUND_FIN_INDICATOR.codecode)**:指定筛选条件,通过finance.FUND_FIN_INDICATOR.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长证券投资基金(“000001”)最近公布的基金财务指标数据
    df=finance.run_query(query(finance.FUND_FIN_INDICATOR).filter(finance.FUND_FIN_INDICATOR.code==“000001”).order_by(finance.FUND_FIN_INDICATOR.pub_date.desc()).limit(10))
    print(df)

      id    code        name period_start  period_end    pub_date  \
    

    0 17502 000001 华夏成长证券投资基金 2017-10-01 2017-12-31 2018-01-22
    1 17501 000001 华夏成长证券投资基金 2017-07-01 2017-09-30 2017-10-25
    2 17499 000001 华夏成长证券投资基金 2017-01-01 2017-06-30 2017-08-26
    3 17500 000001 华夏成长证券投资基金 2017-04-01 2017-06-30 2017-07-20
    4 17498 000001 华夏成长证券投资基金 2017-01-01 2017-03-31 2017-04-24
    5 17494 000001 华夏成长证券投资基金 2016-01-01 2016-12-31 2017-03-29
    6 17497 000001 华夏成长证券投资基金 2016-10-01 2016-12-31 2017-01-19
    7 17496 000001 华夏成长证券投资基金 2016-07-01 2016-09-30 2016-10-25
    8 17493 000001 华夏成长证券投资基金 2016-01-01 2016-06-30 2016-08-27
    9 17495 000001 华夏成长证券投资基金 2016-04-01 2016-06-30 2016-07-21

    report_type_id report_type profit adjust_profit …
    0 403004 第四季度 9.037329e+07 4.867762e+07 …
    1 403003 第三季度 1.916041e+08 3.436370e+08 …
    2 403005 半年度 5.078142e+08 9.463089e+07 …
    3 403002 第二季度 1.923992e+08 1.415763e+08 …
    4 403001 第一季度 3.154150e+08 -4.694544e+07 …
    5 403006 年度 -1.381713e+09 -9.148060e+08 …
    6 403004 第四季度 -2.486219e+08 -1.364103e+08 …
    7 403003 第三季度 4.710295e+07 -1.899681e+07 …
    8 403005 半年度 -1.180194e+09 -7.593989e+08 …
    9 403002 第二季度 -4.934366e+07 -2.825661e+07 …

    avg_roe profit_available profit_avaialbe_per_share total_tna nav
    0 NaN NaN NaN 4.988448e+09 1.134
    1 NaN NaN NaN 5.142564e+09 1.195
    2 10.33 6.682454e+08 0.1505 5.108970e+09 1.150
    3 NaN NaN NaN 5.108970e+09 1.150
    4 NaN NaN NaN 5.001782e+09 1.107
    5 -27.20 1.729261e+08 0.0381 4.714605e+09 1.038
    6 NaN NaN NaN 4.714605e+09 1.038
    7 NaN NaN NaN 5.093707e+09 1.124
    8 -23.38 5.241106e+08 0.1139 5.127381e+09 1.114
    9 NaN NaN NaN 5.127381e+09 1.114

    adjust_nav nav_growth acc_nav_growth adjust_nav_growth total_asset
    0 None NaN NaN None None
    1 None NaN NaN None None
    2 None 10.79 512.90 None None
    3 None NaN NaN None None
    4 None NaN NaN None None
    5 None -22.72 453.21 None None
    6 None NaN NaN None None
    7 None NaN NaN None None
    8 None -19.39 477.00 None None
    9 None NaN NaN None None
    获取基金收益日报

    from jqdatasdk import finance
    finance.run_query(query(finance.FUND_MF_DAILY_PROFIT).filter(finance.FUND_MF_DAILY_PROFIT.code==code).limit(n))
    描述:货币基金收益日报

    参数:

    query(finance.FUND_MF_DAILY_PROFIT):表示从finance.FUND_MF_DAILY_PROFIT这张表中查询货币基金收益日报数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_MF_DAILY_PROFIT:收录了货币基金收益日报数据,表结构和字段信息如下:
    字段设计

    字段 名称 类型
    code 基金代码 varchar(12)
    name 基金名称 varchar(80)
    end_date 收益日期 date
    weekly_yield 7日年化收益率(%) decimal(10,4)
    daily_profit 每万份基金单位当日收益(元) decimal(10,4)
    filter(finance.FUND_MF_DAILY_PROFIT.codecode):指定筛选条件,通过finance.FUND_MF_DAILY_PROFIT.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询汇添富现金宝(“000330”)货币基金收益日报数据,只显示10条信息。
    df=finance.run_query(query(finance.FUND_MF_DAILY_PROFIT).filter(finance.FUND_MF_DAILY_PROFIT.code==‘000300’).order_by(finance.FUND_MF_DAILY_PROFIT.end_date.desc()).limit(10))
    print(df)

        id    code  name    end_date  weekly_yield  daily_profit
    

    0 1190311 000300 None 2018-12-06 2.309 0.5506
    1 1189673 000300 None 2018-12-05 2.327 0.5457
    2 1188919 000300 None 2018-12-04 2.341 0.5493
    3 1187078 000300 None 2018-12-03 2.354 1.1031
    4 1188311 000300 None 2018-12-02 2.082 1.1230
    5 1186331 000300 None 2018-11-30 2.093 0.5573
    6 1185577 000300 None 2018-11-29 2.105 0.5846
    7 1184718 000300 None 2018-11-28 2.090 0.5724
    8 1184067 000300 None 2018-11-27 2.088 0.5745
    9 1182801 000300 None 2018-11-26 2.081 0.5810
    获取基金分红拆分合并信息

    from jqdata import finance
    finance.run_query(query(finance.FUND_DIVIDEND).filter(finance.FUND_DIVIDEND.code==code).limit(n))
    描述:记录基金分红、拆分和合并的方案

    参数:

    query(finance.FUND_DIVIDEND):表示从finance.FUND_DIVIDEND这张表中查询基金分红拆分合并数据,还可以指定所要查询的字段名,格式如下:query(库名.表名.字段名1,库名.表名.字段名2),多个字段用逗号分隔进行提取;query函数的更多用法详见:sqlalchemy.orm.query.Query对象
    finance.FUND_DIVIDEND:收录了基金分红拆分合并数据,表结构和字段信息如下:
    字段设计

    字段 名称 类型
    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 取消折算
    filter(finance.FUND_DIVIDEND.codecode):指定筛选条件,通过finance.FUND_DIVIDEND.codecode可以指定你想要查询的基金代码;除此之外,还可以对表中其他字段指定筛选条件;多个筛选条件用英文逗号分隔。
    limit(n):限制返回的数据条数,n指定返回条数。
    返回结果:

    返回一个 dataframe,每一行对应数据表中的一条数据, 列索引是您所查询的字段名称
    注意:

    为了防止返回数据量过大, 我们每次最多返回3000行
    不能进行连表查询,即同时查询多张表的数据
    示例:

    #查询华夏成长证券投资基金(“000001”)基金分红拆分合并数据。
    df=finance.run_query(query(finance.FUND_DIVIDEND).filter(finance.FUND_DIVIDEND.code==“000001”).order_by(finance.FUND_DIVIDEND.pub_date.desc()).limit(10))
    print(df)

      id    code        name    pub_date  event_id event distribution_date  \
    

    0 17193 000001 华夏成长证券投资基金 2017-12-04 404001 基金分红 2017-11-29
    1 15143 000001 华夏成长证券投资基金 2016-12-20 404001 基金分红 2016-12-15
    2 12953 000001 华夏成长证券投资基金 2015-11-16 404001 基金分红 2015-11-10
    3 4614 000001 华夏成长证券投资基金 2014-11-14 404001 基金分红 2014-11-11
    4 2417 000001 华夏成长证券投资基金 2010-09-03 404001 基金分红 2010-08-31
    5 2071 000001 华夏成长证券投资基金 2009-12-23 404001 基金分红 2009-12-11
    6 1522 000001 华夏成长证券投资基金 2008-01-21 404001 基金分红 2008-01-17
    7 963 000001 华夏成长证券投资基金 2007-01-12 404001 基金分红 2007-01-09
    8 771 000001 华夏成长证券投资基金 2006-09-25 404001 基金分红 2006-09-20
    9 749 000001 华夏成长证券投资基金 2006-08-29 404001 基金分红 None

    process_id process proportion … record_date ex_date
    0 405002 实施方案 0.080 … 2017-12-07 None
    1 405002 实施方案 0.030 … 2016-12-26 None
    2 405002 实施方案 0.100 … 2015-11-20 None
    3 405002 实施方案 0.100 … 2014-11-20 None
    4 405002 实施方案 0.320 … 2010-09-07 None
    5 405002 实施方案 0.100 … 2009-12-25 None
    6 405002 实施方案 0.500 … 2008-01-22 None
    7 405002 实施方案 0.831 … 2007-01-11 None
    8 405002 实施方案 0.030 … 2006-09-26 None
    9 405002 实施方案 0.030 … 2006-08-30 None

    fund_paid_date redeem_date dividend_implement_date dividend_cancel_date
    0 None 2017-12-11 2017-12-04 None
    1 None 2016-12-28 2016-12-20 None
    2 None 2015-11-24 2015-11-16 None
    3 None 2014-11-24 2014-11-14 None
    4 None 2010-09-09 2010-09-03 None
    5 None 2009-12-29 2009-12-23 None
    6 None 2008-01-28 2008-01-21 None
    7 None None 2007-01-12 None
    8 None None 2006-09-25 None
    9 None None 2006-08-29 None

    otc_ex_date pay_date new_share_code new_share_name
    0 2017-12-07 2017-12-08 None None
    1 2016-12-26 2016-12-27

    展开全文
  • 使用JQData查询行情数据: JointQuant了解: 如标题所示,提到了“JQData”,其中的JQ就是JointQuant的缩写,官网为https://www.joinquant.com/: 而我们想要的是获取股票数据,所以可以从菜单栏这块看过来: 先来...

    了解股票:

    在上一次量化小科普【什么是量化?常用的股票量化指标、如何搭建量化交易系统】对于量化的概念有了一个基本认识,其中量化的主体在这门课程的学习中是“股票”,而当别人问你:“什么是股票?”,是不是觉得特弱智,嗯,接下来就回到这个弱智的问题上来当个故事了解一下它。。

    股票的由来:

    股票最早可以起初到17世纪初的荷兰,那个时候香料贸易是很挣钱的,所以荷兰就会有船商开船出去运货:

    但是!!!很显然开船是有风险的,毕竟海上的环境是变化多端的, 所以经常有可能船有去无回,对于船商来说就是一种损失,所以后来就有人看到这样的困境组织成立了一家公司---东印度公司,由很多船商作为股东,然后开始找人投资,说把一个凭证给你,其实就是所说的股票的证券,代表你投资了多少钱给我,这样你也可以成为公司的股东享受利润分红:

    慢慢这么的形式就影响开来了,而在这个过程中大家肯定也会去交易这个凭证,比如说:我要急着用钱就卖出手中的一些凭证,或者说听到有一些负面消息不看好这次出行则会买别人的一些凭证,这其实就是最开始的股票交易。

    后来就发展成了我们所熟知的交易所方便进行股票的买卖,以及基于股票的投资组合和衍生品等,所以股票是:股份公司发行的所有权凭证,代表的是一种投资工具、投资介质。

    股票的特性【当个笑话看】:

    这里以股票、基金、债券三者放一起来看。

    概述上:

    • 股票它是股份公司的所有权凭证、盈亏自负。
    • 基金它是一种投资组合(股票、债券、现金)。
    • 债券它是还本付息的有价证券(国债、企业债、金融债券)

    风险上:

    股票(10%) > 基金(5%)> 债券(1%)

    收益上:

    股票 > 基金 > 债券 

    获取股票数据的3种方式:

    作为个人投资者,或者普通投资者,最常用的数据获取方法就是各种炒股平台和金融数据服务端,那如果是量化开发者的话,其实也能从这上面获取数据,怎么获取呢?就是写爬虫对吧。

    1、什么是爬虫呢?

    爬虫其实就是利用网页的结构和标签,把想要的信息扒下来,这个扒可以用很多方式,比如Python的Beautifulsoup或者lxml都可以。但是,这种方式费时费力,而且网站有时候也会出问题,那么连带着程序就会出问题,比如意外中止,或者有缺失值之类的。

    所以,更成熟的方式,就是找现成的数据接口,其中数据接口又分为免费和付费的。

    2、免费的数据接口【咱们所采用的方式】:

    免费的数据接口比较出名的就是各种量化平台,比如天勤量化、BigQuant、JoinQuant(聚宽)等,一般它们都会提供成熟的数据接口让你调用。

    基础的数据,比如每天的行情、财务数据、技术指标这些,都是免费的。但如果需要更高阶、更复杂的合成技术指标,或者编写好的量化策略之类的,就会要求你升级购买。总体来说,也是划算了,省掉了重复造轮子的精力。

    当然了,如果你愿意进一步钻研的话,在GitHub等开源网站上,也有许多现成资源可以利用。

    3、付费的数据接口:

    金融接口,比较出名的有Wind和彭博,提供秒极的行情数据。换句话说,你可以实时获取到最新最精准的交易数据。

    通常这一类数据接口,会按照需要的数据量、使用人数,以及行情的精确程度等收费。按照我以往的使用经验,每年的数据采购费至少在1万以上,如果涉及高频交易,费用至少在3万以上,上不封顶。

    以上,就是获取股票等金融数据的3种方式了,它们分别是:爬虫获取、免费接口调用,以及购买和定制现成的数据服务。

    使用JQData查询行情数据:

    JointQuant了解:

    如标题所示,提到了“JQData”,其中的JQ就是JointQuant的缩写,官网为https://www.joinquant.com/

    而我们想要的是获取股票数据,所以可以从菜单栏这块看过来:

    先来看一下数据字典:

    点进去之后,就有很详细的说明文档:

    好,大致了解一下,接下来再来看一下对咱们python编程有用的这个菜单:

    具体介绍可以上官网,下面直接开始进入使用环节。

    JQData开通:

    要使用之前先需要进行账号开通,如何开通呢?

    免费可以试用半年,那好,提交试用申请:

    然后点击确认就可以注册成功了:

    安装使用JQData:

    安装JQData:

    这里先利用PyCharm新建一个工程:

    然后在工程终端中安装一下:

    获取股票行情数据:

    1、获取某股的行情数据:

    接下来咱们尝试来获取一下股票行情数据,找到相关接口说明:

    注意,所有接口必须先登录哦:

    下面咱们来试试看能否正常获得股票行情数据:

    from jqdatasdk import *
    
    auth('用户名', '密码')  # 账号是申请时所填写的手机号;密码为聚宽官网登录密码,新申请用户默认为手机号后6位
    
    # 获取平安银行在2021-08-20号之前的四个交易日的股票行情日k数据
    df = get_price('000001.XSHE', end_date='2021-08-20', count=4, frequency='daily')
    print(df)

    注意:登录的用户名、密码需要填写你自己注册的,这里由于涉及到个人手机号的隐私,所以这里就不贴出来了,运行:

    /Users/xiongwei/opt/anaconda3/bin/python3.8 /Users/xiongwei/Documents/workspace/python/QuantitativeTrading/data/Stock.py
    auth success 
    /Users/xiongwei/opt/anaconda3/lib/python3.8/site-packages/jqdatasdk/api.py:34: PanelObsoleteWarning: 当前环境 pandas 版本高于 0.25,get_price 与 get_fundamentals_continuously 接口的 panel 参数将固定为 False(0.25 及以上版本的 pandas 不再支持 panel,如使用该数据结构和相关函数请注意修改)
      warnings.warn(PandasChecker.VERSION_NOTICE_MESSAGE, PanelObsoleteWarning)
                 open  close   high    low       volume         money
    2021-08-17  19.85  19.67  20.22  19.61   47602194.0  9.473855e+08
    2021-08-18  19.67  20.62  21.20  19.55  133273216.0  2.732214e+09
    2021-08-19  20.48  20.34  20.62  20.02   64997561.0  1.315320e+09
    2021-08-20  19.97  19.42  20.07  18.70  161462793.0  3.119153e+09
    
    Process finished with exit code 0

    其中股票代码中跟了一个“XSHE”,它代表啥呢?其实文档上有说明:

    另外,这打印出来的数据是否真的跟真实的股票数据是相匹配的呢?所以咱们可以打开炒股软件,对这输出的四条数据进行一个验证,这里以其中一条为准验证一下就可以了:

    对比一下咱们的输出:

    是不是准确的? 

    如果说我想获取每分钟的数据呢?这里只要更改这个参数既可:

    2、获取所有A股的行情数据:

    那如果我想获取所有A股的行情数据呢?依然看API说明:

    其中给了一个示例:

    那下面来使用一下:

    所有标的获取之后,就可以开始遍历来获取股票所对应的行情数据了,如下:

    确实是获取到了,总共A股有4569家。但是没有真正显示全呀,要想显示全,这里可以采用数组循环一个个股票行情进行输出,如下:

    运行:

    使用resample函数转化时间序列:

    什么是resample函数?

    它是Python数据分析库Pandas的方法函数,它的主要作用就是用来转换时间序列的频次,并可以做一些统计汇总的工作,这里可以上官网瞅一眼:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.resample.html#

    那“转换时间序列的频次”和“统计汇总”这俩功能主要指的是什么呢?下面以一个案例来理解一下它们。

    转换时间序列的频次:

    在股票中的K线中有日K和周K对吧?

    那假如只能获取到日K的数据,比如获得了这么一周的日K股票行情数据:

    而通过日K的数据是可以转换成周K的,周K的定义其实是从日K中取出这些数据:

    对于月K、年K基本规则都类似,这样的转换功能就可以用resample轻松的来实现。

    统计汇总:

    比如这里获取到了一周的成交量信息:

    如果要统计这一周的成交量之和,就可以使用resample.sum/.count来统计Sum = 720

    使用:

    这个函数有这么多参数,都是啥意思呢?其实了解具体参数的含义从官网的sample例子去理解是最容易的,下面先来理解一些常用的参数:

    其中传的“3T”参数是用的这个:

    另外,还有一个比较常用的参数:

    默认是left,那这个参数有啥作用呢?先来回到咱们看的这个示例中:

    这默认是left的效果,那如果我们换成right呢?直接从结果来理解:

    是不是此时取的就是每三分钟最后一分钟的时间?

    是不是对于这个label参数就理解了。

    转换周期:日K转换为周K:

    这里先来获取日K的数据,还是以中国平安为例:

    输出:

    /Users/xiongwei/opt/anaconda3/bin/python3.8 /Users/xiongwei/Documents/workspace/python/QuantitativeTrading/studycode/data/Stock.py
    auth success 
    /Users/xiongwei/opt/anaconda3/lib/python3.8/site-packages/jqdatasdk/api.py:34: PanelObsoleteWarning: 当前环境 pandas 版本高于 0.25,get_price 与 get_fundamentals_continuously 接口的 panel 参数将固定为 False(0.25 及以上版本的 pandas 不再支持 panel,如使用该数据结构和相关函数请注意修改)
      warnings.warn(PandasChecker.VERSION_NOTICE_MESSAGE, PanelObsoleteWarning)
                 open  close   high    low       volume         money
    2021-07-26  19.96  18.80  19.99  18.43  145130394.0  2.770237e+09
    2021-07-27  18.87  17.76  18.99  17.60  135755148.0  2.461708e+09
    2021-07-28  17.85  17.75  18.07  17.68  106299421.0  1.898563e+09
    2021-07-29  17.91  17.96  18.24  17.78   87237812.0  1.566108e+09
    2021-07-30  17.92  17.69  18.05  17.24   95015588.0  1.679747e+09
    2021-08-02  17.64  18.01  18.14  17.18  115992263.0  2.056014e+09
    2021-08-03  17.99  17.89  18.15  17.66   89694857.0  1.609423e+09
    2021-08-04  18.04  17.81  18.07  17.60   72962008.0  1.300164e+09
    2021-08-05  17.70  17.68  18.05  17.58   62157388.0  1.104903e+09
    2021-08-06  17.55  17.86  17.90  17.45   56745413.0  1.005871e+09
    2021-08-09  17.91  19.06  19.25  17.84  175279800.0  3.313803e+09
    2021-08-10  19.09  19.73  19.98  18.90  130198844.0  2.535428e+09
    2021-08-11  19.99  19.81  20.58  19.70  104830844.0  2.104975e+09
    2021-08-12  19.79  19.89  20.30  19.63   66645800.0  1.330388e+09
    2021-08-13  19.78  19.89  19.92  19.50   56288502.0  1.110191e+09
    2021-08-16  20.09  19.95  20.20  19.57   62705022.0  1.247681e+09
    2021-08-17  19.85  19.67  20.22  19.61   47602194.0  9.473855e+08
    2021-08-18  19.67  20.62  21.20  19.55  133273216.0  2.732214e+09
    2021-08-19  20.48  20.34  20.62  20.02   64997561.0  1.315320e+09
    2021-08-20  19.97  19.42  20.07  18.70  161462793.0  3.119153e+09
    
    Process finished with exit code 0

    这里为了方便,增加一个周几的字段信息,如何增加呢?在python中也很简单,如下:

    再运行:

    那0代表周几呢?这里可以点击进去看一下源码,里面有说明:

    python真的挺强大的,获得周几信息直接调用一个函数就出来了,回头对于python这门语言一定得要系统的学一学。 

    好,有了日K的源数据之后,就可以使用resample函数来实现周K的转换了,这里先以获取周K的开盘价数据为例,确保获取没问题再获取其它的,如下:

    其中resample中传的"W"表示周,运行看一下:

    其中对于转换的时间,其实都是取的周日:

    其中还有一个细节需要注意,就是需要定义一下df_week,不然会报错的:

    接下来就可以一口气将周k的其它信息都获取了,方式都类似:

    运行结果:

    /Users/xiongwei/opt/anaconda3/bin/python3.8 /Users/xiongwei/Documents/workspace/python/QuantitativeTrading/studycode/data/Stock.py
    auth success 
    /Users/xiongwei/opt/anaconda3/lib/python3.8/site-packages/jqdatasdk/api.py:34: PanelObsoleteWarning: 当前环境 pandas 版本高于 0.25,get_price 与 get_fundamentals_continuously 接口的 panel 参数将固定为 False(0.25 及以上版本的 pandas 不再支持 panel,如使用该数据结构和相关函数请注意修改)
      warnings.warn(PandasChecker.VERSION_NOTICE_MESSAGE, PanelObsoleteWarning)
                 open  close   high    low       volume         money  weekday
    2021-07-26  19.96  18.80  19.99  18.43  145130394.0  2.770237e+09        0
    2021-07-27  18.87  17.76  18.99  17.60  135755148.0  2.461708e+09        1
    2021-07-28  17.85  17.75  18.07  17.68  106299421.0  1.898563e+09        2
    2021-07-29  17.91  17.96  18.24  17.78   87237812.0  1.566108e+09        3
    2021-07-30  17.92  17.69  18.05  17.24   95015588.0  1.679747e+09        4
    2021-08-02  17.64  18.01  18.14  17.18  115992263.0  2.056014e+09        0
    2021-08-03  17.99  17.89  18.15  17.66   89694857.0  1.609423e+09        1
    2021-08-04  18.04  17.81  18.07  17.60   72962008.0  1.300164e+09        2
    2021-08-05  17.70  17.68  18.05  17.58   62157388.0  1.104903e+09        3
    2021-08-06  17.55  17.86  17.90  17.45   56745413.0  1.005871e+09        4
    2021-08-09  17.91  19.06  19.25  17.84  175279800.0  3.313803e+09        0
    2021-08-10  19.09  19.73  19.98  18.90  130198844.0  2.535428e+09        1
    2021-08-11  19.99  19.81  20.58  19.70  104830844.0  2.104975e+09        2
    2021-08-12  19.79  19.89  20.30  19.63   66645800.0  1.330388e+09        3
    2021-08-13  19.78  19.89  19.92  19.50   56288502.0  1.110191e+09        4
    2021-08-16  20.09  19.95  20.20  19.57   62705022.0  1.247681e+09        0
    2021-08-17  19.85  19.67  20.22  19.61   47602194.0  9.473855e+08        1
    2021-08-18  19.67  20.62  21.20  19.55  133273216.0  2.732214e+09        2
    2021-08-19  20.48  20.34  20.62  20.02   64997561.0  1.315320e+09        3
    2021-08-20  19.97  19.42  20.07  18.70  161462793.0  3.119153e+09        4
                 open  close   high    low
    2021-08-01  19.96  17.69  19.99  17.24
    2021-08-08  17.64  17.86  18.15  17.18
    2021-08-15  17.91  19.89  20.58  17.84
    2021-08-22  20.09  19.42  21.20  18.70
    
    Process finished with exit code 0

    关于数据的正确性可以自行去验证,结果肯定是准确的。

    汇总统计:统计一下月成交量、成交额(sum):

    这个就比较简单了,如下:

    运行:

    /Users/xiongwei/opt/anaconda3/bin/python3.8 /Users/xiongwei/Documents/workspace/python/QuantitativeTrading/studycode/data/Stock.py
    auth success 
    /Users/xiongwei/opt/anaconda3/lib/python3.8/site-packages/jqdatasdk/api.py:34: PanelObsoleteWarning: 当前环境 pandas 版本高于 0.25,get_price 与 get_fundamentals_continuously 接口的 panel 参数将固定为 False(0.25 及以上版本的 pandas 不再支持 panel,如使用该数据结构和相关函数请注意修改)
      warnings.warn(PandasChecker.VERSION_NOTICE_MESSAGE, PanelObsoleteWarning)
                 open  close   high    low       volume         money  weekday
    2021-07-26  19.96  18.80  19.99  18.43  145130394.0  2.770237e+09        0
    2021-07-27  18.87  17.76  18.99  17.60  135755148.0  2.461708e+09        1
    2021-07-28  17.85  17.75  18.07  17.68  106299421.0  1.898563e+09        2
    2021-07-29  17.91  17.96  18.24  17.78   87237812.0  1.566108e+09        3
    2021-07-30  17.92  17.69  18.05  17.24   95015588.0  1.679747e+09        4
    2021-08-02  17.64  18.01  18.14  17.18  115992263.0  2.056014e+09        0
    2021-08-03  17.99  17.89  18.15  17.66   89694857.0  1.609423e+09        1
    2021-08-04  18.04  17.81  18.07  17.60   72962008.0  1.300164e+09        2
    2021-08-05  17.70  17.68  18.05  17.58   62157388.0  1.104903e+09        3
    2021-08-06  17.55  17.86  17.90  17.45   56745413.0  1.005871e+09        4
    2021-08-09  17.91  19.06  19.25  17.84  175279800.0  3.313803e+09        0
    2021-08-10  19.09  19.73  19.98  18.90  130198844.0  2.535428e+09        1
    2021-08-11  19.99  19.81  20.58  19.70  104830844.0  2.104975e+09        2
    2021-08-12  19.79  19.89  20.30  19.63   66645800.0  1.330388e+09        3
    2021-08-13  19.78  19.89  19.92  19.50   56288502.0  1.110191e+09        4
    2021-08-16  20.09  19.95  20.20  19.57   62705022.0  1.247681e+09        0
    2021-08-17  19.85  19.67  20.22  19.61   47602194.0  9.473855e+08        1
    2021-08-18  19.67  20.62  21.20  19.55  133273216.0  2.732214e+09        2
    2021-08-19  20.48  20.34  20.62  20.02   64997561.0  1.315320e+09        3
    2021-08-20  19.97  19.42  20.07  18.70  161462793.0  3.119153e+09        4
                 open  close   high    low  volume(sum)    money(sum)
    2021-08-01  19.96  17.69  19.99  17.24  569438363.0  1.037636e+10
    2021-08-08  17.64  17.86  18.15  17.18  397551929.0  7.076375e+09
    2021-08-15  17.91  19.89  20.58  17.84  533243790.0  1.039479e+10
    2021-08-22  20.09  19.42  21.20  18.70  470040786.0  9.361753e+09
    
    Process finished with exit code 0

    使用JQData查询财务指标:

    什么是财务指标?

    说到财务,肯定是跟钱挂勾的,以一家企业为例,财务报表的构成如下:

    关于这些都需要简单了解一下,因为在之后的选股策略中会有用到的。

    财务报表:

    资产负债表:

    它体现了企业的家底和负债情况,比如个人你有几套房,几辆车, 是全款买的还是借款买的,如果是借款那又有多少是借来的。

    利润表:

    它体现了公司的盈利能力:赚了多少钱,如何赚的,其中隐含着对未来利润增长的预期,也正是有这样的一个预期,很多公司的股价是远超它现实真实的公司内在价值的,典型的像很多国内的上市公司在上市后,其实公司的盈利情况是负增长,那为啥这些公司的股价就是长得很好呢?这就是由于“预期”不同,因为大家都预期这家公司未来是很赚钱的,也就是这张表能体现市场空间、成长能力。

    现金流量表:

    这张表相比上面的两张表它会更加真实,不容易造假,为啥呢?因为上面两张表是基于“权责发生制”这一会计制度来进行编制的,那这种编制有什么特点呢?比如我和你签合同,里面涉及到1000万的订单的款项,只要签了立马就可以记账到预收款项里面了,就可以说我已经有1000万的利润了,此时会记录到利润表中的;但是现金流量表则不一样,它是“收付实现制”,只有1000万真的打进到我的账户里才会记录到利润表中的。

    所以,现金流能体现公司的造血能力、竞争优势、议价优势,在挑选股票看公司基本面时,是一个非常重要的指标。

    使用:

    寻找相关接口信息:

    上JQData官网找一下相关查财务指标的接口:

    其中有两类财务数据获取的接口:

    其中“单季度/年度财务数据”是指的每个季度或年度的财务数据,比如我想获取第三季度的数据,则只包含第三季度的,不会累加之前的,而“报告期财务数据”则有累加的意思,比如半年报则包含第一季度和第二季度的。

    下面来对咱们要学习的接口进行一个简要的概览:

    接下来咱们就准备尝试获取一下财务指标数据:

    代码编写:

    咱们换2020年度的:

    要让其显示全,需要设置一下,如下:

    再运行,可以看到一大堆打印:

    将数据导出到excel中:

    由于数据量巨大,控制台不方便查看,这里将其导到excel表中,具体做法如下:

    '''获取股票财务指标'''
    df = get_fundamentals(query(indicator),statDate='2020')
    # print(df)
    df.to_csv("/Users/xiongwei/Documents/workspace/python/QuantitativeTrading/studycode/data/finance/finance2020.csv")

    此时运行一下,成功的话excel报表就生成了:

    此时用excel打开就比较好查看了:

    数据字段了解:

    一大堆字段都啥意思呢?可以参考官网,都有解释:

    咱们粗略的简单过一些,有个大概了解,因为之后会要用一些字段当过滤条件来进行选股。

    statDate:

    财报统计的季度的最后一天, 比如2015-03-31, 2015-06-30。

    如咱们导出的表中,表示2020年一整年的数据。

    pubDate:

    公司发布财报日期,一般是每年的4月份会出【也有晚于4月的,但是少数,基本都会在4月份之前出来】,每个公司出的时间都不太一样,看一下咱们导的数据:

    也有最晚7月份发布的:

    eps:

    每股收益EPS(元),用净利润 / 股本数,比如公司将股本数划为1000份,净利润/1000就是eps, 这个值越高越好,代表公司的盈利能力。

    operating_profit:

    经营活动净收益(元),营业总收入-营业总成本,通俗理解就是我挣了多少钱,然后减去我花了多少钱,该值也是越高越好。

    其中可以看到,有些公司是负数的,那肯定公司的基本面是不太好的。

    roe:

    净资产收益率ROE(%),这个在之前有提到过,它的计算公式是“归属于母公司股东的净利润*2/(期初归属于母公司股东的净资产+期末归属于母公司股东的净资产)",这个有啥意义呢?其实相当于一个公司资产的产出,举例说明:有两家白酒公司,它们的规模机器情况都差不多,但是公司A一年的产能对应的销量是1000万,公司B却只有100万,很明显公司A的ROE要高对吧,因为同样的资产它获得的利润更多。

    其中也可以看到有负的。

    inc_net_profit_year_on_year:

    净利润同比增长率(%),也就是今年的净利润跟去年的净利润增长的百分比,比如今年的净利润是200万,而去年的净利润是100万,那么这里的值就是200-100,增长了100万,然后除以期初的100万,同比增长度就是100/100。

    inc_operation_profit_annual:

    营业利润环比增长率(%),由于咱们这边统计的是年,环比跟上面的同比是一样的,所以可以看到在报表中这一列是空的:

    根据财务指标条件过滤股票:

    好,对于财务指标中的关键字段进行了了解之后,那么重点来了,怎么来通过这些指标来筛选出健康赢利良好的公司呢?

    1、eps肯定是要大于0对吧,最起码该公司是赚钱的。

    2、operating_profit需要大于一个均值,这里在excel取这一列的平均值吧:

    所以条件加上:

    3、roe也取一个均值:

    所以条件加上:

    4、inc_net_profit_year_on_year:这里净利润同比增长率定个10吧,如下:

    此时再输出看一下,经过条件过滤之后,整个A股中满足条件的股票有多少:

    瞬间缩到307家了,这样选出来的最起码基本面是好的,当然这个条件可以根据自己的要求来进行更改。

    使用JQData查询估值指标:

    有哪些估值方法?

    在A股投资中有一些价值投资喜欢根据企业的估值是高估还是低估来决定买卖决策对吧,所以需要对于估值方法有一定的了解,这里了解两种估值方法。

    绝对估值:

    它是一种定价模型,也就是计算企业的内在价值,看这么一张计算表格:

    思想是先获取公司的近N年的现金流情况:

    然后来预测未来的现金流情况:

    然后再根据预测的这些数据来进行折现,也就是算出未来五到十年它的价格换算成现在的价格是多少钱,来判断当前的投价到底是贵还是便宜来决定咱们买还是不买它,这也就是典型的估值买入法,一家公司越值钱通常它的股价也是越贵的,而对于投资者来说,就是找到一家公司未来不错,但是呢股价现在处于低估的公司,这也就是挣钱的关键:利用公司本身的价值和它在市场价格的差价,这也是就是大神巴菲特所说的价值投资。

    在绝对估值法中,有一个非常重要的指标就是折现率:

    它可以理解为未来的钱转换为现在的钱要消去多少,这里设置的是10%,它是根据个人的情况可以更改的【正因为这是一个主观的因素,所以实际用这种方式不太靠谱,因为不同的人算出来的估值情况是不一样的】,所以这个值的设定不同,直接就会影响到对企业的估值的计算,也就是这块的结果:

    其中这个估值表很明显可以做为自己买卖的决策了,看这:

    当前股价远远大于分析该企业应该值的价格,属于高估状态,那高估状态下的股票,为了稳妥,你会选择买么?

    这个方法,你要明白的是因为折现率是可以人为设定的,很明显其算出来的估值会有很大的偏差的,当然也极大的会影响到咱们的买卖决策结果 ,所以常见的估值法就会用相对估值了。

    相对估值:

    它其实就是使用PE市盈率、PB市净率、PS市销率的估值指标,关于这三者的计算方法可以参照如下表:

    那为啥这是属于“相对”估值呢?因为这些指标的大小是取决于同行业其它公司的,也就是通过比较来实现的。

    使用JQData查询估值指标:

    API了解:

    好,还是回到咱们的python世界,来看一下如何来获取这些估值指标:

    其中就有我们想要的估值数据:

    实现: 

    咱们来获取一下:

    这样就获取了所有股票市值和估值相关的数据了, 好,那这些数据肯定是为了选股用的对吧,在上次咱们已经筛选出了健康的公司了:

    那我想再根据估值指标,进一步筛选我想买的公司的股票,那怎么结合起来使用呢?其实也很简单,因为财务指标和估值指标都有一个code是可以进行匹配的,所以可以把估值指标中的pe数据追加到财务指标中新增一列,如下:

    好,此时我们就可以加上pe的条件了,比如我只想要pe<50的股票,那么可以这么弄:

    总结:

    至此,咱们已经学会了如何通过Python编程来获取到股票的一些数据了,当然啦离通过编程来影响咱们炒股的决策这一目的还差很远很远,但是它是一个基石,没有数据何谈量化,所以循序渐进慢慢来,另外就是对于Python这门语言,我已经下定决定在未来的某时会从0基础来重新好好的审视一下它,真的太强大了。 

    关注个人公众号,获得实时推送

    展开全文
  • jq使用教程03_JQData说明书概要

    千次阅读 2019-04-22 10:46:07
    JQData是什么 JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经3年沉淀,15万...
  • 近来听说有部分小伙伴在安装JQData时遇到了点小麻烦,导致最后没有安装成功,为了帮助小伙伴们快速成功安装JQData,小编今天来为大家排一下“雷”,希望能帮到你们哟 (・ω・) 友情提示,文末评论区有彩蛋~ ...
  • 聚宽JQData说明书

    千次阅读 2019-02-19 19:50:26
    JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经3年沉淀,15万宽客及数百家...
  • JQData说明书 由于内容较多,可使用Ctrl+F搜索您需要的数据。 注意:query函数的更多用法详见:query简易教程 JQData是什么 JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务...
  • 聚宽平台实际上提供了两种查询数据的方法,第一种是线上在聚宽平台可以使用的API:jqdata,另外一种则是本地的接口:JQData,是的,你没有看错,只是大小写的不同,搞得一开始我以为完全是同一种。jqdata可以线上...
  • JQData安装 | 最贴心教程,安装JQData全靠这篇指南 Hi, 各位亲爱的小伙伴们! 近来听说有部分小伙伴在安装JQData时遇到了点小麻烦,导致最后没有安装成功,为了帮助小伙伴们快速成功安装JQData,小编今天来为大家排...
  • 1.安装jqdata pip install jqdatasdk 2.登录jqdata from jqdatasdk import * auth('账号','密码') #账号是申请时所填写的手机号;密码为聚宽官网登录密码,新申请用户默认为手机号后6位 3. 一些简单API 3.1 得到全...
  • JQdata的下载安装

    2019-12-07 22:26:01
    1、如何将JQdata数据保存成csv文件和npy 2、批量导出指定时间段的估值和财务数据 3、不限语言极速调取,JQdataHTTP接口正式上线 等等,可以挖掘出很多宝藏   基础数据是免费的,注册免费使用一年,...
  • jqdata在提供基础数据的时候,并没有提供换手率这一数据,需要自己进行计算,本文将从财务数据里面计算出来换手率这一数据,合并到日数据和30分钟数据。 话不多说,直接上代码: import pandas as pd import ...
  • JQData估值分析

    2019-08-23 15:42:57
    JQData ,我们找到了 2005 年至今的全市场估值数据(取自沪深市场每日成交概况),从中提取出深圳市场从 2005 年至今的平均市盈率数据。我们发现: ① 深圳市场在最近两轮牛市的顶点,也即 2008 年 1 月 15 日和...
  • jqdata 从JSON到HTML元素的自动jQuery数据绑定,反之亦然。 这将自动检测目标元素是输入文本框,选择,单选按钮还是普通的html容器,然后设置其值。 如何使用 链接jquery和jqdata库(例如,我将使用jquery-1.11.0....
  • 运行代码下列代码,提示错误 没有安装 jqdata。 打开Anaconda Prompt 输入 pip install jqdata 提示cannot find command 'git' 然后百度了半天,有人说 pip install git 出错可以使用 conda install git 但是依然...
  • jqdata在提供基础数据的时候,并没有提供换手率这一数据,需要自己进行计算,本文将从财务数据里面计算出来换手率这一数据,合并到日数据和30分钟数据。 import pandas as pd import jqdatasdk as JQ stock_data...
  • JQdata是什么? JQData是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。使用JQData,可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。历经3年沉淀,15...
  • 什么是聚宽数据-JQData? 使用JQData金融数据服务,可快速查看、计算或接入金融数据信息,解决本地、web、自研金融终端调用数据的需求。支持python多版本及多操作系统。为财经类企业、金融机构、学术研究机构和量化...
  • 聚宽打开notebook,导入jqdata库 在聚宽上通过 “我的策略”模块,可以轻松地实现回测。 但在学习阶段,存在很多问题,无法清晰看到使用的函数能够导出什么类型的数据。 而如果通过anaconda打开notebook,实际上...
  • 1. JQData简介 (1)JQData是聚宽数据团队专门为有志于从事量化投资的金融机构、研究人员以及个人量化爱好者提供的本地量化金融数据。用户只需在本地Python环境下安装JQData数据包,输入三行代码,即可调用由聚宽...
  • 注意:如果你想使用来自其他回测平台的日志,可能还需要将提取出的品种代码转换为JQData兼容的格式,JQData提供了一个API可以实现这种转换:normalize_code,详见官方文档。 考虑到回测日志可能包含很多次的买入和...
  • 本地量化金融数据JQData,是聚宽数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务。自有版权,支持国内多家头部券商实盘交易。历经15万量化研究者与数百家机构使用验证。 JQData目前已...
  • 1. JQData简介 (1)JQData是聚宽数据团队专门为有志于从事量化投资的金融机构、研究人员以及个人量化爱好者提供的本地量化金融数据。用户只需在本地Python环境下安装JQData数据包,输入三行代码,即可调用由聚宽...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 770
精华内容 308
关键字:

jqdata