求等全PE均值用"pe = len(df)/sum([1/p if p>0 else 0 for p in df.pe_ratio])"的原理是什么?
我的直观理解是,应该用pe = sum([p if p>0 else 0 for p in df.pe_ratio])/len(df),不过算出来的指数pe明显波动很大,有好几个值很异常。
问楼主个问题:pe计算那,pe = len(df)/sum([1/p if p>0 else 0 for p in df.pe_ratio]) 没看懂啊
一般来说:
(1)简单算术平均法。这种方法将个股的市盈率简单地进行算术平均,其计算公式为:平均市盈率=所有股票市盈率之和/股票个数
(2)加权平均法。这种方法的计算公式是:平均市盈率=所有股票市盈率与该股票权数乘积之和/股票个数
(3)理论平均市盈率=该类股票中流通股本的总市值/这些股票产出的税后利润
我用你的方法算7月15日沪深300,PE=21.25;用简单算术平均算PE=44.52; 用理论平均算PE= 12.43,各个差别很大啊