Įvesties vertės
Rezultatas
Altman Z-Score padeda įvertinti įmonės kredito riziką. Aukštesnis balas rodo mažesnę bankroto riziką per dvejus metus.
Altman Z-Score Skaičiuoklė
Įvadas
Altman Z-Score yra finansinis modelis, kurį 1968 m. sukūrė Edwardas I. Altmanas, siekiant prognozuoti, kiek tikėtina, kad įmonė bankrutuos per dvejus metus. Jis sujungia penkis pagrindinius finansinius rodiklius, naudodamas svorinį sumavimą, kad įvertintų įmonės finansinę būklę. Z-Score plačiai naudojamas investuotojų, kreditorių ir finansinių analitikų, siekiant įvertinti kredito riziką.
Formulė
Altman Z-Score skaičiuojamas naudojant šią formulę:
Kur:
Kintamųjų paaiškinimas
- Darbo kapitalas (DK): Dabartiniai aktyvai minus dabartinės skolos. Nurodo trumpalaikį finansinį likvidumą.
- Sulaikytos pajamos (SP): Sukauptos pelno dalys, reinvestuotos į įmonę. Atspindi ilgalaikį pelningumą.
- EBIT: Pajamos prieš palūkanas ir mokesčius. Matuoja veiklos efektyvumą.
- Akcijų rinkos vertė (ARV): Išleistų akcijų skaičius, padaugintas iš dabartinės akcijų kainos. Atspindi akcininkų pasitikėjimą.
- Bendrosios skolos (BS): Dabartinių ir ilgalaikių skolų suma.
- Pardavimai: Bendros pajamos iš prekių ar paslaugų pardavimo.
- Visos turto vertės (VT): Dabartinių ir ilgalaikių aktyvų suma.
Skaičiavimas
Žingsnis po žingsnio vadovas
-
Apskaičiuokite finansinius rodiklius:
-
Taikykite svorius kiekvienam rodikliui:
- Kiekvieną rodiklį padauginkite iš atitinkamo koeficiento.
-
Suskaičiuokite svorinius rodiklius:
Skaičiavimo pavyzdys
Tarkime, kad įmonė turi šiuos finansinius duomenis (milijonais USD):
- Darbo kapitalas (DK): 50 milijonų
- Sulaikytos pajamos (SP): 200 milijonų
- EBIT: 100 milijonų
- Akcijų rinkos vertė (ARV): 500 milijonų
- Bendrosios skolos (BS): 400 milijonų
- Pardavimai: 600 milijonų
- Visos turto vertės (VT): 800 milijonų
Rodiklių skaičiavimas:
Z-Score skaičiavimas:
Interpretacija
- Z-Score > 2.99: Saugus regionas – Maža bankroto tikimybė.
- 1.81 < Z-Score < 2.99: Pilkas regionas – Neaiški rizika; rekomenduojama atsargiai.
- Z-Score < 1.81: Streso zona – Didelė bankroto tikimybė.
Rezultatas: Z-Score 2.34 patalpina įmonę į Pilką zoną, nurodant galimą finansinį nestabilumą.
Kraštutiniai atvejai ir apribojimai
- Neigiamos vertės: Neigiami įnašai dėl grynųjų pajamų, sulaikytų pajamų ar darbo kapitalo gali žymiai sumažinti Z-Score.
- Taikymas: Pirminis modelis geriausiai tinka viešai prekiaujančioms gamybos įmonėms.
- Pramonės skirtumai: Ne gamybos, privačioms ir besivystančių rinkų įmonėms gali prireikti pritaikytų modelių (pvz., Z'-Score, Z''-Score).
- Ekonominės sąlygos: Makroekonominiai veiksniai modelyje nėra atsižvelgiama.
Naudojimo atvejai
Taikymas
- Bankroto prognozavimas: Ankstyvas finansinės krizės nustatymas.
- Kredito analizė: Padeda skolintojams vertinti paskolos riziką.
- Investavimo sprendimai: Padeda investuotojams pasirinkti finansiškai stabilias įmones.
- Įmonių strategija: Padeda valdymui įvertinti finansinę būklę ir atlikti strateginius pakeitimus.
Alternatyvos
Z'-Score ir Z''-Score modeliai
- Z'-Score: Pritaikytas privačioms gamybos įmonėms.
- Z''-Score: Dar labiau pritaikytas ne gamybos ir besivystančių rinkų įmonėms.
Kiti modeliai
- Ohlson O-Score: Logistinė regresijos modelis, prognozuojantis bankroto riziką.
- Zmijewski Score: Alternatyvus probit modelis, orientuotas į finansinę krizę.
Kada naudoti alternatyvas:
- Įmonėms, nesusijusioms su gamyba.
- Vertinant privačias ar ne viešai prekiaujančias įmones.
- Skirtingose ekonominėse kontekstuose ar geografiniuose regionuose.
Istorija
Edwardas Altmanas pristatė Z-Score modelį 1968 m. didėjant įmonių bankrotams. Naudodamas daugybės diskriminantų analizę (MDA), Altmanas analizavo 66 įmones, kad nustatytų pagrindinius finansinius rodiklius, prognozuojančius bankrotą. Modelis nuo to laiko buvo tobulinamas ir išlieka pagrindiniu įrankiu kredito rizikos vertinime.
Papildomos svarstyklės
Finansinės manipuliacijos poveikis
- Įmonės gali užsiimti apskaitos praktikomis, kurios laikinai išpūsto finansinius rodiklius.
- Svarbu atsižvelgti į kokybinius veiksnius kartu su kiekybiniais rezultatais.
Integracija su kitais rodikliais
- Derinkite Z-Score su kitais analizės metodais (pvz., pinigų srautų analize, rinkos tendencijomis).
- Naudokite kaip dalį išsamaus patikrinimo proceso.
Kodo pavyzdžiai
Excel
' Excel VBA funkcija Altman Z-Score skaičiavimui
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
' Naudojimas ląstelėje:
' =AltmanZScore(A1, B1, C1, D1, E1, F1, G1)
' Kur A1 iki G1 turi atitinkamas įvesties vertes
Python
## Altman Z-Score skaičiavimas Python kalba
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
## Pavyzdžio naudojimas:
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"Altman Z-Score: {z:.2f}")
JavaScript
// JavaScript Altman Z-Score skaičiavimas
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;
}
// Pavyzdžio naudojimas:
const zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
console.log(`Altman Z-Score: ${zScore.toFixed(2)}`);
Java
// Java Altman Z-Score skaičiavimas
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("Altman Z-Score: %.2f%n", zScore);
}
}
R
## R Altman Z-Score skaičiavimas
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)
}
## Pavyzdžio naudojimas:
z_score <- calculate_z_score(50, 200, 100, 500, 400, 600, 800)
cat("Altman Z-Score:", round(z_score, 2))
MATLAB
% MATLAB Altman Z-Score skaičiavimas
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
% Pavyzdžio naudojimas:
z_score = calculate_z_score(50, 200, 100, 500, 400, 600, 800);
fprintf('Altman Z-Score: %.2f\n', z_score);
C++
// C++ Altman Z-Score skaičiavimas
#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 << "Altman Z-Score: " << zScore << std::endl;
return 0;
}
C#
// C# Altman Z-Score skaičiavimas
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($"Altman Z-Score: {zScore:F2}");
}
}
Go
// Go Altman Z-Score skaičiavimas
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("Altman Z-Score: %.2f\n", zScore)
}
Swift
// Swift Altman Z-Score skaičiavimas
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
}
// Pavyzdžio naudojimas:
let zScore = calculateZScore(wc: 50, re: 200, ebit: 100, mve: 500, tl: 400, sales: 600, ta: 800)
print(String(format: "Altman Z-Score: %.2f", zScore))
Nuorodos
- Altman, E. I. (1968). Finansiniai rodikliai, diskriminantų analizė ir įmonių bankroto prognozavimas. Finansų žurnalas, 23(4), 589–609.
- Altman Z-Score. Vikipedija. Gauta iš https://en.wikipedia.org/wiki/Altman_Z-score
- Investopedia - Altman Z-Score. Gauta iš https://www.investopedia.com/terms/a/altman.asp