Py学习  »  Python

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

邢不行 • 2 年前 • 346 次点击  

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

作者 | 邢不行、密斯锌硒




之前的系列文章中,我抛砖引玉过一些不错的基础策略,供大家进一步优化:


妙用北向资金找出大盘买点、卖点,跟着操作6年4倍【附代码】


抱团股会一直涨?无脑执行大小盘轮动策略,轻松跑赢指数5倍【附Python代码】


然后经常有人问我是否有稳赚的策略,能每天确定性的赚个2%的那种:



面对这种我一般会默默的拉黑...


事实上没有任何一种投资方式可以保证稳赚。承诺稳赚的不用怀疑,一律都是骗子


但是虽然没有稳赚的策略保赔的还是有的。本文就来介绍一个这样的选股策略。



01 

 保赔选股策略


1

策略简介

回测时间:2016.01.01-2021.07.26


上图中橙色曲线是等比例缩放的沪深300指数。


蓝线曲线是某选股策略 的资金曲线,该策略从2016年至今亏损了60%左右。


再看策略每年收益情况,除了2021年小幅上涨外每年都是赔钱的,非常拉胯。



2

选股策略

这个策略属于选股策略,它大概的模式如下:


固定时间由策略选出看好的一批股票并买入持有


持股一个月后全部卖出重新运行选股策略,选出新一批股票并持有一月,如此不断循环调仓



如上图在06年12月末选出15只股票,并在07年1月初买入持有至月末,期间策略收益为22.54%,同期指数收益16.87%。


到了1月末,卖出持有股票,并重新选出15只股票,在2月买入并持有。



这就是选股策略的基本模式。当然买入股票数及持有时长都可以自行调整,长到3个月短到3个小时,都可以。


关于选股策略的更多内容,可以看我这期视频:


点击文字观看视频


3

整体拉胯

这个选股策略表现如此差劲,那它选出的股票有什么特征呢?我们做个统计:


历史选股116只


总体而言,这个策略选出来的股票整体拉胯。选中的股票之后退市、ST、被借壳比例高达62.07%。


其中还包含了一些较为知名的股票:



所以这真的是一个保赔策略,选出的股票极其危险。因此可以用它避雷,只要是它选中的就尽量远离。


那它的选股逻辑是什么?该如何避免选中这些股票呢?



02 

 海航有息负债率


1

海南航空

前文提到策略选中过海南航空这只股票,那就以它为切入点来展开讲解。


关于海南航空,持续关注市场的朋友,肯定或多或少听过它资不抵债的新闻。


海航负债累累


而海南航空的股价也从2015年牛市顶点一路向下


海南航空历史K线图


作为投资者,看到海南航空这些负面新闻的时候,其实可以进一步深究下去。比如找到它的财务报告,详细了解它到底欠了多少钱:


海航资产负债表


财务报表上的负债分为无息负债有息负债


2

无息负债

顾名思义,无息负债就是无需支付利息的负债,如应付账款、预收账款等。


下面举一个我朋友圈发过的例子,大家可能会对这些会计名词有更清晰的了解。


加我微信xbx719浏览更多朋友圈内容


王者荣耀中充值后尚未消费的点券有700亿,这笔钱在腾讯的财报上被认为是玩家暂时借给腾讯的,而非利润。因此这700亿被当做预收账款(无息负债)来处理。


事实上这笔钱大概率不会被取出,玩家迟早会消费掉,所以这篇文章认为腾讯的真实利润可能被低估了20%-30%左右。





3

有息负债

接下来说有息负债需要支付利息的负债,如银行贷款或公司发行的债券。比起无息负债,有息负债自然是越少越好


下面看看海南航空到底有多少有息负债。


有息负债=以上科目(橙色)合计


通过计算发现海南航空的有息负债高达1469亿,而公司资产仅有1646亿,对应的资产有息负债率接近90%。


海航基本资不抵债


资产有息负债率高达90%是什么概念呢?我再举一个买房的案例方便大家理解。



假设某人通过贷款购得一套价值100万的房子,排除其他资产,那他的总资产就是100万


扣除30万首付,剩下70万贷款则是他的负债。再加上贷款对应的一年利息,他的总负债就是74.2万


所以他的资产有息负债率为74.2/100=74.2%



对个人而言肯定希望自己的有息负债率越低越好,这也可以判断一个人的财务是否健康,公司当然也是如此。


巴菲特曾说:不要碰那些负债太高的公司。


再看有息负债率高达90%的海南航空,它一路下跌的股价也似乎印证了这句话。


海南航空股价不断下跌


那么有息负债率高的股票是不是都和海南航空一样差呢?


我们做量化投资的不能只看个例,而是要用大数据来进行验证,找到所有高有息负债率的股票,看看其未来是否确实大概率下跌。



03 

 数据获取


要计算所有股票 的有息负债率,首先要获取相关的财务指标


1

主流网站

比较简单的方法是通过Python爬虫代码,从主流财经网站上抓取数据,如新浪财经、东方财富等。


新浪财经:finance.sina.com.cn/stock


2

量化小课堂

你也可以在我们量化小讲堂网站的新浪财务数据板块获取。


里面包含了全部股票上市至今的所有财务数据,并且每天实时更新


量化小讲堂:www.quantclass.cn/data/stock


有需要的话你可以加我微信xbx719免费获取一份最新数据。



04 

 Python验证


有了数据之后就可以用Python来进行验证,看看有息负债率高的股票是否会普遍性系统性的下跌。


1

选股策略

这里用最简单直接的方法:


策略选股流程


每月末计算所有股票的资产有息负债率,并从大到小排序,选取前15只股票构建一个投资组合。


有息负债率越高排名越高,越可能和海航一样资不抵债。


2006年到现在,每个月选出15支股票买入持有


如图中2006年12月29日挑选出以上股票,在07年1月第一个交易日开盘时均仓买入(将初始金额均分为15份)并持有一个月,月末全部卖出。


再重新计算此时所有股票的有息负债率,选取排名前15的股票,下月月初买入月末卖出,如此循环往复


2

注意事项

有两点需要额外注意。


第一:整个策略一直是满仓交易。


假设初始资金100万,经过一个月的交易赚了10%,那下个月就用110万交易;如果亏到90万,下个月交易金额则为90万。



第二:选中的股票可能会有重复。


有息负债率指标只随着一年公布四次的财务报表变化,所以隔月选出的股票可能会有重复。


至此我们就用有息负债率这个指标构建出了一个有效选股策略


3

策略回测

接下来就能用数据和代码来验证策略到底是赚钱还是亏钱了。


虽然用到的数据较多,但程序本身不复杂


数据、代码可以加xbx719获取


我们直接来看回测结果。


回测时间:2007.01.01-2021.07.26


图中黄色曲线是沪深300指数从07年至今的表现。蓝色曲线是通过有息负债率策略得到的资金曲线,表现一般


特别是2016年之后,随着股市愈发成熟,垃圾股更容易被市场抛弃,整体净值下滑严重。


回测时间:2016.01.01-2021.07.26


即使2016年之前也只是表现稍好,还是因为2015年牛市中大量基本面较差的股票大涨。


总而言之这个策略的表现非常差。长期来看没有跑赢指数,年化收益、最大回撤也并不理想。


策略整体表现不佳


所以有息负债率高的股票尽量别碰,不管从理论角度还是数据角度来看,亏损的可能性都较大。



05 

 网站策略


为了方便大家排雷,上述有息负债率选股策略已经上线到我们网站,并且可以免费查阅


www.quantclass.cn/service/stock


在页面上能看到该策略最新的资金曲线历年收益(2018年6月至今)。


点开右上角微信提醒即可订阅最新消息


敏锐的朋友会发现策略今年的收益竟然高达22%,跑赢了指数


所以股市就是这么神奇,即使理论上再差的指标,也会有暂时有效的阶段。但我们更看重的是长期表现。


同时页面上也能看到最新的选股结果,它会在每月最后一个交易日(如9月30日),选出有息负债率最高的几只股票(选股数量可调)


最新选股记录


你也可以免费下载历史至今完整的历史选股记录。如果你需要该页面地址的话,可以加我微信xbx719获取。



 06 

 尾声


到此就介绍完了整个策略,最后跟大家分享一些心得。


对股市进行量化研究,相比于花时间去研究各种技术指标,我更建议从财务数据中去挖掘信息,这样性价比更高。


上市公司的财务报表中有大量财务数据,可以有很多角度去分析这些数据。


多角度分析


本文就是从债偿能力角度来判断一家公司的好坏,使用的是有息负债率这个指标。


除此以外,财务报表中还包含了营运能力、盈利能力、现金流量、成长能力等范畴及相应指标。



除了单个指标外,还可以通过多个指标的结合进行选股。


感兴趣的朋友可以点在看,人数多的话之后我就多写些关于财务指标选股的文章。有任何相关问题,也可以加我微信xbx719交流。



联系作者


往期文章推荐


用Python量化定义MACD,找出A股全部12万次顶底背离,胜率究竟有多少?附代码【邢不行】

邢不行 | 妙用北向资金找出大盘买点、卖点,跟着操作6年4倍【附代码】

常见量化投资误区合集,量化交易新手脱坑指南 | 邢不行

期权骚操作:逃顶比特币,还能额外赚【比特币逃顶系列1】

邢不行 | Python量化 + 数字货币 + 轮动 = 4年1000倍【附代码】

抱团股会一直涨?无脑执行大小盘轮动策略,轻松跑赢指数5倍【附Python代码】

BTC涨这么多,还能买吗?要卖吗?| 量化定投策略告诉你答案【附代码】

【交易回顾】没用Python做量化回测,少赚100w | 股指期货妙用案例

听说MACD是技术指标之王?我们用Python来验验成色

复权不复权,天差与地别 | 量化投资中如何最准确的计算股票前后复权价(附代码)

写最少的代码,画最骚的K线

这么简单的量化策略,居然能跑赢大盘10倍 | A股周内效应

如何算清楚自己股票交易的手续费

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/121575
 
346 次点击