This commit is contained in:
王思川 2021-11-17 04:50:21 +08:00
parent 01d988773b
commit 18db608801
4 changed files with 110 additions and 22 deletions

View File

@ -11,13 +11,13 @@ class RatingModel:
def __init__(self, param):
# 所属行业
self.industry = param['industry']
# 报告期
self.period = param['period']
self.industry = param['行业']
# 评价期间
self.period = param['评价期间']
# 数据模板 data_model
self.data_model = param['data_model']
self.data_model = param['数据模板']
# 指标结果(财务)
self.indicators = ''
self.indicators = self.financial_elements()
# 指标百分比
self.percentages = ''
# 指标评分结果
@ -33,11 +33,21 @@ class RatingModel:
"""
财务要素
"""
elements = dict()
ele = dict()
dm = self.data_model['财务数据']
elements['净资产收益率'] = roe(dm['净利润'][0], dm['所有者权益合计'][0], dm['所有者权益合计'][1])
elements['总资产报酬率'] = roa(dm['利润总额'][0], dm['利息支出'][0], dm['资产总计'][0], dm['资产总计'][1])
elements['总资产周转率'] = tat(dm['营业收入'][0], dm['资产总计'][0], dm['资产总计'][1])
b, e = self.period['上期'], self.period['当期']
ele['净资产收益率'] = roe(dm[e]['净利润'], dm[e]['所有者权益合计'], dm[b]['所有者权益合计'])
ele['总资产报酬率'] = roa(dm[e]['利润总额'], dm[e]['计入财务费的利息支出'], dm[e]['资产总计'], dm[b]['资产总计'])
ele['总资产周转率'] = tat(dm[e]['营业收入'], dm[e]['资产总计'], dm[b]['资产总计'])
ele['应收账款周速度'] = acrt(dm[e]['营业收入'], dm[e]['应收账款'])
ele['存货周转率'] = ivtt(dm[e]['营业成本'], dm[e]['存货'], dm[b]['存货'])
ele['资产负债率'] = dbar(dm[e]['负债合计'], dm[e]['资产总计'])
ele['已获利息倍数'] = icm(dm[e]['利润总额'], dm[e]['计入财务费的利息支出'], dm[e]['资本化利息支出'], dm[e]['短期借款'], dm[e]['长期借款'])
ele['速动比率'] = qkr(dm[e]['流动资产合计'], dm[e]['存货'], dm[e]['流动负债合计'])
ele['营业增长率'] = bgr(dm[e]['营业收入'], dm[b]['营业收入'])
ele['总资产增长率'] = tagr(dm[e]['资产总计'], dm[b]['资产总计'])
ele['技术投入比率'] = tio(dm[e]['研发费用'], dm[e]['营业收入'])
return ele
def risk_elements(self):
"""
@ -52,8 +62,15 @@ class RatingModel:
self.business_elements()
self.risk_elements()
def req_rating(self):
"""
计算评级结果
"""
pass
if __name__ == '__main__':
import json
with open("../static/test_data/demo01.json", "r", encoding="utf-8") as f:
data = json.load(f)
RatingModel(data)

View File

@ -91,17 +91,26 @@ def dbar(param1, param2):
return value
def icm(param1, param2):
def icm(param1, param2, param3, param4, param5):
"""
ZH: 利息保障倍数
EN: Interest Cover Multiplier
Parameters:
param1 - float 息税前利润
param2 - float 利息支出
param1 - float 利润总额
param2 - float 计入财务费用的利息支出
param3 - float 资本化利息支出
param4 - float 短期借款
param5 - float 长期借款
Returns:
value - float 利息保障倍数
"""
value = round(param1 / param2, 2)
if (param2 + param3) == 0:
value = param1 / (param4 * 0.043 + param5 * 0.049)
value = round(value, 2)
return value
else:
value = (param1 + param2) / (param2 + param3)
value = round(value, 2)
return value
@ -124,12 +133,12 @@ def qkr(param1, param2, param3):
def bgr(param1, param2):
"""
ZH: 计算营业增长率
ZH: 营业增长率
EN: Business Growth Rate
Unit: %
Parameters:
param1 - float 营业收入当期
param2 - float 营业收入上期
param1 - float 期末营业收入
param2 - float 期初营业收入
Returns:
value - float 营业增长率
"""
@ -144,8 +153,8 @@ def tagr(param1, param2):
EN: Total Assets Growth Rate
Unit: %
Parameters:
param2 - float 资产总计当期
param3 - float 资产总计上期
param2 - float 期末资产总计
param3 - float 期初资产总计
Returns:
value - float 总资产增长率
"""
@ -163,7 +172,7 @@ def tio(param1, param2):
param1 - float 研发费用
param2 - float 营业收入
Returns:
value - type 技术投入
value - type 技术投入
"""
value = round(param1 / param2 * 100, 2)
return value

View File

@ -0,0 +1,62 @@
{
"行业": "制造业-电子工业",
"评价期间": {
"上期": "2020-12-31",
"当期": "2021-09-30"
},
"数据模板": {
"经营数据": {
},
"财务数据": {
"2020-12-31": {
"应收账款": 11293523722.88,
"存货": 13224640950.39,
"流动资产合计": 112864989321.68,
"资产总计": 156618426940.59,
"短期借款": 6335080182.17,
"长期借款": 6068163254.20,
"流动负债合计": 54977189803.22,
"负债合计": 87423710523.70,
"所有者权益合计": 69194716416.89,
"营业收入": 50319487697.20,
"营业成本": 36349153592.22,
"利润总额": 6982553409.24,
"净利润": 6103918052.46,
"研发费用": 3569377694.03,
"计入财务费的利息支出": 0,
"资本化利息支出": 0
},
"2021-09-30": {
"应收账款": 14340032235.16,
"存货": 34961665056.94,
"流动资产合计": 149294839099.23,
"资产总计": 249151796229.37,
"短期借款": 8648141083.60,
"长期借款": 17159358715.27,
"流动负债合计": 114496862624.12 ,
"负债合计": 168969358306.53,
"所有者权益合计": 80182437922.84,
"营业收入": 73361545522.20,
"营业成本": 53179031934.71,
"利润总额": 10873688199.30,
"净利润": 9144981503.45,
"研发费用": 4594923266.82,
"计入财务费的利息支出": 0,
"资本化利息支出": 0
}
},
"风险数据": {
"司法风险": {
},
"经营风险": {
},
"周边风险": {
}
}
}
}

View File