def __get_pb_and_bvps(code, quarter):
''' get pb of spbcific quarter
args: code, quarter(e.g. 2015q3)
'''
r = {}
bvps = 0
y = quarter.split('q')[0]
q = quarter.split('q')[1]
q_str = 'code==' + '\"' + code + '\"'
r[quarter] = __pd_read_report(quarter)
if (len(r[quarter].query(q_str)) > 0):
bvps = r[quarter].query(q_str).bvps.values[0]
else:
log.warn('no entry in %s (bvps)', quarter)
return False, False
s, e = __quarter_to_date(quarter)
k = ts.get_k_data(code, ktype='M', start=s, end=e)
if (len(k) == 0):
log.warn('no k data entry in %s', quarter)
return False, False
pps = k.loc[k.last_valid_index()].close
log.debug('%s, price: %.2f', e, pps)
log.debug('bvps: %.2f', bvps)
pb = round(pps/bvps, 2)
log.debug('pb: %.2f', pb)
return pb, bvps
评论列表
文章目录