财务指标别乱用,实盘回测亏成狗?如何量化价值投资?

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

这是邢不行第 122 期量化小讲堂的分享

作者 | 邢不行

你是一位坚定的基本面投资战士,在全球最大知识付费平台A股浸淫多年,从数字孪生到母猪生产,从AIGC到白酒酿造,从量子通讯到卜卦算字,无一不精。

但近期,你精选的行业龙头兼基本面大蓝筹的股价腰斩,你亏损严重,被深深套牢。

你百思不得其解,明明自己的选股策略逻辑清晰,在各类财务指标加持下无懈可击,又为何会亏损呢?

01

基本面与量化投资

做价值投资的朋友是否有过前文类似的赚(kui)钱经历呢?

明明按财务指标选出了基本面最好的公司,怎么一买还是亏?

是被庄家盯上了,还是自己学艺不精?

其实你只要在投入真金白银实盘前做下回测,看看你的策略在历史上表现如何,就有逃过一劫的可能。

毕竟历史上表现不佳的策略,也就没有实盘的必要了。

甚至在借助指标选股前就应该去回测,用全部历史数据去检验所用财务指标是否有效,又有何规律,以便更好运用价投知识,选出真正符合选股逻辑的股票。

这样的回测并不困难,本文将带大家测试几个最有代表性的财务指标的效果,并揭示其用法。

财务指标类型

鉴于篇幅有限,其他常用财务指标的结果我们则整理到了表格上,包含指标构成公式、用法及选股效果

测试用的数据代码也已一起打包,如果你感兴趣的话,可以在评论区留言,都是可以分享给你的。

话不多说,我们开启今天的回测之旅。

02

市盈率指标

1、指标介绍

我们先测试最常见的市盈率指标。

市盈率计算公式

该指标在行情软件中默认显示,99%的价值投资者都会用它去判断股票是否被高估或低估

上学时老师曾说,市盈率越低的股票估值越低,未来上涨概率也越大

因此我们可以尝试构建一个买低市盈率股票的量化选股策略,看能否帮我们选出赚钱的股票。

2、策略构建

假设我们在每月末计算每个股票市盈率的倒数,从大到小排序,并剔除当时ST、退市、停牌或上市不满一年的股票。

倒数:为避免净利润为0时无法计算市盈率

选出此时市盈率倒数最大的10只股票,在下月第一个交易日开盘均仓买入,最后一个交易日收盘卖出。

并重新选择下月符合条件的股票,在下下个月第一个交易日买入,如此循环往复。

假设一开始我们投入一笔钱去交易这个策略,最终是赚是亏?

要验证这个想法,就需要借助全部历史财务数据和Python代码

相关数据代码都已经准备好,你只需要打开带py后缀的文件,点击运行即可。

如果你需要这些资料的话,可以在评论区留言,都是可以分享给你的。

程序运行结果如图所示:

代表策略的橙色曲线从1元变成1.9,年化收益4.69%,略微跑赢代表大盘的沪深300指数,近年来表现不佳。

可见只通过低市盈率炒股,收益与存银行相差无几,且风险极大,并不划算。

3、进一步探究

在此基础上,我们做了进一步探究,测试了每个行业买低市盈率股票的结果。

表现并未见明显好转。

甚至我们还按市盈率倒数对股票从大到小排序,构建了10个不同的选股策略,分别买入排名前10%、前10%-20%....90%-100%的股票,以此对比不同市盈率区间股票表现,寻找规律。

结果如图:

不同市盈率区间股票表现规律

高市盈率组合股价表现确实相对更差,但低市盈率也并非最优解。

由此可见,一味追求低估值并不可取,只要股票估值在合理区间范围内即可。这或多或少与市场流传的前人经验相悖。

我们曾专门就市盈率写过一篇文章,感兴趣的可以去看看。

公司估值越低越好吗?买市盈率低的股票究竟是赚是赔?「附代码」

03

净利润增长率

我们还测试了价值投资者常用的另一个指标——净利润同比增长率

净利润解释

需注意的是,此处增长率是同比数据,即用今年的净利润与去年同期净利润数据做对比

比如用今年年报的净利润对应去年年报的净利润数据。

接下来我们和市盈率一样,构建相应的选股策略,将选股条件替换为选择净利润增长率最大的10只股票,其他不变。

借助前文用到的Python代码,稍作修改即可得到策略结果:

代表策略的橙色曲线甚至未跑赢代表大盘的沪深300指数,以亏损告终

我们同样测试了买各行业净利润增长率最高的1只股票的策略

虽然策略最终实现了正收益,但年化收益仅3.48%,无法令人满意。

我们甚至也对净利润增长率做了分组统计

净利润增长率高的公司表现整体优于低的,但并非越高越好,增长率太高也可能不被市场认可。

04

其他指标

至此我们展示了两个常见的财务指标测试结果:

发现这两个指标单独的选股效果一般,但这不代表单一的财务指标是无效的。

我们也曾分享过一些有效的财务指标,如有息负债率等。

Python量化避雷指南:一直买负债最多的公司,会亏成啥样?

我们自己的实盘策略中也会大量使用财务指标。

虽然部分指标单用效果不佳,但与其它财务指标或策略结合后往往会有奇效。

比如我们曾复现过部分国外投资大师的策略,并将它们移植到A股使用。

这些策略大多表现不错,本质上是通过财务指标进行基本面选股,但同时也是一个量化选股策略,有能力的朋友也可以按照类似思路去尝试复现一番。

又或者你有自己的基本面选股策略,也可以尝试先回测它的历史表现。毕竟历史上表现一般的策略,未来表现好的可能性更小。

在真金白银实盘前做量化回测,可以帮你避免诸多不必要的损失。

如果你不知道财务指标选股的具体效果,我统计了一张指标测试结果的汇总表。

财务指标的测试汇总表

用指标构建出自己的策略后,你还可以借助选股数据和代码,去尝试回测策略的效果。

上述资料我都已打包,感兴趣的可以在评论区留言,都是可以分享给你的。

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值