简介

不同频率级别的行情数据的信息含量是不同的。一般而言,频率越高的数据蕴含的信息越多,这一点主要体现在两个方面:

切片数据细化带来量价波动的信息含量提升;

逐步分解的盘面数据对于交易行为辨识度的提高。

第一点很好理解,我们常常会观测更高频率的K线,提取在低频率数据中无法观测到的级别内数据波动,以期观测到更多的量价信息。

从本质上来说,对于行情数据的分析,包括判断投资者情绪、把握投资者资金流向、区分投资者交易目的等,最重要前提就是对于投资者的交易行为的识别。

第一点中对于量价关系的研究的目的本也在此。但是量价是交易行为最终的结果,与其在高频数据中根据结果反推交易行为,不如直接在其中识别交易行为。这就是第二点中所提到的,随着数据频率级别的提升,盘口状态的逐步还原,使得交易行为的识别度提高。

因此,本系列选股策略报告运用高频的盘口数据直接识别投资者的交易行为,通过对投资者交易行为的分析筛选个股,建立选股因子。闻“单”识东西,扶“盘”辨南北。

数据分析

A股市场最高级别的盘面行情数据为tick数据(深交所会推送逐笔委托数据,可根据该数据还原原始行情,但上交所只提供逐笔成交数据以及买一卖一前50笔委托,因此不能还原原始行情),tick数据反应的是订单薄上的买卖单变化情况,由于深交所推送频率为3秒一笔,上交所推送频率为5秒一笔,因此tick数据本质还是切片数据,只能反映每个时点上的买卖盘口数据,并不能完全反应市场交易行为,但是却提供了我们一个最贴近交易行为的观测样本。

我们tick数据来源于天软,level1数据只提供5档买卖价,图1为该tick数据示例,由于天软的tick数据是由交易所多台服务器推送,因此数据时间间隔并不固定。各家数据提供商提供的数据也会有一定的差别,也是因为接收推送的服务器不同的结果。

买入行为

由于做空成本与做空条件的限制,A股本质上是一个多头占优的市场,因此通过分析投资者的买入行为来识别得到的交易动机对股价预测有更好的指导作用。而在交易过程中,投资者买入个股的方式可以简单分为两种:积极买入与保守买入。

积极买入,投资者下单主动与盘口卖盘挂单成交;

保守买入,投资者所下限价订单挂单等待后续卖单与之成交。

投资者积极买入的行为往往代表着对于买入该股票的意愿极为强烈,愿意以高于当前成交价的价格买入个股,容易推高股价;

保守买入行为则代表着投资者对于某只个股买入价格敏感度较高,只愿意以自己认定的价格成交,因此只有股价下调至该买入价格时才能成交。

两种交易行为普遍存在,对于每一只个股而言何种交易行为占优是不尽相同的。在本篇报告中,我们根据tick级别的盘口数据进行分析,依据两类投资者比例建立选股因子,分析何种投资者占优的股票表现更为出色。

因子构建

1 构建方法

根据积极买入与保守买入的定义,在tick数据上计算积极买入与保守买入量,由于无法获得每笔成交数据,因此依据tick级别数据计算得到的结果也只是近似结果。

计算积极买入与保守买入方法:

积极买入:比对每一条tick数据,如果当前成交价格大于等于前一条tick数据的卖一价,当前tick上的成交量记为积极买入量;

保守买入:比对每一条tick数据,如果当前成交价格小于等于前一条tick数据的买一价,当前tick上的成交量记为保守买入量。

对当日所有tick上的积极买入与保守买入量加总得到每日积极买入与保守买入量:PB(positive buy)和CB(cautious buy)。

构建买入情绪因子:

BM代表着i股票过去N日保守买入量与积极买入量比。我们在后文中采用某股票过去20个交易日保守买入量与积极买入量比为选股指标。

2因子影响

我们对BM因子与股票下期收益相关性进行了研究,来观察该因子对于股票收益的影响。

我们对股票每月收益率与当月月初时BM因子值相关系数进行了计算:

图3中我们可以看到,总体上看BM因子值与股票当月收益率是正相关的,平均相关系数为0.052。因此保守买入与积极买入比越高时,当月股票收益率越高,反之当月股票收益率越低。

事实上,积极买入占比越高,意味着追高该股票的投资者越多。而当保守买入占比越高时(关注私募工场ID:simugongchang,联系场长微信:guo5_guoguo),虽然意味着股价前期处于下跌趋势,但是卖单大量被买盘挂单消化,说明股票有足够的的买盘作为支撑。

在下一部分中,我们会对因子的表现进行进一步的回测,来检验该因子的有效性。

买入情绪因子回测

1因子分组

对2010年-2017年2月全市场股票计算每个股票的BM因子值,每月月初根据此因子由大到小分为十组,按月调仓,考虑行业中性,观察2010年以来十组表现。

在此部分,我们对BM因子进行分组回测,回测规则如下:

1、时间区间:2010年1月至2017年2月;

2、选股范围:全A股票;

3、剔除上市不足一年股票;

4、按月调仓,每月首个交易日调仓;

5、买入时考虑停牌与涨停影响;

6、保持行业中性;

7、为避免换手率对因子分组收益比较的影响,分组回测时不考虑交易成本,单独观察组合时考虑双边千三交易费用。

我们对BM因子分组回测的表现如下:

根据BM因子的分组表现,可以看到BM因子由大到小的十组表现呈现明显的单调性,即随着BM因子的值逐渐增大,分组的年化收益逐渐上升。多空年化收益率达到26.01%,最大回撤为-15.55%,夏普比率为2.7924,月度胜率达到81.39%。

在考虑双边千三的交易成本的情形下,我们对BM因子第一组分年表现进行了分析。

可以看到,2017年以来年化收益不理想,不过样本数量较少,不具有代表性。从2010年到2016年每年均能稳定跑赢中证500。最大相对回撤出现在2015年大盘大幅下跌时,其他年份相对回撤均在10%以内,除去2014、2015年相对回撤甚至在5%以内。月度超额胜率也基本在70%以上。因子表现出色。

BM因子的平均RankIC为0.0724,说明因子对股票下一期收益有着较强的解释能力。

2因子剖析

反转中性化

通过对单因子分组表现的分析,我们发现该因子表现出色,但是很显然该因子会受到过去20个交易日涨跌幅也就是反转因子的影响,因此我们尝试剔除反转因子。

显而易见地,BM因子越高的组别说明过去20个交易日股票下跌的可能性更大,而反转因子在A股市场也是一个强有效的因子,因此我们对BM因子分组股票过去20个交易日平均涨跌幅进行了统计:

可以看到BM因子与过去20天涨跌幅呈现显著的负相关,因此反转因子的确会影响到BM因子的表现,因此我们通过回归的方式剔除因子与反转因子的相关性:

其中Last为个股过去20个交易日涨跌幅。我们把残差项作为新的因子,并根据新的因子重新进行分组,并计算新的分组各组过去20个交易日平均涨跌幅(关注私募工场ID:simugongchang,联系场长微信:guo5_guoguo)。我们看到中性化后,反转因子与BM因子的单调性得到降低,不同组别的的反转因子偏离度大大降低,两者的相关性也从-28.03%降低到约等于0%。据此我们可以根据中心化后的因子观察不同组别的表现。

我们对经过反转因子中性化后的BM因子进行分组回测:

我们可以看到,经过反转因子中性化后的BM因子十组年化收益仍然呈现单调的特性,而且第一组的年化收益率仅下降了1.5%。这说明BM因子得分较高的个股在过去20个交易日大概率处于下跌的走势里,但是这个因子筛选得到的不是纯粹下跌的个股,而是在下跌的过程中有足够买盘支撑的股票,因此在剔除了反转因子影响之后,BM因子仍然能够呈现极强的有效性。

在考虑双边千三的交易成本的情形下,我们对反转中性化BM因子第一组分年表现进行了分析。可以看到2010-2016年每年都能够跑赢中证500,除2014、2015年相对最大回撤在5%以内。

反转中性化BM因子的平均RankIC为0.0512,说明剔除反转影响后,因子对股票下一期收益仍有着较强的解释能力。

市值中性化

规模因子近几年呈现显著的alpha收益,因此在任何因子的回测中都不得不剔除市值的影响,图10为反转中性化BM因子各组的市值中位数分布,可以看到,表现较好的第1组还是呈现了较为明显的小市值效应。

所以为了进一步研究因子的有效性,我们尝试用同样的方法剔除市值的影响:

通过对反转市值中性化之后因子分组的表现,可以看到整体的超额收益的确下降,但第一组的相对回撤减小。整体而言,市值因子的影响较为显著。不过除2012年与2017年1-2月,中性化后的因子仍然能够跑赢中证500,月度胜率维持在70%以上。

中性化结果对比

经过原始BM因子、反转中性化、反转市值中性化BM因子的年化超额中证500收益分别为14.53%,13.24%,9.3%。BM因子受反转因子影响较小,而受市值因子影响较大。

历史上相对收益比较大的回撤主要发生在2014年12月份和2015年6月15日到2015年7月17日(关注私募工场ID:simugongchang,联系场长微信:guo5_guoguo)。2014年12月份,小市值出现了大幅回撤,我们市值中性化后的组合相较于银行、券商仍然属于偏小市值,因此当时组合出现了5%左右的相对回撤。而2015年6月15日到2015年7月17日全市场处于大幅下跌的行情下,极端行情可能使得我们对个股买入情绪判断产生了偏差,导致因子期间失效。

总结

本系列尝试在高频数据中挖掘alpha因子,但我们着重点并不在频率本身,而是在于挖掘高频数据中独有的信息,借助盘口信息近似还原投资者的交易行为,据此构建选股因子,辅助选股。

本文中,通过分析买单成交情况,区分积极买入与保守买入,构建买入情绪因子BM,发现个股保守买入占比越高,其下期收益率越高。分组回测中(考虑千三的双边成本),该因子获得14.53%的超额中证500收益。

通过剔除BM因子中反转因子的影响,我们发现BM因子的超额收益受影响较小,中性化因子仍然能够得到13.24%的超额收益。因此本质上 BM因子带来的alpha收益并不是来源于反转因子,而是筛选得到的股价虽然下跌但是存在较大的买盘支撑的个股。

在剔除了反转与市值两方面的影响之后,中性化因子2010-2016年年化超额收益率为9.3%。

拓展阅读:

1.期货/股票数据大全查询(历史/实时/Tick/财务等)

2.市面上经典的量化交易策略都在这里了!(源码)

3.一个量化策略师的自白(好文强烈推荐)

4.量化交易领域最重要的10本参考书推荐!

5.配对交易——这个股票策略曾年赚5000万美元

如何用tick数据构建买入情绪因子相关推荐

  1. 简单构建新闻数据对股票的情绪因子(大盘因子)

    简单思路描述:根据前一天的新闻数据,预测后一天大盘涨跌,涨为1,跌为0. 构建数据集: import tushare as ts ts.set_token(' ') #ts.set_token('yo ...

  2. 如何用Vue快速构建github可视化大数据平台

    一.项目简介 如何用Vue快速构建github可视化大数据平台 二.实现功能 个人信息 仓库语言分类 仓库公开数量 仓库stars情况 仓库数据 最近你的操作 粉丝数量 跟随数量 最近的跟随 最新信息 ...

  3. python期货数据 库_如何用python或者基于vnpy框架将期货tick数据聚合成1分钟数据呢?...

    同意楼上一些答主的看法,数据量大的情况下用python或pandas不是很好的solution. DolphinDB应该是目前处理tick级金融数据最好的数据库系统之一,甚至可以拿掉之一.如果题主的t ...

  4. 研报复现系列(三):【东莞证券】股吧里说了什么?——基于文本舆情构建股市情绪指标

    1.研报概述 本文是研报复现系列的第三篇,本文复现了[东莞证券]的研报[股吧里说了什么?--基于文本舆情构建股市情绪指标] 该研报试图利用文本情感分析,通过统计情绪词,将股民的评论进行情感分析,联系情 ...

  5. 情绪因子|小时级情绪指数:日内高频交易初试

    小时级情绪指数: 日内高频交易初试 目前,一些国外比较流行的高频日内交易做市策略无法有效地在国内市场实施,除了A股的T+1交易规则,撤单率的限制,印花税偏高等,还有一个重要的原因是:由于预测收益周期很 ...

  6. 【干货】产品经理如何使用大数据构建用户画像

    送给真正的互联网人一顿干货早餐 [小咖导读]文自"数据挖掘与数据分析",伴随着大数据应用的讨论.创新,个性化技术成为了一个重要落地点.相比传统的线下会员管理.问卷调查.购物篮分析, ...

  7. bootstrap-table真实交互数据_博思远略:基于AI交互场景数据构建用户画像的几点思考...

    什么是用户,就是那些藏在每台电脑.手机.pad.智能watch屏幕背后的使用产品或服务恰如你我--有血有肉.有情绪.有想法.有阅历.有逻辑.有思考.固守某种习惯且独一无二.形形色色的人. 用户画像本质 ...

  8. python神经网络构建图_如何用卷积神经网络构建图像?

    原标题:如何用卷积神经网络构建图像? 原标题 |Everything you need to know to master Convolutional Neural Networks 作者 | Tir ...

  9. 如何用大数据构建精准用户画像?

    什么是用户画像? 用户画像(User Profile),作为大数据的根基,它完美地抽象出一个用户的信息全貌,为进一步精准.快速地分析用户行为习惯.消费习惯等重要信息,提供了足够的数据基础,奠定了大数据 ...

最新文章

  1. 在windows上使用virt-manager
  2. sql 分类汇总 列_分类汇总哪家强?R、Python、SAS、SQL?
  3. Spring Boot - Profile不同环境配置
  4. 计算机学校专业工学,大学专业详解:工学(仪器仪表类)
  5. hbuilderx内置服务器启动失败_我们来看看Swoole是如何实现WebSocket服务器及客户端的...
  6. 杭电 hdu 3343
  7. 为什么要是用R语言?
  8. 【数据结构系列】严蔚敏C语言版算法实现并附带详细注释(逐步更新)
  9. 台式计算机加固态硬盘,台式机加固态硬盘作用
  10. matlab求两个向量均值,matlab求两个总体的均值向量和协方差矩阵
  11. SATA硬盘分区设置与安装详解
  12. 美国人口的模型预测——非线性最小二乘法
  13. java根据身份证获取出生年月日,性别,年龄
  14. 运输业的EDI是如何运作的?
  15. C语言教学模式 教学方法改革,C语言教学模式改革探究.docx
  16. locust安装成功为什么运行脚本后打不开页面或运行脚本会报错
  17. 协方差矩阵和相关矩阵的关系
  18. 连线:iPhone研发不为人知的故事 原型机纰漏百出
  19. Proxmark3教程3:IC卡三文件数据比对工具,轻松找出不同和相同
  20. AMFPhp与Flash||Flex 的交互后——台技术区分类导航

热门文章

  1. 浅谈大数据技术之实战足球盘口分析的方法与思路(二)
  2. 高德地图红绿灯读秒是怎么实现的?(二)
  3. 艺术家与AI研究者的跨界碰撞丨记青源Workshop「AI+艺术」研讨会(2022年第10期)...
  4. 股市跷跷板—债券基金
  5. 比基尼女郎助威世界杯
  6. 对比学习知识扩展——一堆奇奇怪怪的loss,快把我压死了orz...
  7. 【安全牛学习笔记】FUZZING
  8. 微信小程序 之 mpvue
  9. python期货量化学习
  10. 国产电影最俗套的九十九个镜头(完整版)