本篇我们来重点探讨量化交易中的核心命题——回撤控制。做过微盘策略的朋友都知道,这类策略虽然能在顺风局跑出极高的收益,但其内含的高波动性也同样惊人。2024年初那场席卷微盘股的流动性危机,许多策略回撤一度超过50%,至今仍让人心有余悸。
电影《精武英雄》里,李连杰有句经典台词:“打人首先要学会挨打。你打对方十拳,对方没事;对方打你一拳,你就挨不住了。”做量化亦是如此。一个成熟的策略,必须把“防守”放在首位。否则,一次极端的尾部风险,就足以让长期积累的利润灰飞烟灭。
微盘策略中控制回撤的手段主要分为两大类:一是个股排雷(剔除基本面尾部风险),二是大盘择时(规避系统性风险)。当然,盈亏同源,加入防守机制必然会牺牲掉一部分进攻效率。从长期复利的角度,我认为这种取舍是值得的。大家如有更好的风控思路,也欢迎在评论区探讨交流。
以我在第一篇中分享的【模型一】为例:这是一个标准的微盘策略,从2014年1月到2025年底,回测年化收益达到了67.98%,曲线确实好看。但硬币的另一面是,该策略在2024年的最大回撤高达52.28%!投资中最残酷的数学规律是:资金腰斩50%,需要翻倍(盈利100%)才能回本。如果在实盘中遭遇这种极限回撤,极少有人能做到心态不崩、继续坚持。因此,给策略穿上“防弹衣”势在必行。
下面,我将在【模型一】的基础上,增加以下因子或条件:
1、行业净利润增长 大于 -1%(剔除净利润下滑的行业)
2、未来60日新增流通股占比 小于 20%(剔除近期存在解禁的个股)
3、10大股东持股比例 大于 25% (选择10大股东相对集中的个股)
4、增加卖出条件,布林线突破上轨(20,3),增加一种止盈方式
5、增加不卖条件,收盘价<min(前日收盘价,7),避免在减仓时直接卖在底部
6、大盘择时-自定义择时公式
if(微盘指数五日<2,0,if(微盘指数五日>2,2,1))*0.1+微盘指数十日*0.1+微盘指数新低*0.1+微盘指数涨幅*0.1
微盘指数五日:CountDays(指数收盘(111001)>ma(指数收盘(111001),5),4);
微盘指数十日:CountDays(指数收盘(111001)>ma(指数收盘(111001),10),4);
微盘指数新低:CountDays(指数收盘(111001)>ref(min(指数收盘(111001),5),1) ,4);
微盘指数涨幅:CountDays(指数涨幅(111001)<-0.0396,4)*(-1)+CountDays(指数涨幅(111001)<-0.0196,4)*(-1)+CountDays(指数涨幅(111001)>0.0396,4)+CountDays(指数涨幅(111001)>0.0196,4)
![]()
这是一个简单的打分系统,基于微盘股指数111001在最近4天的表现,并转化成仓位数据。得分1或者超过1的时候处于多头形态,就是满仓;得分是0.5,就是半仓;得分0或者小于0的时候处于空头形态,就是空仓。主要条件包括,最近四天,微盘股指数是否站上5日线,是否站上十日线,是否创新低,是否出现大阳线或者大阴线。
调整后的策略年化收益为55.66%,其中2024年最大回撤降至16.24%。2015-2017这三年,最大回撤仍然较大,考虑到当时的股票市场是从高位调整下来的,且2015年微盘策略普遍实现很高的收益,因此勉强可以接受。
![]()
最后总结一下,本篇探讨的是策略开发思路,分享的策略并不适合直接实盘。调整后的策略,尽管控制了回撤,但从年化收益来看,还是不如第一篇的模型二,即采用了一四月空仓的方案,这个咱们下一篇再探讨。
