مقادیر ورودی
نتیجه
امتیاز Z آلتمن به ارزیابی ریسک اعتباری یک شرکت کمک میکند. امتیاز بالاتر نشاندهنده ریسک کمتر ورشکستگی در عرض دو سال است.
محاسبه نمره Z آلتمان
مقدمه
نمره Z آلتمان یک مدل مالی است که توسط ادوارد I. آلتمان در سال 1968 برای پیشبینی احتمال ورشکستگی یک شرکت در عرض دو سال توسعه یافته است. این مدل پنج نسبت مالی کلیدی را با استفاده از یک مجموع وزنی ترکیب میکند تا سلامت مالی یک شرکت را ارزیابی کند. نمره Z به طور گستردهای توسط سرمایهگذاران، اعتباردهندگان و تحلیلگران مالی برای ارزیابی ریسک اعتباری استفاده میشود.
فرمول
نمره Z آلتمان با استفاده از فرمول زیر محاسبه میشود:
که در آن:
توضیح متغیرها
- سرمایه در گردش (WC): داراییهای جاری منهای بدهیهای جاری. نشاندهنده نقدینگی مالی کوتاهمدت است.
- سود انباشته (RE): سودهای انباشته که در شرکت سرمایهگذاری شدهاند. نشاندهنده سودآوری بلندمدت است.
- EBIT: سود قبل از بهره و مالیات. کارایی عملیاتی را اندازهگیری میکند.
- ارزش بازار سهام (MVE): تعداد سهام در گردش ضربدر قیمت کنونی سهم. نمایانگر اعتماد سهامداران است.
- کل بدهیها (TL): مجموع بدهیهای جاری و بلندمدت.
- فروش: کل درآمد حاصل از کالاها یا خدمات فروخته شده.
- کل داراییها (TA): مجموع داراییهای جاری و غیرجاری.
محاسبه
راهنمای گام به گام
-
محاسبه نسبتهای مالی:
-
اعمال وزنها به هر نسبت:
- هر نسبت را در ضریب مربوطه ضرب کنید.
-
جمع نسبتهای وزنی:
مثال عددی
فرض کنید یک شرکت دادههای مالی زیر را دارد (به میلیون دلار):
- سرمایه در گردش (WC): 50 میلیون دلار
- سود انباشته (RE): 200 میلیون دلار
- EBIT: 100 میلیون دلار
- ارزش بازار سهام (MVE): 500 میلیون دلار
- کل بدهیها (TL): 400 میلیون دلار
- فروش: 600 میلیون دلار
- کل داراییها (TA): 800 میلیون دلار
محاسبه نسبتها:
محاسبه نمره Z:
تفسیر
- نمره Z > 2.99: منطقه امن – احتمال ورشکستگی کم.
- 1.81 < نمره Z < 2.99: منطقه خاکستری – ریسک نامشخص؛ احتیاط توصیه میشود.
- نمره Z < 1.81: منطقه بحران – احتمال ورشکستگی بالا.
نتیجه: نمره Z برابر با 2.34 شرکت را در منطقه خاکستری قرار میدهد که نشاندهنده احتمال عدم ثبات مالی است.
موارد حاشیهای و محدودیتها
- مقادیر منفی: ورودیهای منفی برای درآمد خالص، سود انباشته یا سرمایه در گردش میتوانند به طور قابل توجهی نمره Z را کاهش دهند.
- قابلیت اعمال: مدل اصلی بهترین تناسب را برای شرکتهای تولیدی عمومی دارد.
- تفاوتهای صنعتی: شرکتهای غیر تولیدی، خصوصی و بازارهای نوظهور ممکن است به مدلهای تعدیل شده (مانند Z'-Score، Z''-Score) نیاز داشته باشند.
- شرایط اقتصادی: عوامل کلان اقتصادی در مدل در نظر گرفته نمیشوند.
موارد استفاده
کاربردها
- پیشبینی ورشکستگی: شناسایی زودهنگام مشکلات مالی.
- تحلیل اعتبار: کمک به اعتباردهندگان در ارزیابی ریسکهای وام.
- تصمیمات سرمایهگذاری: راهنمایی سرمایهگذاران به سمت شرکتهای مالی پایدار.
- استراتژی شرکتی: کمک به مدیریت برای ارزیابی سلامت مالی و انجام تنظیمات استراتژیک.
جایگزینها
مدلهای Z'-Score و Z''-Score
- Z'-Score: برای شرکتهای تولیدی خصوصی تعدیل شده است.
- Z''-Score: برای شرکتهای غیر تولیدی و بازارهای نوظهور بیشتر تعدیل شده است.
مدلهای دیگر
- نمره Ohlson O: یک مدل رگرسیون لجستیک برای پیشبینی ریسک ورشکستگی.
- نمره Zmijewski: یک مدل پروبیت جایگزین که بر روی مشکلات مالی تمرکز دارد.
زمان استفاده از جایگزینها:
- برای شرکتهای خارج از بخش تولید.
- هنگام ارزیابی شرکتهای خصوصی یا غیر عمومی.
- در زمینههای اقتصادی یا مناطق جغرافیایی مختلف.
تاریخچه
ادوارد آلتمان مدل نمره Z را در سال 1968 در میان افزایش ورشکستگیهای شرکتی معرفی کرد. با استفاده از تحلیل تفکیکی چندگانه (MDA)، آلتمان 66 شرکت را تحلیل کرد تا نسبتهای مالی کلیدی پیشبینیکننده ورشکستگی را شناسایی کند. این مدل از آن زمان به روز شده و همچنان ابزاری اساسی در ارزیابی ریسک اعتباری باقی مانده است.
ملاحظات اضافی
تأثیر دستکاری مالی
- شرکتها ممکن است در شیوههای حسابداری که به طور موقت نسبتهای مالی را افزایش میدهد، دخالت کنند.
- ضروری است که عوامل کیفی را در کنار نمرات کمی در نظر بگیرید.
ادغام با سایر معیارها
- نمره Z را با سایر تحلیلها (مانند تحلیل جریان نقدی، روندهای بازار) ترکیب کنید.
- به عنوان بخشی از یک فرآیند جامع بررسی دقیق استفاده کنید.
مثالهای کد
اکسل
' تابع VBA اکسل برای محاسبه نمره Z آلتمان
Function AltmanZScore(wc As Double, re As Double, ebit As Double, mve As Double, tl As Double, sales As Double, ta As Double) As Double
Dim X1 As Double, X2 As Double, X3 As Double, X4 As Double, X5 As Double
X1 = wc / ta
X2 = re / ta
X3 = ebit / ta
X4 = mve / tl
X5 = sales / ta
AltmanZScore = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
End Function
' استفاده در یک سلول:
' =AltmanZScore(A1, B1, C1, D1, E1, F1, G1)
' که در آن A1 تا G1 شامل مقادیر ورودی مربوطه هستند
پایتون
## محاسبه نمره Z آلتمان در پایتون
def calculate_z_score(wc, re, ebit, mve, tl, sales, ta):
X1 = wc / ta
X2 = re / ta
X3 = ebit / ta
X4 = mve / tl
X5 = sales / ta
z_score = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
return z_score
## مثال استفاده:
wc = 50
re = 200
ebit = 100
mve = 500
tl = 400
sales = 600
ta = 800
z = calculate_z_score(wc, re, ebit, mve, tl, sales, ta)
print(f"نمره Z آلتمان: {z:.2f}")
جاوااسکریپت
// محاسبه نمره Z آلتمان در جاوااسکریپت
function calculateZScore(wc, re, ebit, mve, tl, sales, ta) {
const X1 = wc / ta;
const X2 = re / ta;
const X3 = ebit / ta;
const X4 = mve / tl;
const X5 = sales / ta;
const zScore = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
return zScore;
}
// مثال استفاده:
const zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
console.log(`نمره Z آلتمان: ${zScore.toFixed(2)}`);
جاوا
// محاسبه نمره Z آلتمان در جاوا
public class AltmanZScore {
public static double calculateZScore(double wc, double re, double ebit, double mve, double tl, double sales, double ta) {
double X1 = wc / ta;
double X2 = re / ta;
double X3 = ebit / ta;
double X4 = mve / tl;
double X5 = sales / ta;
return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
}
public static void main(String[] args) {
double zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
System.out.printf("نمره Z آلتمان: %.2f%n", zScore);
}
}
R
## محاسبه نمره Z آلتمان در R
calculate_z_score <- function(wc, re, ebit, mve, tl, sales, ta) {
X1 <- wc / ta
X2 <- re / ta
X3 <- ebit / ta
X4 <- mve / tl
X5 <- sales / ta
z_score <- 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
return(z_score)
}
## مثال استفاده:
z_score <- calculate_z_score(50, 200, 100, 500, 400, 600, 800)
cat("نمره Z آلتمان:", round(z_score, 2))
متلب
% محاسبه نمره Z آلتمان در متلب
function z_score = calculate_z_score(wc, re, ebit, mve, tl, sales, ta)
X1 = wc / ta;
X2 = re / ta;
X3 = ebit / ta;
X4 = mve / tl;
X5 = sales / ta;
z_score = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
end
% مثال استفاده:
z_score = calculate_z_score(50, 200, 100, 500, 400, 600, 800);
fprintf('نمره Z آلتمان: %.2f\n', z_score);
C++
// محاسبه نمره Z آلتمان در C++
#include <iostream>
double calculateZScore(double wc, double re, double ebit, double mve, double tl, double sales, double ta) {
double X1 = wc / ta;
double X2 = re / ta;
double X3 = ebit / ta;
double X4 = mve / tl;
double X5 = sales / ta;
return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
}
int main() {
double zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
std::cout << "نمره Z آلتمان: " << zScore << std::endl;
return 0;
}
C#
// محاسبه نمره Z آلتمان در C#
using System;
class Program
{
static double CalculateZScore(double wc, double re, double ebit, double mve, double tl, double sales, double ta)
{
double X1 = wc / ta;
double X2 = re / ta;
double X3 = ebit / ta;
double X4 = mve / tl;
double X5 = sales / ta;
return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
}
static void Main()
{
double zScore = CalculateZScore(50, 200, 100, 500, 400, 600, 800);
Console.WriteLine($"نمره Z آلتمان: {zScore:F2}");
}
}
Go
// محاسبه نمره Z آلتمان در Go
package main
import (
"fmt"
)
func calculateZScore(wc, re, ebit, mve, tl, sales, ta float64) float64 {
X1 := wc / ta
X2 := re / ta
X3 := ebit / ta
X4 := mve / tl
X5 := sales / ta
return 1.2*X1 + 1.4*X2 + 3.3*X3 + 0.6*X4 + X5
}
func main() {
zScore := calculateZScore(50, 200, 100, 500, 400, 600, 800)
fmt.Printf("نمره Z آلتمان: %.2f\n", zScore)
}
سوئیفت
// محاسبه نمره Z آلتمان در سوئیفت
func calculateZScore(wc: Double, re: Double, ebit: Double, mve: Double, tl: Double, sales: Double, ta: Double) -> Double {
let X1 = wc / ta
let X2 = re / ta
let X3 = ebit / ta
let X4 = mve / tl
let X5 = sales / ta
return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
}
// مثال استفاده:
let zScore = calculateZScore(wc: 50, re: 200, ebit: 100, mve: 500, tl: 400, sales: 600, ta: 800)
print(String(format: "نمره Z آلتمان: %.2f", zScore))
منابع
- آلتمان، E. I. (1968). نسبتهای مالی، تحلیل تفکیکی و پیشبینی ورشکستگی شرکتی. مجله مالی، 23(4)، 589–609.
- نمره Z آلتمان. ویکیپدیا. بازیابی شده از https://en.wikipedia.org/wiki/Altman_Z-score
- Investopedia - نمره Z آلتمان. بازیابی شده از https://www.investopedia.com/terms/a/altman.asp