BK_PNA12
简述
计算板块指定日市净率(最近12个月)
BK_PNA12(EndT:TDateTime,RightType:Int,Stype:Int,SampleSelect:Int,EPSCriterion:Float):Float
EndT:指定日期
RightType:加权方式,具体取值如下:
Stype:股票类型,具体取值如下:
SampleSelect:样本股选择,具体取值如下:
显示名 | 取值 | 备注 |
全部 | 0 | 板块中所有个股都参与计算 |
剔除亏损 | 1 | 剔除每股收益<0的个股 |
剔除绩差 | 2 | 剔除每股收益< EPSCriterion的个股 |
EPSCriterion:绩差股标准,和参数SampleSelect结合使用。
场景 | 备注 |
SampleSelect为0或1 | 此参数无效 |
SampleSelect为2 | 剔除对应EndT时点的期初报告期的每股收益小于EPSCriterion的股票 |
返回:实数
算法:
(1)板块市净率(总股本加权) =∑(股票i总市值)/∑(股票i最近12个月净资产)
(2)板块市净率(流通股本加权) =∑(股票i流通市值)/∑(股票i最近12个月净资产/股票i报告期总股本*股票i报告期流通股本)
注:上述总市值、流通市值所在时点由EndT决定;财务指标的报告期为距离EndT最近的报告期。
范例:
//假设构建了用户板块mybk(此处以沪深300的成分股代替)
//计算mybk板块2011年3月15日的按总股本加权的市净率
EndT := inttodate(20110315);
stockArr := getbkbydate('SH000300',EndT);
savebk('mybk','新建分类',stockArr);
SetSysParam(pn_bk(),'mybk');
return BK_PCF12(inttodate(20110315),0,0,0,0);//返回结果:2.34
StocksPEPBPMIPNA12_Call