高频因子(2)--集成订单流不平衡(有代码)

说明:本文章来源于公众号“Logan投资

今天的文章主要是延续上一篇文章的思路,继续做一下高频因子低频化的研究。——文章《高频因子--tick级别订单流因子计算(附代码)》。这次的因子主要是对这篇文章的因子做降维处理,也是同一个作者写的。在介绍因子之前我想讲讲最近的高频交易被限制这事儿。

一、为什么现在还写高频因子?被限制了的写来有什么意义吗?

  • 个人认为这类型因子反而不是在被限制范围内。可以去回顾之前的新闻,已有量化私募收到指令,达到高频交易认定标准的话流量费回提高10倍,从每笔委托0.1元提高到1元,每笔撤单费为5元的。而可能达到这个标准的策略比如:套利策略、做市商策略以及盘口策略。其中套利策略可以提高开仓的价差阈值来减少交易次数提高盈亏比的方法来避免被认定为高频。而盘口策略就影响大了,盘口策略大多数都是基于订单薄的数据进行计算的,典型的有Penny Jump策略,例如下图:

    (仅为举例用,该策略不代表全部的高频策略)

图片

豆粕ETF7月26日的订单薄,买二(bid 2)有1608手买单,假设买三(bid 3)有50820手,这个时候就出现了Penny Jump认为的市场出现“大玩家”并支撑特定价格的情况,于是策略就会在这时的买一价挂单买入,买入之后立刻挂卖一或者卖二(ask 1 or ask 2)来卖出,总之就是卖在能覆盖交易成本同时能赚一点小钱的位置,就是凭概率硬赌它能卖出去,毕竟最后总有这个买二档的“冤大头大玩家”接盘,大不了最后卖给他然后亏一个tick的价格嘛~~,做的就是这个盈亏比。

但是使用Penny Jump策略的人发现,咦~  bid 2的委托买单逐渐减少到只剩下1000手了,那么谁还会傻乎乎的还在bid 1的价格挂单呢,这肯定会在策略上写一个if判断条件来撤单的嘛!

另一点,如果本身bid 2的委托买单就是假的呢?就是有人专门针对Penny Jump策略来做的虚假买单来骗你买进,并且到时候会大规模撤单的那种呢?

所以这时候这个委托单的数据就很不真实了,这也是监管局不想看到的情况之一。所以近期正式限制了以该类型策略为代表的高频交易,设置了撤单费,增加交易成本等措施。

话说回来,盘口策略不止这类型,也有基于订单薄委买委卖的成交量数据做的因子并产生的策略,这也是下文要讲的这个因子。那么在没限制以前,大规模的假单就使得基于委买卖量计算的因子失效得很快。可以看到昨天交流群里群友用这类型因子做的回测图

图片

在21年下半年以后几乎就是完全失效了,这可能也是大规模假单使得数据失真导致的。

所以在限制了高频交易的未来,我觉得可以考虑去跟踪一下基于委买委卖计算的因子的表现,就如下文要讲到的集成订单流不平衡因子。

当时我交流群里也有朋友持反对的观点,也给出了上图的回测图,有一定道理。如果有其他观点的欢迎进群交流,我比较喜欢接纳不同的观点,群里有其他不同的声音那可是好事。

  • 反正最后对于限制高频交易的影响,我交流群里分析就几个:

    • ①利好中低频;

    • ②成交量中枢下移;

    • ③委托量构造的因子更加真实;

    • ④市场波动减少

二、集成订单流不平衡

订单流不平衡概念我在《高频因子--tick级别订单流因子计算(附代码)》中已经讲到过了,使用的是Cont(2014)基于买一卖一计算的因子,本质思想是将tick数据整合低频化为分钟级数据。

而在此之后,2023年Cont在Quantitative Finance出了一篇这个因子的续作《Cross-Impact of Order Flow Imbalance in Equity Markets》。

主要是对限价订单簿中的价格档次变化及买卖方向进行细致分析,进而对最优层级和深度层级的订单流不平衡进行独立度量。并在此基础上,对所构建的指标实施标准化处理,以消除不同指标间的量纲影响。最终,采用主成分分析(Principal Component Analysis, PCA)技术,从多层级订单流不平衡指标中提取关键信息,形成综合反映市场动态的订单流不平衡指标。

图片

由于限价订单深度存在日内模式,他们使用了平均规模来衡量相应档位的 OFI,这相当于使用各个层级的订单流不平衡来进行标准化,这样有利于进行多资产间的订单流不平衡的比较。具体公式如下:

图片

图片

上面的处理就是做标准化。最后会使用PCA对各个档位的ofi 进行PCA降维并提取第一主成分作为因子。而在未发表前的arXiv版本的论文中Cont也写到提取的第一主成分的方差贡献度能达到85%以上,简而言之就是只需要第一主成分就足够有代表性并解释大部分现象了。

而其实计算这个因子的代码一部分我在《高频因子--tick级别订单流因子计算(附代码)》已经给出,是已经计算了各个档位的订单流不平衡数据,但还没有标准化和PCA提取第一主成分。而完整代码在文章末尾会给出。

Cont在文章中的主要实证并不是去跑因子回测,更多的还是从学术实证的角度去进行线性回归计量分析,去用这个因子去实证各个股票之间的关联性。

图片

每种颜色代表一个行业,可以很清晰的看到行业内各个股票订单流不平衡之间的关联。

所以我就在想,这样不就可以构建知识图谱然后做策略了嘛~

附:各档位订单流不平衡的运作机理

这里得引进交叉冲击的概念。交叉冲击是指标的资产的价格变化收到其他资产订单流的影响。当考虑到其他资产的多层级订单流不平衡,交叉冲击可以拓展到其他资产更加深层级的订单流不平衡对标的资产的价格变化的影响。

假设目前有股票a和b,股票a上的组合交易策略为T(a1),T(a2)和T(a3),股票b上就是T(b1),T(b2)和T(b3)。股票a的订单流不平衡可以通过一下途径来影响b的价格(Pb)。

图片

  • 途径1的策略可能是某些高频策略,如微量加价(Penny Jump)高频做市策略,其主要通过限价订单薄的委买价和委卖价的变化来进行双边交易的,属于机构做事策略的一种,本质上是为市场提供流动性,属于订单流不平衡的自冲击。该策略是通过限价订单薄的状态,率先在更有利的价格档位提交订单,影响价格,同时在短时间里获取微小的价差收益。

  • 途径2和3只考虑一级订单流不平衡,可能是配对策略和套利策略。考虑配对策略时,策略1会同时对两只具有高度协整关系的股票的进行双向建仓,即先通过向股票 a 的限价订单薄提交第一档的限价卖单,而后在股票b提交第一档的限价买单进而影响价格。但是途径2忽略了路径4的更深层级的订单流信息。

  • 尽管路径2和3存在上述问题,但是如果能通过提取多层级订单流不平衡的主要信息,那么就可以不用考虑去使用每一档的订单流不平衡来进行建模。如路径4,只要路径4的信息能反映在集成订单流不平衡 ofi 上,那么对于股票b而言就可以用该因子来当作每一层订单流不平衡的统一表征。

总结:这次从更多的维度去考察了订单流不平衡带来的影响并构建了一个因子。文章研究表明,集成订单流不平衡ofi 比仅使用第一档计算的订单流不平衡对价格变动更有解释力。其次文章还在样本外测试了这个因子,证明该因子能带来额外的收益。

想要论文pdf和因子计算代码的朋友可以在公众号后台回复“20240727”即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值