一、数据源
Tushare
Tushare社区门户(https://waditu.com),点击右上角“注册”,
获取token,登录成功后,点击右上角->个人主页->“用户中心”中点击“接口TOKEN”->复制token
注意:token是Tushare调取数据的唯一凭证,请妥善保管,如发现别人盗用,可在本页面点击“刷新”操作,之前的token将失效。
安装:pip install tushare
1.导入tushare
import tushare as ts
ts.set_token('your token here')
#以上方法只需要在第一次或者token失效后调用,完成调取tushare数据凭证的设置,正常情况下不需要重复设置。也可以忽略此步骤,直接用pro_api('your token')完成初始化
pro = ts.pro_api() #初始化pro接口
如果上一步骤ts.set_token('your token')无效或不想保存token到本地,也可以在初始化接口里直接设置token:
pro = ts.pro_api('your token')
2.数据调取
以获取交易日历信息为例:
df = pro.trade_cal(exchange='', start_date='20180901', end_date='20181001', fields='exchange,cal_date,is_open,pretrade_date', is_open='0')
或者
df = pro.query('trade_cal', exchange='', start_date='20180901', end_date='20181001', fields='exchange,cal_date,is_open,pretrade_date', is_open='0')
调取结果:
exchange cal_date is_open pretrade_date
0 SSE 20180901 0 20180831
1 SSE 20180902 0 20180831
2 SSE 20180908 0 20180907
3 SSE 20180909 0 20180907
Tushare提供的数据类型:https://waditu.com/document/2?doc_id=148
AKSHARE
GITHUB:https://github.com/jindaxiang/akshare
AKSHARE: https://www.akshare.xyz/
https://www.akshare.xyz/zh_CN/latest/
一般安装
pip install akshare
或
pip install akshare -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com --upgrade
使用范例:
import akshare as ak
hist_df = ak.stock_us_daily(symbol="AMZN") # Get U.S. stock Amazon's price info
print(hist_df)
#Output
open high low close volume
date
1997-05-15 29.25 30.0000 23.1300 23.5000 6013000.0
1997-05-16 23.63 23.7500 20.5000 20.7500 1225000.0
1997-05-19 21.13 21.2500 19.5000 20.5000 508900.0
gopup 开源数据库
项目的地址为:
https://github.com/justinzm/gopup
GoPUP数据
指数数据:微博指数数据,百度指数数据,百度搜索数据,百度资讯指数,百度媒体指数,百度需求图谱,百度人群画像年龄分布,百度人群画像性别分布,百度人群画像兴趣分布;算数数据:算数指数数据,算数相关性分析,算数地域分析,算数城市分析,算数年龄分析,算数性别分析,算数用户阅读兴趣分类,谷歌指数数据,谷歌指数数据,谷歌事实查证;宏观数据:中国宏观数据,中国宏观杠杆率数据,货币汇率数据;利率数据:Shibor数据,Shibor报价数据,Shibor均值数据,LPR数据;新经济公司:千里马公司,独角兽公司,倒闭公司,商业特许经营公司;信息数据:新闻联播文字稿;生活数据:中国油价数据,汽柴油历史调价信息,调价日的地区油价历史数据;诗词数据:唐代诗人,唐诗数据;影视数据:实时电影票房数据,单日电影票房数据,单日影院票房数据,实时电视剧播映指数,实时综艺播映指数,艺人商业价值,艺人流量价值;全国高校:全国普通高等学校名单,全国成人高等学校名单,全国高等学校详情数据;疫情数据:网易疫情数据,丁香园疫情数据……
安装方法:pip install gopup
使用文档:gopup-cookbook http://www.gopup.cn/login
当前版本:v0.3.0
https://github.com/cqkenuo/gopup
Quandl (部分免费)
https://www.quandl.com/
先注册,后使用
quandl.get("ABMI/INT_RATE_SPREAD_2YRVS10YR_CHN", authtoken="******") #token自己申请
二、宏观数据
提供银行和政府公布的利率数据,日度更新。目前主要数据有以下几种:
利率数据
Shibor利率
官方数据:www.shibor.org
import tushare as ts
ts.set_token('your token here')
pro = ts.pro_api()
df = pro.shibor(start_date='20180101', end_date='20181101')
#数据样例
date on 1w 2w 1m 3m 6m 9m 1y
0 20181101 2.5470 2.6730 2.6910 2.6960 2.9760 3.2970 3.5040 3.5500
1 20181031 2.3700 2.7150 2.7300 2.6890 2.9630 3.2980 3.5040 3.5500
2 20181030 1.5660 2.5980 2.6400 2.6630 2.9570 3.2950 3.5010 3.5500
LPR贷款基础利率
pro = ts.pro_api()
df = pro.shibor_lpr(start_date='20180101', end_date='20181130')
#数据样例
date 1y
0 20181130 4.31
1 20181129 4.31
2 20181128 4.31
Libor利率
pro = ts.pro_api()
df = pro.libor(curr_type='USD', start_date='20180101', end_date='20181130')
#数据样例
date curr_type on 1w 1m 2m 3m 6m
0 20181130 USD 2.17750 2.22131 2.34694 2.51006 2.73613 2.89463
1 20181129 USD 2.18275 2.22881 2.34925 2.51125 2.73813 2.88519
2 20181128 USD 2.18250 2.22450 2.34463 2.49500 2.70663 2.88663
Hibor利率
df = pro.hibor(start_date='20180101', end_date='20181130')
#数据样例
date on 1w 2w 1m 2m 3m 6m
0 20181130 1.52500 1.10125 1.08000 1.20286 1.83030 2.03786 2.32821
1 20181129 0.76143 0.95643 1.01036 1.12357 1.80493 2.01018 2.31643
2 20181128 0.66786 0.95607 0.99929 1.10964 1.77104 1.97643 2.30143
宏观数据
货币供应量
df = pro.cn_m(start_m='201901', end_m='202003')
#获取指定字段
df = pro.cn_m(start_m='201901', end_m='202003', fields='month,m0,m1,m2')
#数据样例
#
month m0 m0_yoy m0_mom m1 m1_yoy m1_mom m2 m2_yoy m2_mom
0 202003 83000.00 10.80 -5.90 575100.00 5.00 4.05 2080900.00 10.10 2.47
1 202002 88200.00 10.90 -5.36 552700.00 4.80 1.32 2030800.00 8.80 0.38
2 202001 93200.00 6.60 20.73 545500.00 0.00 -5.30 2023100.00 8.40 1.84
GDP数据
pro = ts.pro_api()
df = pro.cn_gdp(start_q='2018Q1', end_q='2019Q3')
#获取指定字段
df = pro.us_tycr(start_q='2018Q1', end_q='2019Q3', fields='quarter,gdp,gdp_yoy')
#数据样例
quarter gdp gdp_yoy pi pi_yoy si si_yoy ti ti_yoy
0 2019Q4 990865.1000 6.10 70466.7000 3.10 386165.3000 5.70 534233.1000 6.90
1 2019Q3 712845.4000 6.20 43005.0000 2.90 276912.5000 5.60 392927.9000 7.00
2 2019Q2 460636.7000 6.30 23207.0000 3.00 179122.1000 5.80 258307.5000 7.00
居民消费价格指数(CPI)
pro = ts.pro_api()
df = pro.cn_cpi(start_m='201801', end_m='201903')
#获取指定字段
df = pro.us_cpi(start_q='201801', end_q='201903', fields='month,nt_val,nt_yoy')
#数据样例
month nt_val nt_yoy nt_mom nt_accu town_val town_yoy town_mom town_accu cnt_val cnt_yoy cnt_mom cnt_accu
0 201903 102.30 2.30 -0.40 101.80 102.30 2.30 -0.40 101.90 102.30 2.30 -0.30 101.80
1 201902 101.50 1.50 1.00 101.60 101.50 1.50 1.00 101.60 101.40 1.40 0.90 101.50
工业生产者出厂价格指数(PPI)
pro = ts.pro_api()
df = pro.cn_ppi(start_m='201905', end_m='202005')
#获取指定字段
df = pro.cn_ppi(start_m='201905', end_m='202005', fields='month,ppi_yoy,ppi_mom,ppi_accu')
#数据样例
month ppi_yoy ppi_mom ppi_accu
0 202005 -3.70 -0.40 -1.70
1 202004 -3.10 -1.30 -1.20
2 202003 -1.50 -1.00 -0.60
三、债券数据
债券基础信息
和讯网银行间债券数据
http://bond.money.hexun.com/quote/bondtype/gzyh.aspx
和讯网交易所市场债券数据
http://bond.money.hexun.com/quote/bondtype/gzsh.aspx
个债资料
http://bond.money.hexun.com/all_bond/030004_gz.shtml
AKSHARE获取债券市场数据
1. 现券市场报价行情(AKSHARE)
- 现券市场报价行情
接口: bond_spot_quote
https://www.akshare.xyz/zh_CN/latest/data/bond/bond.html
目标地址: http://www.chinamoney.com.cn/chinese/mkdatabond/
描述: 提供中国外汇交易中心暨全国银行间同业拆借中心-市场数据-市场行情-债券市场行情-现券市场报价行情
限量: 单次返回所有数据
bond_quote = ak.bond_spot_quote()
print(bond_quote)
债券简称 报价机构 买入/卖出净价(元) 买入/卖出收益率(%)
0 17附息国债04 上海银行 101.26 / 103.01 3.1717 / 2.8601
1 20附息国债11 中金公司 99.51 / 99.97 2.9500 / 2.6550
2 19附息国债15 摩根大通银行 98.17 / 99.61 3.3700 / 3.1800
3 20附息国债03 摩根大通银行 98.47 / 98.91 2.9700 / 2.7600
4 19附息国债16 摩根大通银行 99.36 / 100.37 3.2400 / 3.0500
这个结果可读性不高,而且数字没有分离,我自己写了以下代码重构一个bond_quote_new 代替bond_quote
price_buy = []
price_sell = []
for i in bond_quote['买入/卖出净价(元)']:
data=i.split('/')
if data[0].strip() == '---':
price_buy.append('')
else:
price_buy.append(float(data[0].strip()))
if data[1].strip() == '---':
price_sell.append('')
price_sell.append(float(data[1].strip()))
yield_buy = []
yield_sell = []
for i in bond_quote['买入/卖出收益率(%)']:
data=i.split('/')
if data[0].strip() == '---':
yield_buy.append('')
else:
yield_buy.append(float(data[0].strip()))
if data[1].strip() == '---':
yield_sell.append('')
else:
yield_sell.append(float(data[1].strip()))
bond_quote_new = bond_quote[['债券简称','报价机构']]
bond_quote_new['买入净价']=price_buy
bond_quote_new['卖出净价']=price_sell
bond_quote_new['买入收益率']=yield_buy
bond_quote_new['卖出收益率']=yield_sell
注意处理bond_quote空值'---':
bond_quote_new[bond_quote_new['买入收益率']=='']
Out[]:
债券简称 报价机构 买入净价 卖出净价 买入收益率 卖出收益率
3798 18建元21A2_bc 中金公司 60.82 64.82
最终得到:
bond_quote_new
Out[51]:
债券简称 报价机构 买入净价 卖出净价 买入收益率 卖出收益率
0 19农发08 上海银行 100.68 101.26 3.49 3.375
1 20光大银行CD121 开发银行 98.14 98.21 2.8498 2.5506
2 20交通银行CD062 开发银行 97.86 97.97 2.95 2.6507
3 20交通银行CD051 开发银行 97.99 98.08 2.9099 2.6106
4 20交通银行CD046 开发银行 98.06 98.14 2.8999 2.6005
... ... ... ... ... ...
4843 20华夏银行CD404 第一创业 97.68 97.96 3.16 2.66
4844 20光大银行CD275 第一创业 97.68 97.96 3.16 2.66
4845 20华夏银行CD408 第一创业 96.85 97.26 3.2401 2.74
4846 20华夏银行CD433 第一创业 96.85 97.27 3.24 2.74
4847 20中国银行CD092 第一创业 97.68 97.96 3.1499 2.65
2. 现券市场成交行情(AKSHARE)
接口: bond_spot_deal
目标地址: http://www.chinamoney.com.cn/chinese/mkdatabond/
描述: 提供中国外汇交易中心暨全国银行间同业拆借中心-市场数据-市场行情-债券市场行情-现券市场成交行情
限量: 单次返回所有即期数据
bond_deal = ak.bond_spot_deal()
print(bond_deal)
债券简称 成交净价(元) 最新收益率(%) 涨跌(BP) 加权收益率(%) 交易量(亿)
0 20附息国债12 100.44 3.7850 -1.50 3.7917 None
1 20附息国债16 100.40 3.2225 -0.69 3.2189 None
2 20农发06 99.70 2.6700 0.01 2.6700 None
3 20国开10 95.34 3.6800 -0.25 3.6761 None
4 20附息国债13 99.99 3.0200 -1.50 3.0233 None
米筐量化债券数据规范:
https://www.ricequant.com/
RQSDK 安装及配置:
RQSDK使用文档链接(必读):https://www.ricequant.com/doc/rqsdk
请参考以上文档安装RQSDK并配置许可证(License Key)。RQSDK默认包含RQData组件,无需额外安装及配置。 您可以根据需求进一步安装RQFactor、RQAlpha Plus及RQOptimizer,详见使用文档。请放心,安装过程非常简便快捷。
如何使用RQSDK产品的丰富功能:
以RQData为例,在您完成RQSDK的安装配置后,通过以下语句初始化RQData:
import rqdatac
rqdatac.init()
快速参考链接:
- RQData Python API文档:www.ricequant.com/doc/rqdata/python/
- RQOptimizer API文档:www.ricequant.com/doc/rqoptimizer/api/
- RQFactor使用文档:www.ricequant.com/doc/rqfactor/manual.html
- RQFactor API文档:www.ricequant.com/doc/rqfactor/api.html
- RQAlpha Plus使用教程:www.ricequant.com/doc/rqalpha-plus/tutorial.html
- RQAlpha Plus API文档:www.ricequant.com/doc/rqalpha-plus/api/
四、监管公开数据
1.文件名称:银行业金融机构法人名单**
数据源:银保监会官网
查询方法:登录 http://www.cbirc.gov.cn/ , 搜索框输入‘银行业金融机构法人名单’
http://www.cbirc.gov.cn/cn/view/pages/index/jiansuo.html?keyWords=银行业金融机构法人名单
数据样例:
2.外汇交易中心成员名单**
人民币外汇做市商
人民币外汇尝试做市机构
人民币外汇会员
外币对会员
外币货币市场会员
集中办理人民币购售名单
人民币外汇即期会员
人民币外汇远期会员
人民币外汇掉期会员
人民币外汇货币掉期会员
人民币外汇期权会员
债券通香港结算行
数据源:中国外汇交易中心
http://www.chinamoney.com.cn/chinese/mtmemfxmk/
数据样例:
3.中国票据交易系统参与者名单汇总表**
数据源:上海票据交易所
查询方法:登录 http://www.shcpe.com.cn , 搜索框输入‘系统参与者名单汇总表’
http://www.shcpe.com.cn/content/shcpe/index/search.html?keyword=系统参与者名单
数据样例:
4.《中国银行间市场金融衍生产品交易主协议(2009年版)》协议备案名单
数据源:中国银行间市场交易商协会
http://www.nafmii.org.cn/zlgl/scjy/xymd/201207/t20120706_80771.html
数据样例:
《票据交易主协议(2016年版)》
数据源:中国银行间市场交易商协会
http://www.nafmii.org.cn/zlgl/scjy/xymd/201701/t20170120_80773.html
数据样例:
5.中国公历/农历数据,年份(1901-2100)
数据来源:香港天文台
https://www.hko.gov.hk/tc/gts/time/conversion1_text.htm#