动量效应是量化圈子中最常见的一词,用更直白的话翻译就是“追涨杀跌”。而动量效应往往和反转效应相对应。

从时间序列上看,短期内市场一般伴随着反转效应,动量效应需剔除短期的反转效应;为此动量效应通常是以M期前的N期涨跌幅作为基础数据,但这样的构建方式只用到N期的期初和期末价格,区间的大部分数据信息都未利用到,那么我们不禁产生了疑问:区间内包含的高频数据能带来更好的收益吗?

《Non-parametric momentum based on ranks and signs》和《东方证券:存在于全市场范围内的稳健动量效应》这两篇文章中对此做了进一步的探究。

传统动量因子的形式为MOM(N,M),N、M、T0是时间序列下的三个节点,N-M包含N期数据,M到T0有M期数据,那么MOM(N,M)表示N到M区间内,这N期的股票收益。

文章中改进后的动量因子是基于股票每日收益率的顺序排名,可以剔除异常股价波动的影响,提升因子稳健性。改进后动量因子的形式仍为RANK(N,M),假设当前为T0,那么 RANK(N,M)表示N到M区间内,这N期的股票日收益排名得分情况。得分的具体计算方法如下:

其中Nd为d日有效股票数;增加有效样本数量限制,当N区间内某只股票的收益数据占总样本数量低于2/3时(原文为50%),剔除该股票;对于多个相同收益的股票,以其排名均值作为排名,如A股票和B股票的收益相同,其排名分别为10和11,则将其排名都调整为10.5。

进一步编写回测,相关参数如下:

初始资金:1000万

基准指数:沪深300

回测品种:沪深300成分股/中证500成分股/全A

回测区间:2017年12月29日-2021年12月31日

样本过滤:剔除停牌股、ST股、次新股(一年期)

因子参数:N为9个月,M为3个月

数据预处理:有效样本数限制,异常值处理,标准化、市值中性化

交易逻辑:买入因子最大前N只股票,月末调仓换股;涨停买不入,跌停卖不出。

我们分别以沪深300成分股、中证500成分股和全A股票进行回测,持仓数量分别为30、50和100只股票。

此处与研报较为一致的是:策略在沪深300成分股的表现优于中证500成分股。

以沪深300指数成分股为回测标的时,年化收益率为14.62%,最大回撤34.78%,胜率63.19%。整体年化收益比研报的稍高一些,但最大回撤进一步扩大,胜率和夏普比率稍有下降。

究其原因,一方面是因为本文设置了较高的手续费和滑点成本,另一方面是因为研报策略中包含了做多高因子值股票和做空低因子值股票的综合收益,而从其分组收益来看,做空的收益是做多收益的1.75倍。

对此感兴趣的朋友可以进一步对比传统动量因子和该因子的效益情况,或者以相同的方式,重新构建你的因子库,挖掘更高频的数据信息。

- End -

策略源码已发布至掘金社区。

复制:https://bbs.myquant.cn/topic/2634

在电脑端的浏览器中打开即可查看。

声明:本内容由掘金量化原创,仅供学习、交流、演示之用,不构成任何投资建议!如需转载请联系掘金小Q(VX:myquant2018)授权,否则作侵权处理!

强化版动量效应:量化界的“追涨杀跌”相关推荐

  1. 动量效应 matlab,量化投资之动量反转

    那一年,你在我的有效市场里随机游走,不经意间毁灭了我的理性人假设.从此,维持与你相爱的动量效应,成为我人生唯一的投资策略. --送给她 一. 行为金融学 1. 行为金融学的发展 20世纪80年代,股票 ...

  2. Python量化交易实战-29什么是价格动量效应

    B站配套视频教程观看 一.什么是动量策略 预先对股票收益和交易量设定过滤准则,当股票收益或股票收益和交易量同时满足过滤准则就买入或卖出股票的投资策略. 它是一种选股策略,也就是针对大量的股票进行收益率 ...

  3. 金融科技之交易:动量效应选股策略

    金融科技之交易:动量效应选股策略 策略内容: 代码整理 角度计算 标准化处理 数据准备 回归线的斜率 两点连线的斜率 由斜率计算角度 计算模块的整合 绘制叠加图 UI界面控件: QLabel QLin ...

  4. 趋势交易能赚钱吗?商品期货动量效应挖掘初探

    在聚宽社区,有人分享了一套商品期货动量模型,今天借聚宽量化实验室分享该策略给各位读者们: 作者开发的策略很简单,主要目标在于验证动量策略在商品市场的有效性,为了验证结果可靠,作者测试了很多期货品种(4 ...

  5. DELL强化版《最终幻想11》认证电脑出炉

    日本DELL宣布最新推出通过<最终幻想11>(FF XI)认证的强化版高配置台式PC,这是目前所有通过该游戏认证电脑中配置最高的机型. 该机型号为Dimension XPS Gen3,具体 ...

  6. c语言凑数的不同种方法,凑数强化版【庆贺2021年5月9日母亲节】

    希望使用者好好看一下代码变量的简单注释,这样才能搞清楚程序参数的各种具体应用方法. ' <凑数.凑金额的实用多功能强化版> by kagawa 2014-01-01 '  2017-7-7 ...

  7. 量化投资学习-10:追涨杀跌的本质是“高买低卖”,这是散户亏钱的背后的操作逻辑

    前言: 本文通过图解的方式,展现散户的"追涨杀跌"是如何"完美"的实现"高买低卖","完美"实现一次次的亏损的,无论是熊 ...

  8. 量化投资学习-19:追涨杀跌,一念地*狱;高抛低吸,一念天*堂

    追涨杀跌,一念地*狱,陷入买了就跌,卖了就涨的无尽的痛*苦的循环中. 高抛低吸,一念天*堂,进入买了就涨,卖了就跌的良性循环中. 追涨杀跌与高抛低吸, 相同的是在同一个空间价格点位,同样的是买和卖操作 ...

  9. 动量效应 matlab,十万火急!!我的这个动量效应的R语言程序正确么??

    这是一个动量效应的程序,运行后的结果与大多数已有的研究结果有很大的不同,然而又感觉自己的程序没错,想让大神看看问题出在哪了? 附上程序与 数据.数据是若干只股票的近三年的周收益率. #这是我自己对动量 ...

最新文章

  1. Java高质量代码之 — 泛型与反射
  2. EasyUI——DataGrid中嵌入Radio
  3. 推荐系统组队学习——矩阵分解和FM
  4. RocketMQ Client 编码快速入门 与 可视化控制台
  5. idea背景颜色修改
  6. 微信小游戏源码(从入门到入坑-火柴人勇闯地下城))
  7. 普通话-汉语拼音字母表
  8. 笔记:C# log4net App.config 配置系统未能初始化问题的一种处理方法
  9. 数字图像处理——Sobel算子锐化、Prewitt算子锐化
  10. 【C++】分数加减法
  11. 每周全球科技十大新闻(2019.8.12-8.18)
  12. 用简单易懂的话语来快速入门windows缓冲区溢出
  13. 裸眼3d项目,数字平原是这样制作的
  14. 企业微信之发送应用消息案例
  15. 企鹅号快速赚钱方法?企鹅号收益情况?
  16. JAVA 根据身份证获取年龄
  17. opencv各个lib库的作用
  18. 【博客8】缤果PyQt5串口调试助手V1.1(初级篇)
  19. dropna()函数
  20. C语言中的%d、%u、%p、%f、%lu...

热门文章

  1. 介绍信贷产品进件要求及系统录入规范
  2. NAT(Network Address Translator,网络地址转换)
  3. kafka-01部署启动
  4. chroot构建ubunt文件系统 在rk1808 imx6q上测试过
  5. 微信直播的开通方法以及特点是什么
  6. 大数据和云计算技术周报(第58期)
  7. Neural Motifs: Scene Graph Parsing with Global Contex解读
  8. 一个浙江人的23条经典经商法则(很值得借鉴)
  9. 智利纳税人现必须向智利国税局报告加密货币利润
  10. 凯斯西储(CWRU)数据集解读并将数据集划分为10分类(含代码)