动量是Fama-French五因子模型中的因子之一,根据Fama和French的结论,历史获益这比损失者表现更好,亦即动量策略是有效的。本文旨在验证其在A股中的有效性,以帮助更好地选股。

选股范围:中证800及中证1000成分股(简称“CI1800”)

时间范围:2018/01/01-2019/12/09

数据来源:网易财经(收盘价/除权)

1.数据总览:2018/2019CI1800表现对比


2.验证方法:

按2018年股价表现将1800支成分股分成10组,对比这10组19年表现。

分组情况如下:

3.验证分析:

(1)分组观测

2019年各组的表现如下(截止2019/12/9):

从分组统计来看,A组共93支股票上涨,低于J组的97支,胜率略低,A组的涨幅中位数1.96%也低于J组的2.69%,不过A组的向上动能更大,其上四分位高于J组,均值21.13%是所有组别中最高的,略高于J组的两倍。

不过,从胜率、中位数、夏普比率(设Rf=0)来看,反而是中间组表现更好,D、E、G三组均有三分之二以上的股票上涨,且D组和E组的涨幅中位数和夏普比率均高于其他组别,下四分位数也较高。

(2)模拟交易

假设以2018年末收盘价买入各组,每组各支股票的权重均为1/180,进行模拟交易。从模拟结果来看,A组的累积收益为21.13%,最大回撤18.17%,均优于其他组,而J组累积收益10.47%,最大回撤30.26%,则是最差。A组的累积收益是J组的两倍,而最大回撤仅为J组的61%,优势显著。

4.验证结论:

通过分组对比分析,可以验证动量因素的有效性。尤其是从模拟交易上看,上一年度表现最好的一组股票在下一年度整体仍表现最好,且远好于上一年度表现最差的组别。不过,从分组观测来看,从中间组别选股会更加稳健,胜率更高。

5.模型缺陷:

(1)网易财经数据均为除权后价格,而无复权价,分红、配股等会影响数据准确性;

(2)模型仅为单期验证,没有多期对比验证,会影响分析结果准确性;

(3)选股范围为中证800和中证1000,共1800支股票,占沪深A股总数的接近一半,还不够全面。此外,指数公司会定期新增或剔除成分股,存在幸存者偏差。

Sping,20191211

补充:
检查发现没有考虑到有8只股票是2019年发行的,2018的收益为零,但都被纳入到了A组中,因此导致模拟交易中A组的实际股票数量会少,总额只有172/180。剔除19年新发行股票后,前180只股票的截止12月9日的收益为17.55%,最大回撤18.42%。同时,注意到沪深300指数同期的涨幅为29.39%,最大回撤13.49%,均好于前180只股票。

另外,对2018年涨幅领先的180股票进行调整:1)删除2017/2018、或2107-2018期间涨幅超过100%的;2)删除2017/2018、或2107-2018期间跌幅超过100%的50%的;3)删除2019年新上市的;4)保留2018年排名前54的股票(CI1800的3%)。其2019年累积收益达30.64%,最大回撤16.90%。表现会好于前180组合,不过仍低于沪深300指数(显示今年大盘股整体表现优异)。




Sping,20191212

A股动量策略有效性验证相关推荐

  1. python量化策略——最简单的动量策略,简单趋势追踪策略

    趋势性动量策略有效性验证及实现 1相关性验证 2策略概要 3其他回测结果 其他量化策略 1相关性验证 选取上证指数000001.SH,获取收盘价 以50为单位,计算每个55天的收益序列. 使用shif ...

  2. JQData | A股投资指南-单因子选股的有效性验证

    转自:https://www.joinquant.com/view/community/detail/7ebe3adf478ce360f6e96dd09d240bc4?type=1 JQData | ...

  3. 密码有效性验证失败。该密码不够复杂,不符合 Windows 策略要求

    我在sqlserver2005中建立一个用户的时候,我的用户名和密码是一样的,它不允许我建立报"密码有效性验证失败.该密码不够复杂,不符合 Windows 策略要求"错误,我把密码 ...

  4. 【量化策略系列基本篇之一】股票动量策略(汇总篇)

    本文持续更新中.最后更新时间:11/3/2019 更新日志(11/3/2019): (1)优化部分表述和排版,修改错误 (2)添加移动平均动量部分内容 (3)修改部分2.1中部分代码错误 (4)增加免 ...

  5. 入侵与模拟攻击(BAS)——新兴的安全防护有效性验证评估技术

    近年来,为应对等保和护网等网络安全监管要求,企业已经采购部署了大量的安全防护设备,那么企业的安全防御体系是否已经足够坚固? 企业网络安全防护现状 根据Gartner的调查,97%的入侵行为发生在已经部 ...

  6. 绘制levy曲线python_量化小白暑期研究笔记(5)——因子选股-高质量动量策略

    一.动量策略的一点历史 1.1 三大互补选股维度 1.Momentum:当价格沿着过去的轨迹继续运动时,我们能够获得收益: 2.Value:当价格恢复到之前的某种均衡状态时,我们能够获得收益: 3.C ...

  7. python量化策略代码_手把手教你用三行python 代码做一个动量策略「量化投资系列」...

    动量策略是右侧交易里最常见的,背后的逻辑是就现在涨的,后市还会涨,动量具有惯性的意思. 首先加载原始数据,我们用天的收盘价即可,按统一转为收益率.因为点位本身不重要,我们最后只关心变化率. 以沪深30 ...

  8. 动量策略 python_在Python中使用动量通道进行交易

    动量策略 python Most traders use Bollinger Bands. However, price is not normally distributed. That's why ...

  9. 自动量策略的开发和优化

    介绍:传统动量策略只能用来选股,无法用来择时,尤其是对于单指数(比如整个市场就一个投资标的)如何使用动量择时? 定义:动量定义依然保持原样,MOM(5)=close(T)-close(T-5),在常规 ...

  10. excel中添加有效性验证或数据验证时不选择第一行列标题的解决方法

    [问题描述] excel中对列添加了数据验证(有效性验证)后,列标题也会存在数据选项,如图,姓名这个列标题竟然可以被姓名数据替换. [问题解决] 1. 数据-->数据验证 单独选中姓名这个单元格 ...

最新文章

  1. 2020人工神经网络第一次作业-参考答案第四部分
  2. 重庆大学光电工程学院 贾旭滨 对 “句柄” “指针” 有下面的描述(AfxGetMainWnd GetSafeHwnd() AfxGetAppName() AfxGetThread)...
  3. '[linux下tomcat 配置
  4. 经典排序算法-MFC实现之2:问题
  5. 学成在线案例——黑马程序员pink老师\思路讲解\完整源代码
  6. Vue (响应式原理-模拟-0)
  7. pycharm新建项目怎么选择框架_必看!心血管疾病怎么选择检查项目?
  8. 进程VS线程---操作类型
  9. 权限管理模块数据库设计
  10. 移动端那些事儿(二)jquery手势插件之jGestures
  11. 【技术贴】Pdf压缩利器--PDFshrink使用教程
  12. 微信开发服务器地址url怎么写,微信开发(一)URL配置
  13. 计算机主题桌面更改不了,win7怎么更换电脑主题 win7电脑主题更换不了怎么办
  14. 如何在没有密码的情况下解锁 iPhone
  15. logback日志使用记录
  16. 【云原生概念和技术】1.1 云原生的概述
  17. 设计模式-代理模式 C#版本
  18. 从苹果ATT新政第一年,看全球数据主权之争与治理规则的变迁
  19. c盘越来越大怎么清理?清理C:\Windows\System32\DriverStore\FileRepository
  20. 什么是子网掩码?怎么根据子网掩码得到网络号?

热门文章

  1. .net 微信会员卡接口
  2. IP地址冲突解决方案,局域网IP地址冲突如何解决?
  3. Moore-Penrose 广义逆/伪逆 (The Moore-Penrose Pseudoinverse)
  4. Yara、Snort和Sigma规则
  5. #6.3四维理论的数学模式
  6. oracle lob值是什么,关于Oracle数据库LOB大字段总结
  7. 灵活用工十大热门行业及应用场景
  8. 计算机属性cmd命令,怎么用命令提示符打开系统属性
  9. C语言中access的使用
  10. 作者用心之作,机器学习总结