信用债风险模型初探之:Z-Score Model
最后更新于:2022-04-01 21:55:28
# 信用债风险模型初探之:Z-Score Model
> 来源:https://uqer.io/community/share/568b73d6228e5b67159bee69
## 0. 引言
2015年3月4日晚间,ST超日(上海超日太阳能科技股份有限公司)董事会发布公告称,“11超日债”本期利息将无法于原定付息日2014年3月7日按期全额支付。至此,“11超日债”正式成为国内首例违约债券。
## 1. 什么是 Zscore Model
简单的说,zscore model 是一种用于估计债券发行人违约风险的信用风险模型。
## 2. 本文提供的 Zscore Model
下面我们首先从原理,模型公式,划分区间三个方面来简单介绍一下本模块中的两个 Z-score 模型;
然后我们从如何获取数据,清洗数据;如何计算债券发行人 Z-score 值;如何作图来操练这个模型;
### 2.1 All Corporate Bonds
模型原理
+ 不需要发行人上市交易数据
+ 离散分析方法
模型公式
```
ZScore = 0.517 - 0.460*x1 + 9.320*2/x2 + 0.388*x3 + 1.158*x4
x1: 负债合计/资产总计
x2: 净利润/0.5*(资产总计 + 资产总计[上期])
x3: 营运资本/资产总计
x4: 未分配利润/资产总计
coef=[0.517, -0.460, 18.640, 0.388, 1.158]
```
划分区间
+ `Z-score < 0.5`: 已经违约
+ `0.5 < Z-score < 0.9`: 有违约的可能性
+ `Z-score > 0.9`: 财务健康,短期内不会出现违约情况
### 2.2 Corporate Bonds with Equity Listings
模型原理
+ 需要发行人上市交易数据
+ 离散分析方法
模型公式
```
ZScore = 0.2086*x1 + 4.3465*x2 + 4.9601*x3
x1: 总市值/负债合计
x2: 营业总收入/资产总计
x3: (资产总计-资产总计[上期])/资产总计[上期]
coef = [0.2086, 4.3465, 4.9601]
```
划分区间
+ `Z-score < 1.5408`: 已经违约
+ `Z-score > 1.5408`: 财务健康,短期内不会出现违约情况
## 3. 未来
Z-Score 是一个比较基础,通用的模型,本文只是对其原理和实现的一个简单探索,要想真正 build 一个足够 robust 的模型还需要做很多工作。不过 uqer 提供了完善的财务数据,行情数据以及 100 多个相关因子,相信会给大家建立模型上节省不少时间。
```py
# built-in package
import time
import json
import random
import datetime as dt
# third-party package
import numpy as np
import pandas as pd
pd.options.display.max_columns = 100
pd.options.display.max_rows = 100
from matplotlib.pyplot import *
import seaborn
';