Bỏ qua, tới nội dung

Ngân hàng

Z-score ngân hàng: công thức đo rủi ro vỡ nợ và ổn định

Ký hiệu
ZSCORE
Tiếng Anh
Bank Z-score
Áp dụng cho
Ngân hàng
Tài liệu (DOI)
4

Định nghĩa

Z-score đo số độ lệch chuẩn mà ROA phải giảm để vốn chủ sở hữu bị xoá hết, dựa trên khái niệm an toàn trước tiên của Roy (1952). Z-score càng cao, ngân hàng càng ổn định. Đây là biến phụ thuộc phổ biến nhất trong nghiên cứu rủi ro và ổn định ngân hàng (Laeven & Levine, 2009). Khác hoàn toàn với Z-score của Altman.

Công thức

ZSCORE = (ROA + Vốn chủ sở hữu/Tổng tài sản) / σ(ROA)

Chỉ tiêuBáo cáoMã số
Lợi nhuận sau thuếBáo cáo kết quả hoạt động kinh doanh của tổ chức tín dụng—
Tổng tài sảnBảng cân đối kế toán của tổ chức tín dụng—
Vốn chủ sở hữuBảng cân đối kế toán của tổ chức tín dụng—

Mã số theo mẫu báo cáo tài chính của Thông tư 200/2014/TT-BTC (doanh nghiệp). Báo cáo của tổ chức tín dụng theo Thông tư 49/2014/TT-NHNN không dùng chung hệ mã này, nên chỉ ghi tên chỉ tiêu. Dùng BCTC hợp nhất nếu doanh nghiệp có công ty con, và dùng thống nhất cho mọi năm.

Các biến thể thường gặp

Dấu kỳ vọng trong nghiên cứu trước

Quan hệ vớiDấuGhi chú
Tỷ lệ an toàn vốnCùng chiều (+)Nguyen (2021) cho ngân hàng Việt Nam.
Tăng trưởng tín dụngNgược chiều (−)Le (2020).

Dấu kỳ vọng là tóm tắt của nghiên cứu trước để viết giả thuyết; kết quả trên mẫu của bạn có thể khác.

Lỗi hay gặp

Chưa chắc nên ước lượng bằng Pooled OLS, FEM/REM hay GMM? Công cụ chọn phương pháp phân tích dữ liệu gợi ý theo cấu trúc dữ liệu và câu hỏi nghiên cứu. Cần biến vĩ mô làm biến kiểm soát (tăng trưởng GDP, lạm phát, lãi suất)? Lấy từ dữ liệu kinh tế vĩ mô Việt Nam qua các năm.Muốn xem trước số liệu thật trước khi tự thu thập, mở dữ liệu BCTC ngân hàng niêm yết 2015–2025 (bảng CSV có số trang của báo cáo gốc).

Code Stata và R

Tên biến theo file dữ liệu bảng xuất từ công cụ tính chỉ số tài chính (firm,year, ta, ni…). Biến trễ chỉ hợp lệ khi năm liền trước có số liệu.

Stata

* Dữ liệu bảng: một dòng một doanh nghiệp – năm
encode firm, gen(id)
xtset id year
gen roa = ni / ta
gen eqta = eq / ta
rangestat (sd) sd_roa = roa, interval(year -2 0) by(id)
rangestat (count) n_roa = roa, interval(year -2 0) by(id)
gen zscore = (roa + eqta) / sd_roa if n_roa == 3
gen ln_z = ln(zscore)

R

library(dplyr)
library(slider)
df <- df |>
  group_by(firm) |> arrange(year, .by_group = TRUE) |>
  mutate(roa = ni / ta, eqta = eq / ta,
         sd_roa = slide_index_dbl(roa, year, sd, .before = 2, .complete = TRUE),
         zscore = (roa + eqta) / sd_roa) |>
  ungroup()

Tài liệu tham khảo

DOI của từng tài liệu đã được đối chiếu với Crossref (api.crossref.org).

Biến liên quan