小市值策略复现(A股选股框架回测系统)

相关config配置

https://quantkt.com/forumDetail?id=201043

很早就知道了小市值模型,正好量化选股回测框架出来了,把最裸的小市值复现下,顺便验证下框架逻辑。

科普:

小市值策略基于 "小市值效应",即从历史数据来看,在较长一段时间内,小市值公司的股票收益率往往高于大市值公司的股票收益率。其背后的逻辑可能是小市值公司具有更大的成长潜力,它们可能处于发展初期,业务增长速度较快,一旦获得市场认可或取得技术突破,股价可能大幅上涨。此外,小市值公司的股票相对容易被资金推动,一些机构或投资者可能通过买入小市值股票来获取较高的收益。

微盘股天然的就应有更高的期望收益,因为微盘股有更大的风险,如果期望收益和A50,沪深300一样,那所有人都会选择更安全的红利股。

框架设置几个参数:

将target_holding_count改成['0%','1%']表示持有整个市场的前1%小市值的股票

期望持股天数为10天。

过滤ST和退市以及北交所股票。

过滤3块以下低价股,避免低价股退市。

一些注意点:

1.测试微盘股相关,回测框架中一定要考虑退市股,因为A股已经有快300个退市股,微盘又很容易踩雷。

2.回测框架所采用的数据集一定要考虑股票的更名历史,即加st去掉st等,不然对策略真实影响较大。

回测区间:2009.1.1->2025.3.31

点击运行框架

回测结果

从结果来看符合预期,裸小市值09到25这十五年大概是650倍收益,10万块变6500万。最大回撤53点。

最大回撤出现在24年初的流动性枯竭,事后各种解释都有,但是回测结果来看其实就是策略在18-23年一直有效,导致各类机构的各种策略很容易有意无意掺点这个因子或者相关联的因子,导致策略内部挤进了太多的资金。

第二第三大回撤为18年一整年的熊市和15年的牛市A杀。

关于市值因子的月度相关性:

可以看到1月4月一片绿,且12月份也是个对市值因子较为不利的月,看着确实像业内共识了,很明显策略如果停掉这三个月会猛的多,但是这里就不测了,后续可以专门弄点细化分析。

关于小市值的分箱图, 为了方便快速测试,我这里选了市值区间[5%,6%],[15%,16%],[25%,26]...[95%,96%]...[99,100%]

分成11组进行分组测试与对比




这个分箱图还有各类指标分离度都达标,证明了这个因子过去在市场中的有效性确实存在。

关于市值因子的长期有效性:

由于市值因子是很底层因子,其有效性很难失效,更多会体现在周期性之上。

A股市场一直生效的市场规律,一旦被公众所熟知,并被广泛使用之后,这个规律就会变异,从而失去原有的预测效果。

随着策略规模的增加,波动会增加,直到一次黑天鹅将参与者收割。

相关推荐
葬爱家族小阿杰29 分钟前
python执行测试用例,allure报乱码且未成功生成报告
开发语言·python·测试用例
xx155802862xx31 分钟前
Python如何给视频添加音频和字幕
java·python·音视频
酷爱码32 分钟前
Python实现简单音频数据压缩与解压算法
开发语言·python
花果山总钻风1 小时前
SQLAlchemy 中的 func 函数使用指南
python
知识中的海王1 小时前
Python html 库用法详解
开发语言·python
面朝大海,春不暖,花不开1 小时前
使用 Python 正则表达式实现文本替换与电话号码规范化
python·mysql·正则表达式
淘小白_TXB21961 小时前
Python网页自动化Selenium中文文档
python·selenium·自动化·网页自动化
Clair-Sean2 小时前
【JavaSE】多线程基础学习笔记
笔记·python·学习
EverBule3 小时前
Python 训练 day46
开发语言·python
WangY_ZQ3 小时前
Python 如何在Python 3.6上安装PIP
linux·python·pip