Valors d'entrada
Resultat
La puntuació Z d'Altman ajuda a avaluar el risc de crèdit d'una empresa. Una puntuació més alta indica un menor risc de fallida en dos anys.
Calculadora de Z-Score d'Altman
Introducció
El Z-Score d'Altman és un model financer desenvolupat per Edward I. Altman el 1968 per predir la probabilitat que una empresa es declari en bancarrota en un termini de dos anys. Combina cinc ràtios financeres clau mitjançant una suma ponderada per avaluar la salut financera d'una empresa. El Z-Score és àmpliament utilitzat per inversors, creditors i analistes financers per avaluar el risc de crèdit.
Fórmula
El Z-Score d'Altman es calcula mitjançant la següent fórmula:
On:
Explicació de les variables
- Capital de treball (WC): Actius corrents menys passius corrents. Indica la liquiditat financera a curt termini.
- Beneficis retinguts (RE): Beneficis acumulats reinvertits a l'empresa. Reflecteix la rendibilitat a llarg termini.
- EBIT: Beneficis abans d'interessos i impostos. Mesura l'eficiència operativa.
- Valor de mercat del patrimoni (MVE): Nombre d'accions en circulació multiplicat pel preu actual de l'acció. Representa la confiança dels accionistes.
- Passius totals (TL): Suma de passius corrents i a llarg termini.
- Vendes: Ingressos totals dels béns o serveis venuts.
- Actius totals (TA): Suma d'actius corrents i no corrents.
Càlcul
Guia pas a pas
-
Calcular les ràtios financeres:
-
Aplicar pesos a cada ràtio:
- Multiplicar cada ràtio pel seu coeficient corresponent.
-
Sumar les ràtios ponderades:
Exemple numèric
Suposem que una empresa té les següents dades financeres (en milions de USD):
- Capital de treball (WC): $50 milions
- Beneficis retinguts (RE): $200 milions
- EBIT: $100 milions
- Valor de mercat del patrimoni (MVE): $500 milions
- Passius totals (TL): $400 milions
- Vendes: $600 milions
- Actius totals (TA): $800 milions
Calculant les ràtios:
Calculant el Z-Score:
Interpretació
- Z-Score > 2.99: Zona segura – Baixa probabilitat de bancarrota.
- 1.81 < Z-Score < 2.99: Zona gris – Risc incert; es recomana precaució.
- Z-Score < 1.81: Zona de distress – Alta probabilitat de bancarrota.
Resultat: Un Z-Score de 2.34 situa l'empresa a la Zona gris, indicant una possible inestabilitat financera.
Casos límit i limitacions
- Valors negatius: Entrades negatives per ingressos nets, beneficis retinguts o capital de treball poden reduir significativament el Z-Score.
- Aplicabilitat: El model original és més adequat per a empreses manufactureres cotitzades en borsa.
- Diferències sectorials: Empreses no manufactureres, privades i de mercats emergents poden requerir models ajustats (per exemple, Z'-Score, Z''-Score).
- Condicions econòmiques: Els factors macroeconòmics no es consideren en el model.
Casos d'ús
Aplicacions
- Predicció de bancarrota: Detecció precoç de distress financer.
- Anàlisi de crèdit: Ajuda als prestadors a avaluar els riscos de préstec.
- Decisions d'inversió: Orienta els inversors cap a empreses financeraament estables.
- Estratègia corporativa: Ajuda a la direcció a avaluar la salut financera i fer ajustos estratègics.
Alternatives
Models Z'-Score i Z''-Score
- Z'-Score: Adaptat per a empreses manufactureres privades.
- Z''-Score: Ajustat per a empreses no manufactureres i de mercats emergents.
Altres models
- Ohlson O-Score: Un model de regressió logística que prediu el risc de bancarrota.
- Zmijewski Score: Una alternativa de model probit centrada en el distress financer.
Quan utilitzar alternatives:
- Per a empreses fora del sector manufacturer.
- Quan s'avaluen empreses privades o no cotitzades.
- En diferents contextos econòmics o regions geogràfiques.
Història
Edward Altman va introduir el model Z-Score el 1968 en un moment d'augment de les bancarotes corporatives. Utilitzant l'anàlisi discriminant múltiple (MDA), Altman va analitzar 66 empreses per identificar ràtios financeres clau que prediuen la bancarrota. El model s'ha refinat des de llavors i continua sent una eina fonamental en l'avaluació del risc de crèdit.
Consideracions addicionals
Impacte de la manipulació financera
- Les empreses poden participar en pràctiques comptables que inflen temporalment les ràtios financeres.
- És crucial considerar factors qualitatius juntament amb puntuacions quantitatives.
Integració amb altres mètriques
- Combinar el Z-Score amb altres anàlisis (per exemple, anàlisi de fluxos de caixa, tendències de mercat).
- Utilitzar com a part d'un procés de diligència deguda integral.
Exemples de codi
Excel
' Funció VBA d'Excel per al càlcul del Z-Score d'Altman
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
' Ús en una cel·la:
' =AltmanZScore(A1, B1, C1, D1, E1, F1, G1)
' On A1 a G1 contenen els respectius valors d'entrada
Python
## Càlcul del Z-Score d'Altman en Python
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
## Ús d'exemple:
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-Score d'Altman: {z:.2f}")
JavaScript
// Càlcul del Z-Score d'Altman en JavaScript
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;
}
// Ús d'exemple:
const zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
console.log(`Z-Score d'Altman: ${zScore.toFixed(2)}`);
Java
// Càlcul del Z-Score d'Altman en Java
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-Score d'Altman: %.2f%n", zScore);
}
}
R
## Càlcul del Z-Score d'Altman en 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)
}
## Ús d'exemple:
z_score <- calculate_z_score(50, 200, 100, 500, 400, 600, 800)
cat("Z-Score d'Altman:", round(z_score, 2))
MATLAB
% Càlcul del Z-Score d'Altman en MATLAB
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
% Ús d'exemple:
z_score = calculate_z_score(50, 200, 100, 500, 400, 600, 800);
fprintf('Z-Score d\'Altman: %.2f\n', z_score);
C++
// Càlcul del Z-Score d'Altman en 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-Score d'Altman: " << zScore << std::endl;
return 0;
}
C#
// Càlcul del Z-Score d'Altman en 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-Score d'Altman: {zScore:F2}");
}
}
Go
// Càlcul del Z-Score d'Altman en 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-Score d'Altman: %.2f\n", zScore)
}
Swift
// Càlcul del Z-Score d'Altman en Swift
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
}
// Ús d'exemple:
let zScore = calculateZScore(wc: 50, re: 200, ebit: 100, mve: 500, tl: 400, sales: 600, ta: 800)
print(String(format: "Z-Score d'Altman: %.2f", zScore))
Referències
- Altman, E. I. (1968). Ràtios financers, anàlisi discriminant i la predicció de la bancarrota corporativa. The Journal of Finance, 23(4), 589–609.
- Z-Score d'Altman. Wikipedia. Recuperat de https://en.wikipedia.org/wiki/Altman_Z-score
- Investopedia - Z-Score d'Altman. Recuperat de https://www.investopedia.com/terms/a/altman.asp