前言:
如今大家对“股票pe是什么意思pbs”大体比较注意,你们都想要知道一些“股票pe是什么意思pbs”的相关知识。那么小编同时在网上搜集了一些关于“股票pe是什么意思pbs””的相关文章,希望同学们能喜欢,咱们一起来了解一下吧!市盈率PE和市净率PB是投资者经常参照的重要指标。但是单纯的看这个数值,行业与行业之间的对比,个股与个股之间的对比,实在没有意义。于是出线了分位值的计算方法。
简单来说,对于净利润不断增长的股票来说,PE分位值如果是65%,那么就是说在过去的某段时间里,估值有35%的时间比现在高,35%的时间比现在低。这只股票现在的估值是贵还是便宜自然心中有数。
如果是净利润不断上升下跌进行循环重复的周期性股票,PE的分位值有些失效,这个时候可以参照PB的分位值。因为就算净利润是不断震荡的,但是净值的变化却没有那么快。
但是我们在常用的股票软件中,要么只有四分位,只能判断处于哪个区间,不够精确。要么不能自定义开始计算分位值的时间,毕竟2007年前的国内股票市场实在算不上成熟,没有什么参考价值。
难道除了付费数据之外就没有别的选择么?自然不是。国内的股票市场虽然不争气,但与美股港股的数据动不动就要钱相比,国内有着各种各样的免费网站来计算自己需要的数据。
以量化网站聚宽为例,登陆后,在【我的策略】,【投资研究】中新建一个python3的策略,粘贴下面的代码后
27行,修改开始日
50行,修改股票代码
短短2行几个字母和数字,就可以得到自己用来投资参照的体系。感兴趣的可以自己试一下
import numpy as np
import pandas as pd
# 得到该股票某一天的pe
def getPe(code,d):
q = query(
valuation
).filter(
valuation.code == code
)
df = get_fundamentals(q, d)
return df['pe_ratio'].values
# 得到该股票某一天的pe
def getPb(code,d):
q = query(
valuation
).filter(
valuation.code == code
)
df = get_fundamentals(q, d)
return df['pb_ratio'].values
# 得到该股票所有的pes
def getPes(code):
start='2010-1-1' #在此填入计算开始的日期
end = pd.datetime.today()
pes=[]
for d in pd.date_range(start,end,freq='d'): #频率为日
# 剔除停盘日
if get_price(code,start_date=d, end_date=d ,frequency='daily', fields=['volume']).values != 0:
pes.append(getPe(code,d))
return pes
# 得到该股票所有的pbs
def getPbs(code):
start='2010-1-1'
end = pd.datetime.today()
pbs=[]
for d in pd.date_range(start,end,freq='d'): #频率为日
# 剔除停盘日
if get_price(code,start_date=d, end_date=d ,frequency='daily', fields=['volume']).values != 0:
pbs.append(getPb(code,d))
return pbs
stocks=[
'600031.XSHG' # 在此填入需要计算的股票代码,深市为XSHE
]
print ('今天是: ',pd.datetime.today())
for code in stocks:
q= getPes(code)
q.sort()
pe=getPe(code,pd.datetime.today())
cn=q.index(pe)
cp=int((1.0*cn)/(1.0*len(q))*100)
print(get_security_info(code).display_name,' ',code,' : ',cp,'%')
for code in stocks:
q= getPbs(code)
q.sort()
pb=getPb(code,pd.datetime.today())
cn=q.index(pb)
cp=int((1.0*cn)/(1.0*len(q))*100)
print(get_security_info(code).display_name,' ',code,' : ',cp,'%')
标签: #股票pe是什么意思pbs