A股市场统计(营业收入增长率、净利润增长率及净利润比市值近十年的平均数、中位数)
发布时间
阅读量:
阅读量
就资产配置而言,在A股市场中投资的资产报酬率是多少?作为一个长期投资标的是否具有配置价值?本文将重点分析其在收入增长、利润提升以及估值水平等方面的表现,并提出一套评估A股资产回报率的方法论。该方法的核心公式如下所示:
成长性指标统计
沪深300统计
| 年份 | 平均营业收入增长率 | 平均净利润增长率 |
|---|---|---|
| 2010 | 36.50% | 36.39% |
| 2011 | 23.27% | 13.55% |
| 2012 | 8.45% | 2.25% |
| 2013 | 8.28% | 13.69% |
| 2014 | 3.91% | 4.72% |
| 2015 | -5.60% | -4.18% |
| 2016 | 3.60% | 5.00% |
| 2017 | 15.68% | 18.90% |
| 2018 | 12.32% | 9.01% |
| 2019 | 8.92% | 8.55% |
| 年份 | 中位数营业收入增长率 | 中位数净利润增长率 |
|---|---|---|
| 2010 | 26.88% | 29.76% |
| 2011 | 17.85% | 5.53% |
| 2012 | 7.99% | -5.34% |
| 2013 | 8.29% | 7.47% |
| 2014 | 5.20% | 4.37% |
| 2015 | 1.45% | 0.28% |
| 2016 | 5.03% | 3.36% |
| 2017 | 12.96% | 12.76% |
| 2018 | 9.19% | 6.53% |
| 2019 | 7.75% | 2.93% |
中证800统计
| 年份 | 平均营业收入增长率 | 平均净利润增长率 |
|---|---|---|
| 2010 | 36.16% | 37.91% |
| 2011 | 22.47% | 12.75% |
| 2012 | 8.28% | 1.62% |
| 2013 | 8.25% | 13.55% |
| 2014 | 4.11% | 4.85% |
| 2015 | -3.16% | -4.06% |
| 2016 | 5.86% | 7.85% |
| 2017 | 16.08% | 20.77% |
| 2018 | 11.89% | 6.73% |
| 2019 | 9.22% | 8.23% |
| 年份 | 中位数营业收入增长率 | 中位数净利润增长率 |
|---|---|---|
| 2010 | 24.41% | 23.54% |
| 2011 | 15.20% | 6.14% |
| 2012 | 5.08% | -10.03% |
| 2013 | 6.58% | 3.76% |
| 2014 | 3.94% | 2.77% |
| 2015 | 0.66% | -3.96% |
| 2016 | 6.12% | 3.73% |
| 2017 | 12.71% | 11.82% |
| 2018 | 7.81% | 3.81% |
| 2019 | 5.15% | -2.59% |
净利润比总市值
沪深300
| 年份 | 净利润比市值平均数 | 净利润比市值中位数 |
|---|---|---|
| 2010 | 4.40% | 3.96% |
| 2011 | 4.76% | 4.41% |
| 2012 | 4.82% | 5.06% |
| 2013 | 4.97% | 5.14% |
| 2014 | 6.06% | 5.03% |
| 2015 | 2.68% | 3.55% |
| 2016 | 3.74% | 3.39% |
| 2017 | 6.14% | 5.09% |
| 2018 | 5.67% | 5.10% |
| 2019 | 7.63% | 7.07% |
可以看出2019年沪深300的资本回报率平均数=7.63%*03+8.55%=10.84%,收益水平还是不错的。
中证800
| 年份 | 净利润比市值平均数 | 净利润比市值中位数 |
|---|---|---|
| 2010 | 3.45% | 3.09% |
| 2011 | 3.33% | 2.89% |
| 2012 | 3.79% | 3.84% |
| 2013 | 3.69% | 3.97% |
| 2014 | 4.21% | 3.51% |
| 2015 | 1.97% | 2.42% |
| 2016 | 3.06% | 2.25% |
| 2017 | 4.74% | 3.17% |
| 2018 | 3.67% | 3.57% |
| 2019 | 4.82% | 5.38% |
2019年中证800的平均资本报酬率=4.82%*0.3+8.23%=9.68%。
附录
python code
from WindPy import *
import pandas as pd
import numpy as np
from datetime import datetime
from WindCharts import *
w.start()
hs300_stock_list=w.wset("sectorconstituent", "date=2009-05-02;windcode=000300.SH", usedf=True)
zz800_stock_list=w.wset("sectorconstituent", "date=2009-05-02;windcode=000906.SH", usedf=True)
zz800=list(zz800_stock_list[1]['wind_code'])
hs300=list(hs300_stock_list[1]['wind_code'])
data_df=pd.DataFrame()
for i in range(11):
#统计近十年的营收、净利润增长率及净利润比市值的中位数及平均数
year=2009+i
#选择股票标的的范围
target_stocks=hs300
data_df11=w.wss(target_stocks, "oper_rev,net_profit_is", "rptDate="+str(year)+"1231;rptType=1", usedf=True)[1]
data_df11.rename(columns={'OPER_REV':str(year)+'-营收','NET_PROFIT_IS':str(year)+'-净利润'}, inplace = True)
market_value=w.wss(target_stocks,"ev", "tradeDate="+str(year)+"1231", usedf=True)[1]
market_value.rename(columns={'EV':str(year)+'-市值'}, inplace = True)
data_df=pd.concat([data_df11,market_value,data_df],axis=1)
#输出格式为表格格式,可直接复制生成表格
print('年份|平均数数营业收入增长率|平均数净利润增长率')
print('-------- | -----|-----')
for i in range(10):
year=2009+i
data_df[str(year+1)+'营收增长率']=data_df.apply(lambda x:(x[str(year+1)+'-营收']-x[str(year)+'-营收'])/x[str(year)+'-营收'],axis=1)
data_df[str(year+1)+'净利增长率']=data_df.apply(lambda x:(x[str(year+1)+'-净利润']-x[str(year)+'-净利润'])/x[str(year)+'-净利润'],axis=1)
mean_revenue=data_df[str(year+1)+'营收增长率'].mean()
mean_net_profit=data_df[str(year+1)+'净利增长率'].mean()
print(year+1,'|','%.2f%%'% (mean_revenue*100),'|','%.2f%%' % (mean_net_profit*100))
print('年份|中位数营业收入增长率|中位数净利润增长率')
print('-------- | -----|-----')
for i in range(10):
year=2009+i
data_df[str(year+1)+'营收增长率']=data_df.apply(lambda x:(x[str(year+1)+'-营收']-x[str(year)+'-营收'])/x[str(year)+'-营收'],axis=1)
data_df[str(year+1)+'净利增长率']=data_df.apply(lambda x:(x[str(year+1)+'-净利润']-x[str(year)+'-净利润'])/x[str(year)+'-净利润'],axis=1)
median_revenue=data_df[str(year+1)+'营收增长率'].median()
median_net_profit=data_df[str(year+1)+'净利增长率'].median()
print(year+1,'|','%.2f%%'% (median_revenue*100),'|','%.2f%%' % (median_net_profit*100))
print('年份|净利润比市值平均数|净利润比市值中位数')
print('-------- | -----|-----')
for i in range(10):
year=2009+i
data_df[str(year+1)+'净利润/股价']=data_df.apply(lambda x:(x[str(year+1)+'-净利润']/x[str(year)+'-市值']),axis=1)
mean_ni_ev=data_df[str(year+1)+'净利润/股价'].mean()
median_ni_ev=data_df[str(year+1)+'净利润/股价'].median()
print(year+1,'|','%.2f%%'% (mean_ni_ev*100),'|','%.2f%%' % (median_ni_ev*100))
python

通过假设所有公司均分配30%的分红比例来减少由于分红政策差异所带来的影响,并采用调整后的永续股利增长模型:R=D/P+g的形式。
全部评论 (0)
还没有任何评论哟~
