🛠️

Whiz Tools

Build • Create • Innovate

Calculadora de Z-Score de Altman para Evaluar Riesgo

Esta calculadora de Z-score de Altman te ayuda a evaluar el riesgo crediticio de una empresa calculando el Z-Score de Altman.

Puntuación Z de Altman

Valores de Entrada

Resultado

La Puntuación Z de Altman ayuda a evaluar el riesgo crediticio de una empresa. Una puntuación más alta indica un menor riesgo de quiebra en dos años.

📚

Documentación

Calculadora del Z-Score de Altman

Introducción

El Z-Score de Altman es un modelo financiero desarrollado por Edward I. Altman en 1968 para predecir la probabilidad de que una empresa quiebre en un plazo de dos años. Combina cinco ratios financieros clave utilizando una suma ponderada para evaluar la salud financiera de una empresa. El Z-Score es ampliamente utilizado por inversores, acreedores y analistas financieros para evaluar el riesgo crediticio.

Fórmula

El Z-Score de Altman se calcula utilizando la siguiente fórmula:

Z=1.2X1+1.4X2+3.3X3+0.6X4+1.0X5Z = 1.2X_1 + 1.4X_2 + 3.3X_3 + 0.6X_4 + 1.0X_5

Donde:

  • X1=Capital de TrabajoTotal de ActivosX_1 = \frac{\text{Capital de Trabajo}}{\text{Total de Activos}}
  • X2=Utilidades RetenidasTotal de ActivosX_2 = \frac{\text{Utilidades Retenidas}}{\text{Total de Activos}}
  • X3=Ganancias Antes de Intereses e Impuestos (EBIT)Total de ActivosX_3 = \frac{\text{Ganancias Antes de Intereses e Impuestos (EBIT)}}{\text{Total de Activos}}
  • X4=Valor de Mercado del PatrimonioTotal de PasivosX_4 = \frac{\text{Valor de Mercado del Patrimonio}}{\text{Total de Pasivos}}
  • X5=VentasTotal de ActivosX_5 = \frac{\text{Ventas}}{\text{Total de Activos}}

Explicación de Variables

  • Capital de Trabajo (WC): Activos Corrientes menos Pasivos Corrientes. Indica la liquidez financiera a corto plazo.
  • Utilidades Retenidas (RE): Beneficios acumulados reinvertidos en la empresa. Refleja la rentabilidad a largo plazo.
  • EBIT: Ganancias antes de intereses e impuestos. Mide la eficiencia operativa.
  • Valor de Mercado del Patrimonio (MVE): Número de acciones en circulación multiplicado por el precio actual de la acción. Representa la confianza de los accionistas.
  • Total de Pasivos (TL): Suma de pasivos corrientes y a largo plazo.
  • Ventas: Ingresos totales por bienes o servicios vendidos.
  • Total de Activos (TA): Suma de activos corrientes y no corrientes.

Cálculo

Guía Paso a Paso

  1. Calcular Ratios Financieros:

    • X1=WCTAX_1 = \frac{\text{WC}}{\text{TA}}
    • X2=RETAX_2 = \frac{\text{RE}}{\text{TA}}
    • X3=EBITTAX_3 = \frac{\text{EBIT}}{\text{TA}}
    • X4=MVETLX_4 = \frac{\text{MVE}}{\text{TL}}
    • X5=VentasTAX_5 = \frac{\text{Ventas}}{\text{TA}}
  2. Aplicar Pesos a Cada Ratio:

    • Multiplicar cada ratio XX por su coeficiente correspondiente.
  3. Sumar los Ratios Ponderados:

    • Z=1.2X1+1.4X2+3.3X3+0.6X4+1.0X5Z = 1.2X_1 + 1.4X_2 + 3.3X_3 + 0.6X_4 + 1.0X_5

Ejemplo Numérico

Supongamos que una empresa tiene los siguientes datos financieros (en millones de USD):

  • Capital de Trabajo (WC): $50 millones
  • Utilidades Retenidas (RE): $200 millones
  • EBIT: $100 millones
  • Valor de Mercado del Patrimonio (MVE): $500 millones
  • Total de Pasivos (TL): $400 millones
  • Ventas: $600 millones
  • Total de Activos (TA): $800 millones

Calculando los Ratios:

  • X1=50800=0.0625X_1 = \frac{50}{800} = 0.0625
  • X2=200800=0.25X_2 = \frac{200}{800} = 0.25
  • X3=100800=0.125X_3 = \frac{100}{800} = 0.125
  • X4=500400=1.25X_4 = \frac{500}{400} = 1.25
  • X5=600800=0.75X_5 = \frac{600}{800} = 0.75

Calculando el Z-Score:

Z=1.2(0.0625)+1.4(0.25)+3.3(0.125)+0.6(1.25)+1.0(0.75)=0.075+0.35+0.4125+0.75+0.75=2.3375\begin{align*} Z &= 1.2(0.0625) + 1.4(0.25) + 3.3(0.125) + 0.6(1.25) + 1.0(0.75) \\ &= 0.075 + 0.35 + 0.4125 + 0.75 + 0.75 \\ &= 2.3375 \end{align*}

Interpretación

  • Z-Score > 2.99: Zona Segura – Baja probabilidad de quiebra.
  • 1.81 < Z-Score < 2.99: Zona Gris – Riesgo incierto; se aconseja precaución.
  • Z-Score < 1.81: Zona de Distress – Alta probabilidad de quiebra.

Resultado: Un Z-Score de 2.34 coloca a la empresa en la Zona Gris, indicando una posible inestabilidad financiera.

Casos Límite y Limitaciones

  • Valores Negativos: Entradas negativas para ingresos netos, utilidades retenidas o capital de trabajo pueden reducir significativamente el Z-Score.
  • Aplicabilidad: El modelo original es más adecuado para empresas manufactureras que cotizan en bolsa.
  • Diferencias Industriales: Empresas no manufactureras, privadas y de mercados emergentes pueden requerir modelos ajustados (por ejemplo, Z'-Score, Z''-Score).
  • Condiciones Económicas: Los factores macroeconómicos no se consideran en el modelo.

Casos de Uso

Aplicaciones

  • Predicción de Quiebras: Detección temprana de distress financiero.
  • Análisis Crediticio: Asistir a los prestamistas en la evaluación de riesgos de préstamos.
  • Decisiones de Inversión: Guiar a los inversores hacia empresas financieramente estables.
  • Estrategia Corporativa: Ayudar a la dirección a evaluar la salud financiera y hacer ajustes estratégicos.

Alternativas

Modelos Z'-Score y Z''-Score
  • Z'-Score: Adaptado para empresas manufactureras privadas.
  • Z''-Score: Ajustado aún más para empresas no manufactureras y de mercados emergentes.
Otros Modelos
  • Ohlson O-Score: Un modelo de regresión logística que predice el riesgo de quiebra.
  • Zmijewski Score: Una alternativa de modelo probit centrada en el distress financiero.

Cuándo Usar Alternativas:

  • Para empresas fuera del sector manufacturero.
  • Al evaluar empresas privadas o no cotizadas.
  • En diferentes contextos económicos o regiones geográficas.

Historia

Edward Altman introdujo el modelo Z-Score en 1968 en medio de un aumento de quiebras corporativas. Utilizando análisis discriminante múltiple (MDA), Altman analizó 66 empresas para identificar los ratios financieros clave predictivos de quiebras. El modelo ha sido refinado desde entonces y sigue siendo una herramienta fundamental en la evaluación del riesgo crediticio.

Consideraciones Adicionales

Impacto de la Manipulación Financiera

  • Las empresas pueden participar en prácticas contables que inflan temporalmente los ratios financieros.
  • Es crucial considerar factores cualitativos junto con los puntajes cuantitativos.

Integración con Otras Métricas

  • Combinar el Z-Score con otros análisis (por ejemplo, análisis de flujo de caja, tendencias del mercado).
  • Usar como parte de un proceso de debida diligencia integral.

Ejemplos de Código

Excel

1' Función VBA de Excel para el Cálculo del Z-Score de Altman
2Function AltmanZScore(wc As Double, re As Double, ebit As Double, mve As Double, tl As Double, sales As Double, ta As Double) As Double
3    Dim X1 As Double, X2 As Double, X3 As Double, X4 As Double, X5 As Double
4    
5    X1 = wc / ta
6    X2 = re / ta
7    X3 = ebit / ta
8    X4 = mve / tl
9    X5 = sales / ta
10    
11    AltmanZScore = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
12End Function
13
14' Uso en una celda:
15' =AltmanZScore(A1, B1, C1, D1, E1, F1, G1)
16' Donde A1 a G1 contienen los valores de entrada respectivos
17

Python

1## Cálculo del Z-Score de Altman en Python
2def calculate_z_score(wc, re, ebit, mve, tl, sales, ta):
3    X1 = wc / ta
4    X2 = re / ta
5    X3 = ebit / ta
6    X4 = mve / tl
7    X5 = sales / ta
8    z_score = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
9    return z_score
10
11## Ejemplo de uso:
12wc = 50
13re = 200
14ebit = 100
15mve = 500
16tl = 400
17sales = 600
18ta = 800
19
20z = calculate_z_score(wc, re, ebit, mve, tl, sales, ta)
21print(f"Z-Score de Altman: {z:.2f}")
22

JavaScript

1// Cálculo del Z-Score de Altman en JavaScript
2function calculateZScore(wc, re, ebit, mve, tl, sales, ta) {
3  const X1 = wc / ta;
4  const X2 = re / ta;
5  const X3 = ebit / ta;
6  const X4 = mve / tl;
7  const X5 = sales / ta;
8  const zScore = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
9  return zScore;
10}
11
12// Ejemplo de uso:
13const zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
14console.log(`Z-Score de Altman: ${zScore.toFixed(2)}`);
15

Java

1// Cálculo del Z-Score de Altman en Java
2public class AltmanZScore {
3    public static double calculateZScore(double wc, double re, double ebit, double mve, double tl, double sales, double ta) {
4        double X1 = wc / ta;
5        double X2 = re / ta;
6        double X3 = ebit / ta;
7        double X4 = mve / tl;
8        double X5 = sales / ta;
9        return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
10    }
11
12    public static void main(String[] args) {
13        double zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
14        System.out.printf("Z-Score de Altman: %.2f%n", zScore);
15    }
16}
17

R

1## Cálculo del Z-Score de Altman en R
2calculate_z_score <- function(wc, re, ebit, mve, tl, sales, ta) {
3  X1 <- wc / ta
4  X2 <- re / ta
5  X3 <- ebit / ta
6  X4 <- mve / tl
7  X5 <- sales / ta
8  z_score <- 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
9  return(z_score)
10}
11
12## Ejemplo de uso:
13z_score <- calculate_z_score(50, 200, 100, 500, 400, 600, 800)
14cat("Z-Score de Altman:", round(z_score, 2))
15

MATLAB

1% Cálculo del Z-Score de Altman en MATLAB
2function z_score = calculate_z_score(wc, re, ebit, mve, tl, sales, ta)
3    X1 = wc / ta;
4    X2 = re / ta;
5    X3 = ebit / ta;
6    X4 = mve / tl;
7    X5 = sales / ta;
8    z_score = 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
9end
10
11% Ejemplo de uso:
12z_score = calculate_z_score(50, 200, 100, 500, 400, 600, 800);
13fprintf('Z-Score de Altman: %.2f\n', z_score);
14

C++

1// Cálculo del Z-Score de Altman en C++
2#include <iostream>
3
4double calculateZScore(double wc, double re, double ebit, double mve, double tl, double sales, double ta) {
5    double X1 = wc / ta;
6    double X2 = re / ta;
7    double X3 = ebit / ta;
8    double X4 = mve / tl;
9    double X5 = sales / ta;
10    return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
11}
12
13int main() {
14    double zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
15    std::cout << "Z-Score de Altman: " << zScore << std::endl;
16    return 0;
17}
18

C#

1// C# Cálculo del Z-Score de Altman
2using System;
3
4class Program
5{
6    static double CalculateZScore(double wc, double re, double ebit, double mve, double tl, double sales, double ta)
7    {
8        double X1 = wc / ta;
9        double X2 = re / ta;
10        double X3 = ebit / ta;
11        double X4 = mve / tl;
12        double X5 = sales / ta;
13        return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5;
14    }
15
16    static void Main()
17    {
18        double zScore = CalculateZScore(50, 200, 100, 500, 400, 600, 800);
19        Console.WriteLine($"Z-Score de Altman: {zScore:F2}");
20    }
21}
22

Go

1// Cálculo del Z-Score de Altman en Go
2package main
3
4import (
5    "fmt"
6)
7
8func calculateZScore(wc, re, ebit, mve, tl, sales, ta float64) float64 {
9    X1 := wc / ta
10    X2 := re / ta
11    X3 := ebit / ta
12    X4 := mve / tl
13    X5 := sales / ta
14    return 1.2*X1 + 1.4*X2 + 3.3*X3 + 0.6*X4 + X5
15}
16
17func main() {
18    zScore := calculateZScore(50, 200, 100, 500, 400, 600, 800)
19    fmt.Printf("Z-Score de Altman: %.2f\n", zScore)
20}
21

Swift

1// Cálculo del Z-Score de Altman en Swift
2func calculateZScore(wc: Double, re: Double, ebit: Double, mve: Double, tl: Double, sales: Double, ta: Double) -> Double {
3    let X1 = wc / ta
4    let X2 = re / ta
5    let X3 = ebit / ta
6    let X4 = mve / tl
7    let X5 = sales / ta
8    return 1.2 * X1 + 1.4 * X2 + 3.3 * X3 + 0.6 * X4 + X5
9}
10
11// Ejemplo de uso:
12let zScore = calculateZScore(wc: 50, re: 200, ebit: 100, mve: 500, tl: 400, sales: 600, ta: 800)
13print(String(format: "Z-Score de Altman: %.2f", zScore))
14

Referencias

  1. Altman, E. I. (1968). Ratios Financieros, Análisis Discriminante y la Predicción de Quiebras Corporativas. The Journal of Finance, 23(4), 589–609.
  2. Z-Score de Altman. Wikipedia. Recuperado de https://es.wikipedia.org/wiki/Z-score_de_Altman
  3. Investopedia - Z-Score de Altman. Recuperado de https://www.investopedia.com/terms/a/altman.asp