数据API

本产品提供了金融数据api,方便用户调用接口获取各种数据,通过python的api调用接口,返回DataFrame格式的数据和消息,以下是用法

导入接口

在python程序里面导入module,然后用注册的用户帐号登录就可以使用行情和参考数据的接口来获取数据了

引入模块

from jaqs.data.dataapi import DataApi

登录数据服务器

api = DataApi(addr='tcp://data.quantos.org:8910')
api.login("phone", "token")

调用数据接口

主要数据主要分为两大类:

  • 市场数据,目前可使用的数据包括日线,分钟线
  • 参考数据,包括财务数据、公司行为数据、指数成份数据等

行情数据获取

获取实时行情

使用quote()函数查询最新市场行情。

输入参数:

字段 类型 说明 缺省值
symbol string 标的代码,支持多标的查询 不可缺省
fields string 需要返回字段,多字段以’,’隔开;为”“时返回所有字段 “”

使用示例:

df,msg = api.quote("000001.SH, cu1709.SHF", fields="open,high,low,last,volume")

输出字段:

字段 类型 说明
symbol string 标的代码
code string 交易所原始代码
date int 自然日,YYYYMMDD格式,如20170823
time int 时间,精确到毫秒,如14:21:05.330记为142105330
trade_date int YYYYMMDD格式,如20170823
open double 开盘价
high double 最高价
low double 最低价
last double 最新价
close double 收盘价
volume double 成交量(总)
turnover double 成交金额(总)
vwap double 截止到行情时间的日内成交均价
oi double 持仓总量
settle double 今结算价
iopv double 净值估值
limit_up double 涨停价
limit_down double 跌停价
preclose double 昨收盘价
presettle double 昨结算价
preoi double 昨持仓
askprice1 double 申卖价1
askprice2 double 申卖价2
askprice3 double 申卖价3
askprice4 double 申卖价4
askprice5 double 申卖价5
bidprice1 double 申买价1
bidprice2 double 申买价2
bidprice3 double 申买价3
bidprice4 double 申买价4
bidprice5 double 申买价5
askvolume1 double 申卖量1
askvolume2 double 申卖量2
askvolume3 double 申卖量3
askvolume4 double 申卖量4
askvolume5 double 申卖量5
bidvolume1 double 申买量1
bidvolume2 double 申买量2
bidvolume3 double 申买量3
bidvolume4 double 申买量4
bidvolume5 double 申买量5

获取日线行情

代码示例:

df, msg = api.daily(
                symbol="600832.SH, 600030.SH",
                start_date=20121026,
                end_date=20121130,
                fields="",
                adjust_mode="post")

结果示例(前5条记录):

close code high low oi open settle symbol trade_date trade_status turnover volume vwap
5.09 600832 5.24 5.08 NaN 5.23 NaN 600832.SH 20121026 交易 2.779057e+07 5381800 5.16
5.10 600832 5.15 5.08 NaN 5.11 NaN 600832.SH 20121029 交易 1.320333e+07 2582557 5.11
5.11 600832 5.18 5.08 NaN 5.12 NaN 600832.SH 20121030 交易 1.622705e+07 3170615 5.12
5.11 600832 5.14 5.09 NaN 5.12 NaN 600832.SH 20121031 交易 1.072007e+07 2097770 5.11
5.18 600832 5.20 5.12 NaN 5.12 NaN 600832.SH 20121101 交易 1.972100e+07 3814712 5.17

获取分钟线行情(不含ask,bid信息)

代码示例:

df,msg = api.bar(
            symbol="600030.SH",
            trade_date=20170928,
            freq="5M",
            start_time= 90000,
            end_time= 160000,
            fields="")

结果示例(前5条记录):

close code date freq high low oi open settle symbol time trade_date turnover volume vwap
18.05 600030 20170928 5M 18.08 18.00 NaN 18.01 NaN 600030.SH 93500 20170928 13576973.0 752900 18.032903
18.03 600030 20170928 5M 18.06 18.01 NaN 18.04 NaN 600030.SH 94000 20170928 16145566.0 895110 18.037522
18.04 600030 20170928 5M 18.05 18.02 NaN 18.03 NaN 600030.SH 94500 20170928 11024829.0 611400 18.032105
17.99 600030 20170928 5M 18.05 17.97 NaN 18.04 NaN 600030.SH 95000 20170928 30021003.0 1667190 18.006948
18.02 600030 20170928 5M 18.03 17.97 NaN 17.98 NaN 600030.SH 95500 20170928 13691203.0 761161 17.987263

获取分钟线行情(包含ask,bid信息)

代码示例:

df,msg = api.bar_quote(
                    symbol="000001.SH,cu1709.SHF",
                    start_time = 95600,
                    end_time=135600,
                    trade_date=20170823,
                    freq= "5M",
                    fields="open,high,low,last,volume")

结果示例(前5条记录):

high low symbol time trade_date volume
3294.3371 3291.7666 000001.SH 100000 20170823 493058300
3292.3162 3289.5202 000001.SH 100500 20170823 492695100
3290.4118 3288.3906 000001.SH 101000 20170823 458298100
3289.2133 3285.9129 000001.SH 101500 20170823 535085000
3287.4892 3284.6076 000001.SH 102000 20170823 426738700

基本数据获取

获取证券基础信息

代码示例:

df, msg = api.query(view="jz.instrumentInfo",
                 fields="list_date,delist_date,symbol,market",
                 filter="inst_type=1&trade_date=20171219")

结果示例(前5条记录):

delist_date list_date market name symbol
99999999 19991110 SH 浦发银行 600000.SH
99999999 20001219 SH 民生银行 600016.SH
99999999 20030106 SH 中信证券 600030.SH
99999999 20021009 SH 中国联通 600050.SH
99999999 19970807 SH 国金证券 600109.SH
99999999 20000526 SH 广汇能源 600256.SH

获取指数基本信息

代码示例:

df, msg = api.query(
                view="lb.indexInfo",
                fields="",
                filter="",
                data_format='pandas')

结果示例(前5条记录):

| symbol |
| — |
| 000001.SH |
| 000002.SH |
| 000003.SH |
| 000004.SH |
| 000005.SH |

获取交易日历

代码示例:

df, msg = api.query(
                view="jz.secTradeCal",
                fields="date,istradeday,isweekday,isholiday",
                filter="start_date=20170101&end_date=20170801")

结果示例(前5条记录):

isholiday istradeday isweekday trade_date
F T T 20170103
F T T 20170104
F T T 20170105
F T T 20170106
F T T 20170109

获取分配除权信息

代码示例:

df, msg = api.query(
                view="lb.secDividend",
                fields="",
                filter="start_date=20170101&end_date=20170801",
                data_format='pandas')

结果示例(前5条记录):

ann_date bonus_list_date cash cash_tax cashpay_date end_date exdiv_date publish_date record_date share_ratio share_trans_ratio symbol
20161025   0.20000000 0.20000000 20170103 20160930 20170103 20161227 20161230 0.0 0.000000 002059.SZ
20170117 20170217 3.60000000 3.60000000 20170217 20161231 20170217 20170210 20170216 0.0 5.000000 300561.SZ
20161105   0.50000000 0.50000000 20170216 20160630 20170216 20170210 20170215 0.0 0.000000 601900.SH
20170120   4.50000000 4.50000000 20170303 20161231 20170303 20170224 20170302 0.0 0.000000 603025.SH
20170125 20170307 6.00000000 6.00000000 20170306 20161231 20170306 20170227 20170303 0.0 12.000000 600816.SH

获取复权因子

代码示例:

df, msg = api.query(
                view="lb.secAdjFactor",
                fields="",
                filter="symbol=002059&start_date=20170101&end_date=20170801",
                data_format='pandas')

结果示例(前5条记录):

adjust_factor symbol trade_date
2.077892 002059.SZ 20170103
2.077892 002059.SZ 20170104
2.077892 002059.SZ 20170105
2.077892 002059.SZ 20170106
2.077892 002059.SZ 20170109

获取停牌信息

代码示例:

df, msg = api.query(
                view="lb.secSusp",
                fields="susp_time",
                filter="symbol=002059",
                data_format='pandas')

结果示例(前5条记录):

ann_date resu_date susp_date susp_reason susp_time symbol
20080408 20080409 20080408 召开股东大会 9:30:00 002059.SZ
20080612 20080613 20080612 召开股东大会 9:30:00 002059.SZ
20080922 20080922 20080922 异常波动 9:30:00 002059.SZ
20090220 20090223 20090220 召开股东大会 9:30:00 002059.SZ
20090417 20090420 20090417 召开股东大会 9:30:00 002059.SZ

获取行业分类

代码示例:

df, msg = api.query(
                view="lb.secIndustry",
                fields="",
                filter="industry1_name=金融&industry2_name=金融&industry_src=中证",
                data_format='pandas')

结果示例(前5条记录):

in_date industry1_code industry1_name industry2_code industry2_name industry3_code industry3_name industry4_code industry4_name industry_src is_new out_date symbol
20130219 J 金融业 J66 货币金融服务         中证指数有限公司 Y   000001.SZ
20130219 J 金融业 J69 其他金融业         中证指数有限公司 Y   000563.SZ
20130219 J 金融业 J66 货币金融服务         中证指数有限公司 Y   600000.SH
20130219 J 金融业 J66 货币金融服务         中证指数有限公司 Y   600015.SH
20130219 J 金融业 J66 货币金融服务         中证指数有限公司 Y   600016.SH

获取指数成份

代码示例:

df, msg = api.query(
                view="lb.indexCons",
                fields="",
                filter="index_code=399001&is_new=Y",
                data_format='pandas')

结果示例(前5条记录):

in_date index_code out_date symbol
20140814 000001.SH   603126.SH
20140815 000001.SH   603111.SH
20090511 000001.SH   600372.SH
20140819 000001.SH   603100.SH
20140822 000001.SH   603609.SH

获取常量参数

代码示例:

df, msg = api.query(
                view="jz.sysConstants",
                fields="",
                filter="code_type=symbol_type",
                data_format='pandas')

结果示例(前5条记录):

code code_type value
1 inst_type 股票
10 inst_type 回购
100 inst_type 指数
101 inst_type 股指期货
102 inst_type 国债期货

获取日行情估值

代码示例:

df, msg = api.query(
                view="lb.secDailyIndicator",
                fields='pb,net_assets,ncf,price_level',
                filter='symbol=000063.SZ&start_date=20170605&end_date=20170701')

结果示例(前5条记录):

close_price float_market_value high_52w low_52w net_assets pb pe price_level share_float_free symbol total_market_value trade_date
19.62 6.726969e+06 20.05 13.07 3.659734e+10 2.2457 0.0 0 215879.8077 000063.SZ 8.218724e+06 20170605
19.81 6.792113e+06 20.05 13.07 3.659734e+10 2.2675 0.0 0 215879.8077 000063.SZ 8.298314e+06 20170606
20.59 7.059546e+06 20.80 13.07 3.659734e+10 2.3567 0.0 0 215879.8077 000063.SZ 8.625052e+06 20170607
20.63 7.073260e+06 21.05 13.07 3.659734e+10 2.3613 0.0 0 215879.8077 000063.SZ 8.641808e+06 20170608
20.98 7.193262e+06 21.09 13.07 3.659734e+10 2.4014 0.0 0 215879.8077 000063.SZ 8.788421e+06 20170609

获取资产负债表

代码示例:

df, msg = api.query(
                view="lb.balanceSheet",
                fields="",
                filter="symbol=002636.SZ",
                data_format='pandas')

结果示例(前5条记录):

acct_rcv ann_date inventories notes_rcv report_date report_type symbol tot_cur_assets
2.035835e+08 20130318 7.627147e+07 1.737082e+08 20121231 408006000 002636.SZ 1.074759e+09
7.050691e+08 20130425 1.685824e+08 2.460369e+08 20130331 408001000 002636.SZ 1.890115e+09
2.436788e+08 20120421 6.736024e+07 5.982293e+07 20101231 408009000 002636.SZ 4.718200e+08
2.495033e+08 20120424 1.077278e+08 1.173246e+08 20120331 408006000 002636.SZ 1.133775e+09
2.035835e+08 20140422 7.627147e+07 1.737082e+08 20121231 408009000 002636.SZ 1.074759e+09

获取利润表

代码示例:

df, msg = api.query(
                view="lb.income",
                fields="",
                filter="symbol=600030.SH,000063.SZ,000001.SZ&report_type=408002000&start_date=20160601&end_date=20170601",
                data_format='pandas')

结果示例(前5条记录):

ann_date int_income less_handling_chrg_comm_exp net_int_income oper_exp oper_profit oper_rev report_date symbol tot_oper_cost tot_profit total_oper_rev
20160812 3.120900e+10 857000000.0 1.779800e+10 1.909500e+10 8.142000e+09 2.723700e+10 20160630 000001.SZ 1.909500e+10 8.125000e+09 2.723700e+10
20160825 0.000000e+00 0.0 6.524571e+08 5.588709e+09 4.970444e+09 1.055915e+10 20160630 600030.SH 5.588709e+09 4.917090e+09 1.055915e+10
20160826 0.000000e+00 0.0 0.000000e+00 0.000000e+00 1.811750e+08 2.589879e+10 20160630 000063.SZ 2.615474e+10 1.336791e+09 2.589879e+10
20161029 0.000000e+00 0.0 7.365511e+08 5.237163e+09 3.643600e+09 8.880763e+09 20160930 600030.SH 5.237163e+09 3.659715e+09 8.880763e+09
20161021 3.200700e+10 863000000.0 1.836700e+10 1.881000e+10 8.389000e+09 2.719900e+10 20160930 000001.SZ 1.881000e+10 8.406000e+09 2.719900e+10

获取现金流量表

代码示例:

df, msg = api.query(
                view="lb.cashFlow",
                fields="",
                filter="symbol=002548.SZ",
                data_format='pandas')

结果示例(前5条记录):

ann_date cash_recp_prem_orig_inco cash_recp_return_invest cash_recp_sg_and_rs incl_dvd_profit_paid_sc_ms net_cash_flows_inv_act net_cash_received_reinsu_bus net_incr_dep_cob net_incr_disp_tfa net_incr_fund_borr_ofi net_incr_int_handling_chrg net_incr_loans_central_bank other_cash_recp_ral_fnc_act other_cash_recp_ral_oper_act recp_tax_rends report_date report_type stot_cash_inflows_oper_act stot_cash_outflows_oper_act symbol
20140815 0.0 1071150.68 4.747366e+08 0.0 3.387516e+05 0.0 0.0 0.0 0.0 0.0 0.0 0.000000e+00 2.372317e+07 0.00 20130630 408003000 4.984598e+08 4.938527e+08 002548.SZ
20140815 0.0 492274.24 4.574233e+08 0.0 -5.160987e+06 0.0 0.0 0.0 0.0 0.0 0.0 0.000000e+00 -2.986875e+05 0.00 20140630 408002000 4.571247e+08 4.261462e+08 002548.SZ
20140815 0.0 37071150.68 1.294270e+08 0.0 3.893878e+07 0.0 0.0 0.0 0.0 0.0 0.0 0.000000e+00 -7.582736e+06 0.00 20130630 408008000 1.218442e+08 1.523719e+08 002548.SZ
20140815 0.0 492274.24 1.098741e+08 0.0 -4.613494e+07 0.0 0.0 0.0 0.0 0.0 0.0 0.000000e+00 2.659082e+08 0.00 20140630 408007000 3.757823e+08 3.125591e+08 002548.SZ
20170429 0.0 19237803.19 2.754383e+09 2450000.0 -7.779336e+08 0.0 0.0 0.0 0.0 0.0 0.0 1.547990e+08 4.374965e+07 0.00 20161231 408001000 2.798133e+09 2.846801e+09 002548.SZ

获取业绩快报

代码示例:

df, msg = api.query(
                view="lb.profitExpress",
                fields="",
                filter="start_anndate=20170101",
                data_format='pandas')

结果示例(前5条记录):

ann_date net_profit_int_inc oper_profit oper_rev report_date symbol total_assets total_profit
20170207 1.054700e+10 1.227300e+10 9.844400e+10 20161231 601633.SH 9.214600e+10 1.248000e+10
20170713 1.493567e+08 1.902676e+08 1.218885e+09 20170630 002258.SZ 3.658932e+09 1.890177e+08
20170228 1.177647e+08 1.142228e+08 1.023947e+09 20161231 002406.SZ 2.538539e+09 1.389901e+08
20170228 2.148007e+08 1.276432e+08 4.011206e+09 20161231 002087.SZ 7.744742e+09 2.504674e+08
20170228 1.621291e+08 1.944727e+08 1.480000e+09 20161231 002688.SZ 2.713363e+09 2.025310e+08

获取限售股解禁表

代码示例:

df, msg = api.query(
                view="lb.secRestricted",
                fields="",
                filter="list_date=20170925",
                data_format='pandas')

结果示例(前5条记录):

lifted_shares list_date symbol
7.597341e+08 20171011 000536.SZ
7.586547e+08 20171011 000813.SZ
2.776560e+08 20171011 002701.SZ
1.151995e+08 20171010 603010.SH
5.385944e+06 20171010 300190.SZ