培训中心网站建设方案,h5案例,河南郑州建设网站,宣传软文是什么欢迎关注我的公众号【小散逆袭大本营】学到目前这个程度#xff0c;我们已经可以画出个股的PE和PB曲线图了。但是我们知道#xff0c;对于个股来说#xff0c;PE或者PB的参考价值很有限#xff0c;不同类型企业#xff0c;其PE的市场认可程度是不同。我们几乎不可能通过仅…欢迎关注我的公众号【小散逆袭大本营】学到目前这个程度我们已经可以画出个股的PE和PB曲线图了。但是我们知道对于个股来说PE或者PB的参考价值很有限不同类型企业其PE的市场认可程度是不同。我们几乎不可能通过仅仅判断个股的PE和PB来做出一个像样的量化交易策略。不过对于指数而言特别是宽基指数沪深300之类的其历史PE和PB值的参考价值就非常大了。我在《小散逆袭手把手教你做量化定投》这本书中已经做了示范指数的PB可以说是一把不错的衡量该指数估值高低的尺子。那么我们下面就在聚宽中用python来做出一个指数的PE走势图吧。小目标三计算出上证50指数过去10年每天的PE数值并画出走势图。拿到问题后首先需要思考解决问题的思路。有一点可以明确聚宽中并没有提供指数的PE数据获取函数我们只能自己计算。那么先从简单的情况入手怎么计算出一天的上证50指数PE数值呢我们先得知道指数的PE数值是怎么计算的。严格来说应该参照中证网的计算规则进行计算但是分类靠档的计算很复杂所以目前比较通用的近似计算公式就是PE 成份股市值之和÷成份股净利润之和。比如我要计算9月10日上证50的PE就得知道当天上证50指数的成份股有哪些然后计算出这些成份股的总市值之和再算出成份股的净利润之和二者一除就是当天的指数PE了。获取某个指数成份股聚宽已经提供了函数如下这个函数的使用很简单大家自己练习一下就清楚了。成份股有了下面就需要得到每个成份股的总市值和净利润了。这里有个问题需要说明一下。市盈率有两种一种叫静态市盈率一种叫滚动市盈率。静态市盈率当前股价÷上一财年的每股收益。滚动市盈率当前股价÷过去四个季度每股收益。显然滚动收益率更能有效的反应股票当前的PE水平。所以一般情况下我们都默认市盈率为滚动市盈率PETTM。在聚宽的财务函数中没有直接能获取过去四个季度净利润的函数但是可以获取个股的PETTM和总市值那么通过这两个数据可以计算出过去四个季度的净利润。这样计算指数某天的PE数值具体实现如下为了后面计算方便我把这个功能定义为一个函数指数代码和日期都是参数。这里我要感谢一位群友IDI20181129他给了我一段代码我稍加修改就成了上面这个代码。他的这个代码比我之前自己弄的效率高出很多很多大大缩减了计算时间。我试验了一下上证50指数9月10日的PE数值计算出的结果和雪球网公布的是一样的。好了今天就写到这里。