新闻中心
「qstock数据篇」行业概念板块与资金流(quickbi支持的数据源)
简介
qstock由“Python金融量化”公众号开发,试图打造成个人量化投研分析开源库,目前包括数据获取(data)、可视化(plot)、选股(stock)和量化回测(backtest)四个模块。其中数据模块(data)数据来源于东方财富网、同花顺、新浪财经等网上公开数据,数据爬虫部分参考了现有金融数据包tushare、akshare和efinance。qstock致力于为用户提供更加简洁和规整化的金融市场数据接口。可视化模块基于plotly.express和pyecharts包,为用户提供基于web的交互图形简单操作接口;选股模块提供了同花顺的技术选股和公众号策略选股,包括RPS、MM趋势、财务指标、资金流模型等,回测模块为大家提供向量化(基于pandas)和基于事件驱动的基本框架和模型。
qstock目前在pypi官网上发布,开源版本为1.1.0,意味着读者直接“pip install qstock”安装即可使用。GitHub地址:https://github.com/tkfy920/qstock。
目前部分策略选股和策略回测功能仅供知识星球会员使用,会员可在知识星球置顶帖子上上获取qstock-1.1.1.tar.gz (强化版)安装包,进行离线安装。
下面为大家介绍qstock数据模块(data)中行业、概念板块数据和资金流数据的调用方法。
#导入qstock模块 importqstockas qs01 指数成分股
00 获取常见指数的成分股
index_member(code)
code : 指数名称或者指数代码 #上证50成份股 df=qs.index_member(sz50) #查看前几行数据 df.head() #沪深300成分股 qs.index_member(hs300)02 概念板块数据
获取同花顺概念板块名称、成分股、和行情数据
01 获取同花顺概念板块名称
ths_index_name(flag=概念)
flag=概念板块 or 行业板块
#行业板块名称 name_list=qs.ths_index_name(行业) #查看5个 name_list[:5][种植业与林业, 养殖业, 农产品加工, 农业服务, 煤炭开采加工]
#概念板块名称 name_list=qs.ths_index_name(概念) #查看5个 name_list[:5][信创, 有机硅概念, 空气能热泵, 先进封装(Chiplet), 减速器]
02 概念板块成分股
获取同花顺概念板块成分股
注意,同花顺数据接口不太稳定,如报错过一段时间再试。ths_index_member(code=None)
code:输入板块行业或概念代码或简称
#比如种植业与林业成分股 df=qs.ths_index_member(种植业与林业) #查看前几行 df.head() #比如有机硅概念 df=qs.ths_index_member(有机硅概念) #查看前几行 df.head()03 概念指数行情数据
获取同花顺概念或行业板块指数行情数据(开盘、最高、最低、收盘和成交量)
ths_index_data(code=None)
code:输入板块行业或概念代码或简称
df=qs.ths_index_data(有机硅概念) df.head()03 资金流数据
04日内资金流数据
intraday_money(code)
code : 股票、债券代码
获取单只股票最新交易日的日内分钟级单子流入流出数据
#注意要在交易日交易时段才能获取到相应数据 df=qs.intraday_money(中国平安) df.head()05 历史资金流向数据
hist_money(code)
code : 股票、债券代码
获取股票、债券、期货等的历史单子流入流出数据
df=qs.hist_money(中国平安) df.tail()06个股n日资金流
stock_money(code, ndays=[3, 5, 10, 20])
stock可以为股票简称或代码,如晓程科技或300139
ndays为时间周期或list,如3日、5日、10日等#默认ndays=[3, 5, 10, 20]df=qs.stock_money(中国平安
)
dfdf=qs.stock_money(中国平安,[10,30,60]) df.tail()07 同花顺资金流数据
获取同花顺个股、行业、概念资金流数据
ths_money(flag=None,n=None):
flag:个股,概念,行业
n=1,3,5,10,20分别表示n日资金累计净额
#个股20日资金流数据 df=qs.ths_money(个股,n=20) df.tail()#行业板块10日资金流数据 df=qs.ths_money(行业,n=10) df.tail()#概念板块5日资金流数据 df=qs.ths_money(概念,n=5) df.tail()04 北向资金
08 北向资金数据
north_money(flag=None,n=1)
flag=None,默认返回北上资金总体每日净流入数据
flag=行业,代表北向资金增持行业板块排行
flag=概念,代表北向资金增持概念板块排行
flag=个股,代表北向资金增持个股情况
n: 代表n日排名,n可选1、3、5、10、‘M’,‘Q,Y
即 {1:"今日", 3:"3日",5:"5日", 10:"10日",M:"月", Q:"季", Y:"年"}北向资金每日净流入
#北向资金每日净流入数据 df=qs.north_money() df.tail()北向资金增持行业板块
#北向资金增持行业板块5日排名 df=qs.north_money(行业,5) df.tail()北向资金增持概念板块
#北向资金增持概念板块 df=qs.north_money(概念,5) df.tail()北向资金增持个股情况
#北向资金增持个股情况 #有个小bug,列名没有对应起来,该函数调用将报错,将在新版本中修正。 df=qs.north_money(个股,5) df.tail()后续推文将进一步分享qstock数据模块中关于基本面数据、宏观数据、财经新闻数据等的调用方法。