来源:逸柳投研笔记
声明:本文仅作研究讨论用,不构成任何投资建议。股市有风险,决策需独立思考,搭建好自己的逻辑体系和风控体系,切忌人云亦云。
最近的一个多月的时间,我基本都在跑量化模型,找了十几个因子,技术面的基本面的,也使用了不同的筛选方式,比如说主观因子打分机制、最优值求解以及最小二乘法,调整修改条件控制样本等等。
有些模型用今年历史数据回测表现还算不错,比如有个按照近期涨跌幅(量化上的专业术语,叫做“动量”)的策略,用3月份到9月中旬的数据回测能够达到78%的收益率,但是换做了其他的时间区间,比如去年的3月到8月,结果许多观察区间的收益率都在-10%左右,不忍直视。
经过了多次尝试,才找到一个回测结果总体尚可的模型,我先介绍下基本的操作流程。
第一步是将过去的时间分成为两个阶段,一个是回归因子区间(名字随便取的),比如说现在是2025年3月1日,则需要将2025年2月15日以前作为这个回归因子区间,要计算在2025年2月15日时候的因子值;一个是预测测试区间,也就是2025年2月15日到3月1日的这段时间,我们需要计算样本股票在这个区间的收益率,会得到一个数组。
第二步是将第一步中的各个因子值和测试区间的收益率做一个最小二乘法回归,会得到一系列的参数,当然,需要将那些不显著的因子剔除掉,然后重新跑一个回归。这样我们会得到一个关于收益率和因子值的一个多元函数。
第三步就是站在现在时点计算当下的因子值,也是一个数组,如果按照上面的时间假设,我们需要的是2025年3月1日的因子值数组,然后再用这些值,套用到第二步得到的方程,会得到一些关于收益率的“预测值”,这个其实也不算什么预测,值本身没有意义,我需要的是一个排序,因为每只股票都可以计算得到一个函数值,我们将这些数据按照从大到小排列,选取排名前15的股票做一个组合。
在回测的时候,我们可以计算下一个区间的实际收益率,这里面每个持股区间都是两个自然星期,同时每隔两个星期进行一次模型评估,在原有样本的基础上,会把新的因子值数组、收益率数组放进来,并重新跑回归模型,方程的系数甚至方程的形式在每个区间都会有所不同。
跑模型是一次痛苦的事情,因为步骤多、数据处理量大,在目标区间跑下来,经常要四五个小时的时间,今天调优了下,也得要将近3个小时。
我用2022年1月15日到2025年10月4日做了个回测,使用的底层数据是用的2021年6月30日以来的,在计算因子的时候,选用的股票是市值小于200亿,最近12个月分红的股息率大于0,同时市盈率大于0小于100,进入因子计算和回归分析的是2000多只股票,得到的净值曲线和沪深300的比较如下图所示,基本跟大盘走势类似,但是波动会大一些。整个区间的收益率是80%,最大回撤是33%(区间是2024年4月到2024年9月),从收益计算开始,用了一年时间开始跑赢大盘,并在2024年9月跟着大盘开始大幅反弹,只是幅度更大一些,第一个区间(2024年9月21日到2024年10月5日)就达到了40%的涨幅。

按照上面的模型思路,需要每两周换一次股票,累计下来,三年多的时间里,总共是换了1455次股票,剔除掉重复的,总共是830只股票,占了A股的1/7。不过实际上操作起来可能会有些问题,比如选好股票之后,下周一买股票,价格并不一定能够与上周收盘相同。(至于最近区间内这个模型给推荐的公司,明天的文章再简单介绍下,也便于后续的验证和调整)。
这个净值曲线当然还算是不够理想,我们比较期待的,会是那种对角线走势的净值曲线:持续向上走,回撤很小。
特别声明:以上内容仅代表作者本人的观点或立场,不代表新浪财经头条的观点或立场。如因作品内容、版权或其他问题需要与新浪财经头条联系的,请于上述内容发布后的30天内进行。