微盘股“非线性择时方案”及“源代码”

用户头像wuh***zc
2025-04-17 发布

择时方案的实现步骤:

第一步、数据准备;

微盘股指数和果仁网的微盘股策略数据下载;

[避免啰嗦,更具体的下载操作,请看详文]

第二步:构建择时模型;

现在公开的资料上存在多种多样的择时模型,比如均线系统、MACD等。虽然有很多择时的模型,但是用起来的效果并不是很好,或者说并不好用。每个择时模型都有其适用空间或范围,也就经常容易出现张冠李戴的错误使用行为,最终效果可想而知。

在一篇文章《量化研究徐中行:量化策略择时效应:市值越小,择时越好》中,论证过A股存在的一个现象:那就是市值越小,择时越好;这个针对的是指数或策略层面的,不是针对个股。因此,在当下的A股环境下,我们对微盘股择时是合理有效的。

在构建新的择时模型之前,我也简单用过均线的择时信号,但是效果还是不尽人意的,虽然择时的效果不亏钱。其实我们了解小市值股票的策略或指数的特征就明显知道,波动的比较快速,也就是说下跌时比较快,同时反弹时也比较快。如果使用均线系统这类型线性的模型,经常会出现反应不足,下跌一段时间后才做空,上涨一段时间后才做多,经常错过一大段的逃离或盈利的机会,实在可惜。

为此,我们自己建一个非线性的择时模型,下跌时早点做空,反弹时早点做多。

那么我们如何建呢?选用那类型的非线性函数呢?有多元方程、幂函数、指数函数、对数函数等,有简单的,也有复杂的。当时刚开始想的时候,实在头痛,但是某一天突然出现一个灵感:现实世界中,存在大量的两者关系是指数关系的,也就是非线性关系,经过对数处理后,那就是线性关系。

受此启发,决定使用指数函数去构建择时的非线性模型,也就是择时指标值,这个指标值大于0做多,小于0做空,经过自己的调整后,非线性择时模型indicator指标值公式如下所示。

非线性择时模型indicator指标值公式

第三步、验证非线性择时模型;

a、编写回测框架代码;

框架主要实现的功能是:读取微盘股指数和微盘股策略数据、执行回测、计算绩效指标和输出结果。

图11-1:回测框架的部分代码截图

b、回测验证择时模型;

择时模型实现的过程中,一定要注意:

1)择时信号判断时,用的是微盘股指数的收盘价数据,而不是微盘股策略数据;

为什么要这样呢?因为微盘股指数代表的是400个微盘个股的股票行情表现,指数价格波动也更平稳,不会因少数股票大涨大跌而影响指数的大起大落。但是,微盘股策略一般持仓数量较少,少则几个,多则几十个,难以代表微盘股整体的市场情绪。所以在择时计算时,使用“微盘股指数”作为择时的依据是最恰当的选择。

2)根据指数择时后,微盘股指数择时效果 与 微盘股策略择时效果 会存在局部差异;

为什么会这样呢?因为微盘股策略不是每天都跑赢微盘股指数的,也就是说微盘股策略的收益率是围绕着微盘股指数上下偏离的;所以会出现,阶段性的微盘股指数择时效果好于微盘股策略择时效果,但是大多数情况下,微盘股策略择时效果会好于微盘股指数择时的效果,主要是因微盘股策略超额的存在。

了解这个注意点后,我们先对微盘股指数择时验证,看看效果如何?

从累计涨跌幅[图11-2所示]角度看,同期的微盘股指数涨幅接近160%,而我们的择时模型大概只有15和25天周期的择时模型是明显跑赢指数的,除了5天周期特别低外,其余不同周期的择时模型都与指数涨跌幅差不多。

从绩效评估[图表1-1所示]角度看,所有择时的年化波动率都比不择时的情况下要小,并择时周期越小,年化波动率控制的越好。夏普率几乎都超过1.0,甚至最高的可达2.28的数值。最大回撤均比指数的小一半以上,特别是择时周期越小,风险控制的越好。由此可以看出,不同周期的择时模型,都可以实现不同程度的风控效果。

综合角度来看,风控最好的应该是25天周期的择时模型。这同时也说明了,择时模型在基本上是有效的并控制beta风险。

虽然我们从现有的时间段测试的不同周期择时效果图来看,能够超过指数本身累计涨幅的不多。但是我们别忽视了另外一个影响因素,那就是微盘股策略的超额收益。如果加入这部分的影响,我们可以发现几乎所有的择时模型的最总策略效果都会跑赢或明显跑赢指数。这也就是我们实盘最终想要的一个结果。

图11-2:微盘股指数不同周期择时的效果图

表1-1:微盘股指数不同周期择时的效果图

经过对微盘股指数择时后,可以给出肯定的答案:非线性择时模型是可行有效的。

接下来将微盘股指数的不同周期择时信号,加入到微盘股策略上。

从累计涨跌幅[图11-3所示]的曲线来看,只有15天周期的择时模型是远远跑赢微盘股策略的,除了5天周期的择时模型外,其余的择时模型都与微盘股策略的差不多。

从绩效评估[表1-2所示]的角度来看,所有的年化收益率明显高于不同择时模型的微盘指数收益率,主要是归根于尾盘股策略对于微盘股指数的明显超额收益的贡献。年化收益率基本都在60-90%之间,这是我们最期望的实盘投资效果。同时这个过程,最大回撤率一样减少一半以上,最大的回撤幅度也只有24.5%,特别是25天周期及以内的择时模型表现,最大回撤基本控制在16%以内。这是多么优秀的一个风险控制方案。同样,25天周期的择时模型,无论是在微盘股指数的择时表现上,还是微盘股指数择时信号加入到微盘股策略的择时表现上,都是最好的择时模型,其优秀的体现在年化收益率均高于对标基准的、最大回撤几乎控制最好、夏普率最高和年化波动率几乎最小等。

所以,本研究的最终选择就是:选用25天周期的非线性择时模型是最优的,同时兼并了择时短周期的反应快和择时中场周期的反应迟钝的两者能力。也就是我想解决的问题就是非线性模型可以将反弹的权重指数级增加,同时震荡时,反弹的权重指数级增加不明显。

图11-3:微盘股策略根据微盘指数不同周期择时的效果图

表1-2:微盘股策略根据微盘股指数不同周期择时的效果图

c、25天周期择时模型在通达信上显示

经过深入研究后,25天周期的非线性择时模型表现最佳。为了方便将信号变得容易,为此将模型的指标公式转化成通达信软件平台的EL语言,如图11-4所示。

图11-4:25天周期非线性择时模型的通达信程序公式

量化研究徐中行

2 次咨询5.0

暨南大学 物理电子学硕士

1023 次赞同

去咨询

注意:觉得策略模型对你有价值的朋友才向我发起付费询问,毕竟研究过程耗费不少精力,算是对我时间上的一种微量价值补偿!【需要“发起3次付费咨询”,因单次的费用上限不高!】

将公式导入通达信的副图可显示结果,如图11-5所示。25天周期非线性择时模型在副图上显示:黄色线为多空判断的结果,TIMING_INDI显示为0.5000时,微盘股指数做多,如果显示为-0.5000时,则微盘股指数做空;白色线为非线性择时模型的指标值,INDICATOR_TIM;紫色线为0线,用于划分指标值大于0和小于0的区域。其中指标值最后的择时判断结果,在微盘股指数的价格上,用红色和绿色箭头表示,当日收盘价时是做多还是做空的信号,比如最新的那个K线出现的是红色箭头,那么这个箭头是15:00确认做多信号。因为实盘交易过程中,很难在15:00交易股票,所以我一般都在14:50左右根据最新的信号进行交易,偶尔也会出现些信号错误,当你根据最新信号交易完后,信号到收盘之间还是存在变动的可能性,但是概率比较少。

图11-5:25天周期非线性择时模型的通达信显示:黄色线为多空判断,白色线为指标值,紫色线为0线

本章研究的总结:

a、量化选股策略的资产来源:资产收益=阿尔法收益+贝塔收益+伽马收益,而伽马收益是通过选股、资金、仓位管理和交易行为等手段转化为正收益,并将其称为“正伽马收益”;其中贝塔收益是由外部因素导致的但无法掌控,阿尔法收益是由独具慧眼的选股能力导致的但严重依赖个人的选股能力,只有伽马收益是利用股票的无序波动而创造的收益并比较容易获得,起码在目前的A股市场是如此的。

b、微盘股策略开发原理:微盘策略 = 小市值因子 + 基本面因子,其中小市值因子是实现伽马收益的关键部分,而基本面因子则是限定微盘股策略的选股范围或倾向。

c、微盘股择时风控方案:25天周期的非线性择时模型[图12所示]大体解决了,在快速反弹时反应敏感问题,同时在长期震荡时钝化反应敏感问题,也就是说在反弹的权重指数级增加,而在震荡时反弹的权重指数级增加不明显。

图12:25天周期的非线性择时模型收益曲线表现图

附件资料包括:

1、微盘股择时模型的研究平台程序;

2、非线性择时模型在通达信实现的代码;

3、文章中的微盘股策略完整的选股因子和模型的细节;

4、没有打码的可视完整文章;

参考资料链接:

1、数洞量化共享股票:10个回调的强势股

2、量化研究徐中行:思考[摘录]:股票的阿尔法收益、贝塔收益和伽马收益是什么?

3、量化研究徐中行:控制股票产品净值“最大回撤”的有效投资方案

【更多的策略共享可以关注:果仁网 徐中行】

如果有看中的任何一个或少数的策略,随时可以“向我 出价 询问策略”具体模型。

徐中行 果仁网个人主页

评论

需要帮助?

试试AI小助手吧