基于qstock的量化复盘与自动盯盘


01

引言

qstock量化分析库和教程自发布以来已经有一段时间了。收到不少读者的反馈,希望在qstock上添加更多的实用功能和案例研究。在回应这些反馈的同时,公众号也一直在努力改进现有的功能和教程内容。我们的目标是为用户提供更全面、更实用、更易于理解的量化分析工具和教程,以满足他们不断变化的需求。相信在不久的将来,qstock将会成为您的最佳选择。

下面将为大家分享如何利用qstock进行量化复盘分析和实时自动化盯盘。

02

量化复盘

开市前或收盘后了解一下可能影响当日走势的重大利好和利空,比如外围涨跌,大宗商品、原油等等,下面结合qstock的数据接口,为大家提供一个量化复盘的思路框架。

  • 择时跟踪:期指、指数(沪深300和创业板等)、全球股市(标普和纳斯达克等)、商品期货等;

  • 板块跟踪:持仓个股所在板块、热点板块、权重板块;

  • 消息跟踪:持股跟踪、关注个股、板块龙头跟踪;

  • 资金流跟踪:查看个股和行业板块资金流向;

  • 涨跌停和龙虎榜数据:查看涨跌停个股,了解涨跌停原因,分析市场赚钱效应、进一步挖掘龙虎榜数据。

导入qstock包

import qstock as qs


01

财经新闻


新闻资讯数据
qs.news_data(news_type=None,start=None,end=None,code=None):

news_type:新闻类型:cctv'或'新闻联播';'js'或'金十数据';'stock' 或'个股新闻' 不输入参数,默认输出财联社电报新闻数据。

start:起始日期,如'20220930',不输入默认当前最新日期

end:结束日期,如'20221001',不输入默认当前最新日期

stock:个股代码,个股新闻时需输入该参数

财联社电报新闻

#默认参数输出财联社电报新闻数据
txt=qs.news_data('js')
txt_list=''.join(list(txt.content.apply(lambda s:str(s))))
txt_list=txt_list.replace('金十数据','').replace('据联合声明:','').replace('表示','')
#使用jieba处理分词并转为词云格式数据
c_data=qs.cloud_data(txt_list)
qs.chart_wordcloud(c_data)

e155920e0fd3ab6bb65ca9c693b86408.jpeg

新闻热点关键词是“油气”,而近期油气板块启动,特别是原油期货疯涨。

个股新闻

#使用个股新闻接口
df=qs.stock_news('福晶科技')
df.head()

c7e57d8b6ed59ebb7f300a983c08d6d0.jpeg

02

市场整体走势

指数跟踪一方面是确认市场整体趋势,行情向好时操作概率更高;另一方面是防止大跌,出现系统性风险。

A股指数

A股指数沪深300和创业板指数即可,二者分别代表了大盘蓝筹和中小成长股整体走势。在指数趋势向上时,重仓持有少操作,在指数趋势向下时,重个股,清仓。下面给出的是修正K线图,连续红色代表上涨趋势,连续绿色代表下跌趋势。

qs.HA_kline(qs.get_data('hs300')[-250:])

沪深300指数修正K线图

b3ed96ff901b5ab89d36e7a40b3e3dcf.jpeg

qs.HA_kline(qs.get_data('cyb')[-250:])

创业板指数修正K线图

15378e40f0d948142216efc9dd8f7882.jpeg


外盘指数

外盘指数一般看美股,主要是标普500和纳斯达克指数。

qs.HA_kline(qs.get_data('标普500')[-250:])

e8ad84d9eeaab4256f0cb9aac125ca0c.jpeg

qs.HA_kline(qs.get_data('纳斯达克')[-250:])

9a21a685faef928747c9f04347440bde.jpeg

全球指数涨跌幅对比

#常见的全球指数名称
global_indexs=['sh','cyb','恒生指数','道琼斯','标普500','纳斯达克','英国富时100','法国CAC40','德国DAX30','日经225','韩国KOSPI',
               '澳大利亚标普200','印度孟买SENSEX','台湾加权','俄罗斯RTS','加拿大S&P/TSX','巴西BOVESPA']
index_data=qs.get_price(global_indexs)[-250:].dropna()
start_date=index_data.index[0].strftime('%Y年%m月%d日')
end_date=index_data.index[-1].strftime('%Y年%m月%d日')
rets=(index_data/index_data.iloc[0]-1).iloc[-1].sort_values(ascending=False)
title='全球指数最近250日累计涨幅'
print(f'期间统计:{start_date}至{end_date}')
#qs.bar(rets,title=title)
期间统计:2022年04月20日至2023年03月31日

2734a0475a970b155487dc5af221fe45.jpeg


期货行情

关注期货行情,一个是关注当前经济发展情况(尤其是大宗商品),另一个是查看关联概念个股。

#获取期货最新行情
df=qs.realtime_data('期货')[['名称','涨幅']][:20]
qs.bar(df,x='名称',y='涨幅')

c9adeecb541badb9dfd9edb7a92d93f3.jpeg

#获取期货最新行情
df=qs.realtime_data('期货')[['名称','涨幅']][-10:]
qs.bar(df,x='名称',y='涨幅')

00b52e1aee9a97b62836a6e373b38505.jpeg

ETF基金涨跌情况

#获取ETF最新行情指标
df=qs.realtime_data('ETF')
#查看前几行
df.head(15)

5a6a8d6567fda788bda2b7ce73100b98.jpeg

03

资金流情况

资金流看个股和板块,值得注意的是不同交易软件对资金流入流出的计算存在一定差异,这里所谓的资金流入数据也是滞后的,仅供参考,需要结合个股和板块走势来看,一般一两天的资金流动噪音较大,持续几天或几周的资金净流入才参考价值。

#个股20日资金流数据
df=qs.ths_money('个股',n=20).sort_values('净额(万)',ascending=False)
df

2a9e289b3398ec97769169f5b97066d6.jpeg

#行业板块10日资金流数据
df=qs.ths_money('行业',n=10).sort_values('净额(亿)',ascending=False)
df

ec12b6d9379f3715c4387201049fdc04.jpeg

04

涨跌停情况

z

涨跌停板数据反映的是市场的赚钱效应或恐慌情绪,具有助涨助跌的功能,也常成为主力操作个股的借力的工具。经过长时间盘整后放量涨停的个股值得关注。

#获取当前最新交易日
latest_date=qs.latest_trade_date().replace('-','')
#涨停个股
up_df=qs.limit_pool('u',latest_date)
print(f'涨停板个股数量:{len(up_df)}')
if len(up_df)<1:
    print('今日没有涨停个股,市场赚钱效应较差,请保持高度谨慎!')
#跌停个股
down_df=qs.limit_pool('d',latest_date)
print(f'跌停板个股数量:{len(down_df)}')
if len(down_df)>10:
    print('当前跌停个股很多,请保持高度谨慎!')
elif len(down_df)>5:
    print('当前跌停个股较多,请保持谨慎')
涨停板个股数量:24
跌停板个股数量:1
up_df.head()

ac3181c4bf4e35d9ef52bcebeb04508e.jpeg

05

股票龙虎榜数据

qs.stock_billboard()

0c7e59d0cdf4c5e10503aca518b06675.jpeg

龙虎榜数据与涨跌板数据类似,是短期炒作个股的风向标,短线爱好者可以深入挖掘龙虎榜的信息。

03

盘中看盘

借助qstock的数据接口,可以对全市场个股进行扫描,通过量比排行,量比和涨幅靠前的具有突破形态的加入自选准备跟踪。观察北向资金流向,涨停板家数,涨跌比家数,以及板块与板块之间的联动情况,前一日的热点是否有持续性等。

01

个股量比榜

按照量比进行排名,查看涨幅介于3%-9%之间的个股,还可以加入其他条件进行筛选,如市盈率和最新价格等。

df=qs.realtime_data()
df=df.dropna().sort_values('量比',ascending=False)
df[(df['量比']>5)&(df['涨幅']>3)&(df['涨幅']<9.7)&(df['最新']<30)&(df['市盈率']>0)]

59c4685ea293da62d3d0f97bfabab8ab.jpeg

02

行业概念板块

#获取东方财富行业板块实时涨跌幅数据
data=qs.realtime_data('行业板块')[['名称','涨幅']]
data['权重']=abs(data['涨幅'])
#注意去掉涨幅为0的值,否则会报错
data=data[data['涨幅']!=0]
params={'data':data,'label':['名称'],'weight':'权重','value':'涨幅'}
qs.treemap(**params)

ff25d5cd07e00514ec3e73dd9e5e0cde.jpeg

#获取东方财富概念板块实时涨跌幅数据
data=qs.realtime_data('概念')[['名称','涨幅']]
data['权重']=abs(data['涨幅'])
data=data[data['涨幅']!=0]
params={'data':data,'label':['名称'],'weight':'权重','value':'涨幅'}
qs.treemap(**params)

e8e42e7002d460b68428f81d8e50b58e.jpeg

03

实时交易盘口异动数据

获取交易日实时盘口异动数据,相当于盯盘小精灵。realtime_change(flag=None):

flag:盘口异动类型,默认输出全部类型的异动情况。可选:['火箭发射', '快速反弹','加速下跌', '高台跳水', '大笔买入', '大笔卖出', '封涨停板','封跌停板', '打开跌停板','打开涨停板','有大买盘','有大卖盘', '竞价上涨', '竞价下跌','高开5日线','低开5日线', '向上缺口','向下缺口', '60日新高','60日新低','60日大幅上涨', '60日大幅下跌'] 上述异动类型分别可使用1-22数字代替。

df=qs.realtime_change('60日新高')
#查看前几行
df

445a296a62b48b8e5655efe4ccbb18c8.jpeg

04

自动盯盘

假设要对自选股和指数进行盯盘,又不想一直盯着交易软件,我们可以使用python编程,基于qstock的实时数据接口构建一个盯盘脚本文件,然后使用windows系统的任务计划程序,实现在交易日的交易时间进行自动化盯盘和提醒。由于篇幅所限,代码此处省略, 完整代码分享在Python金融量化知识星球上。

while True:
    pass
    #代码此处省略,
    #具体看Python金融量化知识星球
    # 休眠10秒,再次获取数据
    time.sleep(10)

实现交易日时间自动打开并运行盯盘脚本文件,当触发设置条件时会发出语言提醒。

c03a755288f0cbe8972e534bc4efa122.png

3e1beecfc6ddc8973197e1e3883c0233.png

关于Python金融量化

4f82971b4161a39f808ef5ff6f624a46.png

专注于分享Python在金融量化领域的应用。加入知识星球,可以免费获取qstock源代码、30多g的量化投资视频资料、量化金融相关PDF资料、公众号文章Python完整源码、与博主直接交流、答疑解惑等。添加个人微信sky2blue2可获取八五折优惠。

66efb7d161933c465d77523dd2a073d8.jpeg

# 简介 qstock由“Python金融量化”公众号开发,试图打造成个人量化投研分析开源库,目前包括数据获取(data)、可视化(plot)、选股(stock)和量化回测(backtest)四个模块。其中数据模块(data)数据来源于东方财富网、同花顺、新浪财经等网上公开数据。qstock致力于为用户提供更加简洁和规整化的金融市场数据接口,其中可视化模块为用户提供基于web的交互图形简单操作接口;选股模块提供了同花顺的技术选股和公众号策略选股,包括RPS、MM趋势、财务指标、资金流模型等,回测模块为大家提供向量化(基于pandas)和基于事件驱动的基本框架和模型。 读者直接在cmd或anaconda prompt上输入“pip install qstock ”进行安装,或输入“pip install -upgrade qstock”进行更新。 qstock是免费开源金融量化库,已在pypi官网和GitHub上发布,更新至1.3.5版本,添加了问财的数据访问功能,通过qstock.wencai('选股条件')调用。使用“pip install qstock ”进行安装,通过’pip install –upgrade qstock’进行更新。目前部分策略选股和策略回测功能仅供知识星球会员使用,会员可在知识星球置顶帖子上获取 qstock 的离线安装包。 关于 qstock 更详细的使用方法,请参考微信公众号Python金融量化 qstock 专题系列文章: 【qstock开源了】数据篇之行情交易数据 【qstock数据篇】行业概念板块与资金流 【qstock量化】数据篇之股票基本面数据 【qstock量化】数据篇之宏观指标和财经新闻文本 【qstock量化】动态交互数据可视化 【qstock量化】技术形态与概念热点选股池 【手把手教你】使用qstock实现量化策略选股 【手把手教你】使用qstock进行量化回测 基于qstock量化复盘自动盯盘 下面为大家介绍qstock各模块的具体调用方式和应用举例。 ```python #导入qstock模块 import qstock as qs ``` # 数据模块 # 行情交易数据接口 ## 实时行情数据 获取指定市场所有标的或单个或多个证券最新行情指标 realtime_data(market='沪深A', code=None): - market表示行情名称或列表,默认'沪深A股', '沪深京A':沪深京A股市场行情; '沪深A':沪深A股市场行情;'沪A':沪市A股市场行情 '深A':深市A股市场行情;北A :北证A股市场行情;'可转债':沪深可转债市场行情; '期货':期货市场行情;'创业板':创业板市场行情;'美股':美股市场行情; '港股':港股市场行情;'中概股':中国概念股市场行情;'新股':沪深新股市场行情; '科创板':科创板市场行情;'沪股通' 沪股通市场行情;'深股通':深股通市场行情; '行业板块':行业板块市场行情;'概念板块':概念板块市场行情; '沪深指数':沪深系列指数市场行情;'上证指数':上证系列指数市场行情 '深证指数':深证系列指数市场行情;'ETF' ETF基金市场行情;'LOF' LOF 基金市场行情 - code:输入单个或多个证券的list,不输入参数,默认返回某市场实时指标 如code='中国平安',或code='000001',或code=['中国平安','晓程科技','东方财富'] ### 某市场所有标的最新行情 ```python #获取沪深A股最新行情指标 df=qs.realtime_data() #查看前几行 df.head() ``` ```python #获取期货最新行情指标 df=qs.realtime_data('期货') #查看前几行 df.head() ``` ```python #获 -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值