Z-score¶
Introduction¶
A measure of bank insolvency risk, defined as:
where \(\text{ROA}\) is the bank’s ROA, \(\text{CAR}\) is the bank’s capital ratio, and \(\sigma_{\text{ROA}}\) is the standard deviation of bank ROA.
The rationale behind Z-score is simple. A bank is insolvent when its loss \(-\pi\) exceeds equity \(E\), i.e., \(-\pi>E\). The probability of insolvency is \(P(-\pi>E)\).
If bank assets is \(A\), then \(P(-\pi>E)=P(-\frac{\pi}{A}>\frac{E}{A})=P(-ROA>CAR)\).
Assuming profits are normally distributed, then scaling \((\text{ROA}+\text{CAR})\) by \(\sigma_{\text{ROA}}\) yields an estimate of the distance to insolvency.
A higher Z-score implies that larger shocks to profitability are required to cause the losses to exceed bank equity.
References¶
Laeven and Levine (2009), Bank governance, regulation and risk taking, Journal of Financial Economics, 93, 2, 259-275.
Houston, Lin, Lin and Ma (2010), Creditor rights, information sharing, and bank risk taking, Journal of Financial Economics, 96, 3, 485-512.
Beck, De Jonghe, and Schepens (2013), Bank competition and stability: cross-country heterogeneity, Journal of Financial Intermediation, 22, 2, 218-244.
Delis, Hasan, and Tsionas (2014), The risk of financial intermediaries, Journal of Banking & Finance, 44, 1-12.
Fang, Hasan, and Marton (2014), Institutional development and bank stability: Evidence from transition countries, Journal of Banking & Finance, 39, 160-176.
API¶
- frds.measures.z_score(roa: float, capital_ratio: float, past_roas: ndarray) float [source]¶
-
- Parameters:
roa (float) – the current bank ROA.
capital_ratio (float) – the current bank equity to asset ratio.
past_roas (np.ndarray) –
(n_periods,)
array of past bank ROAs used to calculate the standard deviation.
- Returns:
The bank’s Z-score
- Return type:
float
Examples¶
>>> from frds.measures import z_score
>>> import numpy as np
>>> roas = np.array([0.1,0.2,0.15,0.18,0.2])
>>> z_score.estimate(roa=0.2, capital_ratio=0.5, past_roas=roas)
18.549962900111296