Valori di Input
Risultato
L'Altman Z-Score aiuta a valutare il rischio di credito di un'azienda. Un punteggio più alto indica un rischio inferiore di fallimento entro due anni.
Calcolatore del punteggio Z di Altman
Introduzione
Il punteggio Z di Altman è un modello finanziario sviluppato da Edward I. Altman nel 1968 per prevedere la probabilità che un'azienda vada in bancarotta entro due anni. Combina cinque rapporti finanziari chiave utilizzando una somma ponderata per valutare la salute finanziaria di un'azienda. Il punteggio Z è ampiamente utilizzato da investitori, creditori e analisti finanziari per valutare il rischio di credito.
Formula
Il punteggio Z di Altman viene calcolato utilizzando la seguente formula:
Dove:
Spiegazione delle Variabili
- Capitale Circolante (WC): Attività Correnti meno Passività Correnti. Indica la liquidità finanziaria a breve termine.
- Utili Non Distribuiti (RE): Profitti cumulativi reinvestiti nell'azienda. Riflette la redditività a lungo termine.
- EBIT: Utile prima degli interessi e delle tasse. Misura l'efficienza operativa.
- Valore di Mercato del Capitale (MVE): Numero di azioni in circolazione moltiplicato per il prezzo corrente delle azioni. Rappresenta la fiducia degli azionisti.
- Passività Totali (TL): Somma delle passività correnti e a lungo termine.
- Vendite: Ricavi totali da beni o servizi venduti.
- Attività Totali (TA): Somma delle attività correnti e non correnti.
Calcolo
Guida Passo-Passo
-
Calcolare i Rapporti Finanziari:
-
Applicare i Pesi a Ciascun Rapporto:
- Moltiplicare ciascun rapporto per il suo coefficiente corrispondente.
-
Somma dei Rapporti Ponderati:
Esempio Numerico
Supponiamo che un'azienda abbia i seguenti dati finanziari (in milioni di USD):
- Capitale Circolante (WC): $50 milioni
- Utili Non Distribuiti (RE): $200 milioni
- EBIT: $100 milioni
- Valore di Mercato del Capitale (MVE): $500 milioni
- Passività Totali (TL): $400 milioni
- Vendite: $600 milioni
- Attività Totali (TA): $800 milioni
Calcolo dei Rapporti:
Calcolo del Punteggio Z:
Interpretazione
- Z-Score > 2.99: Zona Sicura – Bassa probabilità di bancarotta.
- 1.81 < Z-Score < 2.99: Zona Grigia – Rischio incerto; cautela consigliata.
- Z-Score < 1.81: Zona di Distress – Alta probabilità di bancarotta.
Risultato: Un punteggio Z di 2.34 colloca l'azienda nella Zona Grigia, indicando una potenziale instabilità finanziaria.
Casi Limite e Limitazioni
- Valori Negativi: Valori negativi per l'utile netto, gli utili non distribuiti o il capitale circolante possono abbassare significativamente il punteggio Z.
- Applicabilità: Il modello originale è più adatto per aziende manifatturiere quotate in borsa.
- Differenze Settoriali: Aziende non manifatturiere, private e di mercati emergenti potrebbero richiedere modelli adattati (ad es. Z'-Score, Z''-Score).
- Condizioni Economiche: I fattori macroeconomici non sono considerati nel modello.
Casi d'Uso
Applicazioni
- Previsione di Bancarotta: Rilevamento precoce di difficoltà finanziarie.
- Analisi del Credito: Assistenza ai prestatori nella valutazione dei rischi di prestito.
- Decisioni di Investimento: Guida agli investitori verso aziende finanziariamente stabili.
- Strategia Aziendale: Aiuto alla direzione nella valutazione della salute finanziaria e nell'adozione di aggiustamenti strategici.
Alternative
Modelli Z'-Score e Z''-Score
- Z'-Score: Adattato per aziende manifatturiere private.
- Z''-Score: Ulteriormente adattato per aziende non manifatturiere e di mercati emergenti.
Altri Modelli
- Ohlson O-Score: Un modello di regressione logistica che prevede il rischio di bancarotta.
- Zmijewski Score: Un'alternativa basata su un modello probit focalizzato sul disagio finanziario.
Quando Utilizzare le Alternative:
- Per aziende al di fuori del settore manifatturiero.
- Quando si valutano aziende private o non quotate in borsa.
- In contesti economici o regioni geografiche diverse.
Storia
Edward Altman ha introdotto il modello Z-Score nel 1968 in un contesto di crescente bancarotta aziendale. Utilizzando l'analisi discriminante multipla (MDA), Altman ha analizzato 66 aziende per identificare i rapporti finanziari chiave predittivi di bancarotta. Il modello è stato successivamente affinato e rimane uno strumento fondamentale nella valutazione del rischio di credito.
Considerazioni Aggiuntive
Impatto della Manipolazione Finanziaria
- Le aziende possono impegnarsi in pratiche contabili che gonfiano temporaneamente i rapporti finanziari.
- È fondamentale considerare fattori qualitativi insieme ai punteggi quantitativi.
Integrazione con Altri Indicatori
- Combinare il punteggio Z con altre analisi (ad es. analisi dei flussi di cassa, tendenze di mercato).
- Utilizzare come parte di un processo di due diligence completo.
Esempi di Codice
Excel
' Funzione VBA di Excel per il calcolo del punteggio Z di 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
' Utilizzo in una cella:
' =AltmanZScore(A1, B1, C1, D1, E1, F1, G1)
' Dove A1 a G1 contengono i rispettivi valori di input
Python
## Calcolo del punteggio Z di Altman in 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
## Esempio di utilizzo:
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"Punteggio Z di Altman: {z:.2f}")
JavaScript
// Calcolo del punteggio Z di Altman in 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;
}
// Esempio di utilizzo:
const zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
console.log(`Punteggio Z di Altman: ${zScore.toFixed(2)}`);
Java
// Calcolo del punteggio Z di Altman in 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("Punteggio Z di Altman: %.2f%n", zScore);
}
}
R
## Calcolo del punteggio Z di Altman in 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)
}
## Esempio di utilizzo:
z_score <- calculate_z_score(50, 200, 100, 500, 400, 600, 800)
cat("Punteggio Z di Altman:", round(z_score, 2))
MATLAB
% Calcolo del punteggio Z di Altman in 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
% Esempio di utilizzo:
z_score = calculate_z_score(50, 200, 100, 500, 400, 600, 800);
fprintf('Punteggio Z di Altman: %.2f\n', z_score);
C++
// Calcolo del punteggio Z di Altman in 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 << "Punteggio Z di Altman: " << zScore << std::endl;
return 0;
}
C#
// Calcolo del punteggio Z di Altman in 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($"Punteggio Z di Altman: {zScore:F2}");
}
}
Go
// Calcolo del punteggio Z di Altman in 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("Punteggio Z di Altman: %.2f\n", zScore)
}
Swift
// Calcolo del punteggio Z di Altman in 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
}
// Esempio di utilizzo:
let zScore = calculateZScore(wc: 50, re: 200, ebit: 100, mve: 500, tl: 400, sales: 600, ta: 800)
print(String(format: "Punteggio Z di Altman: %.2f", zScore))
Riferimenti
- Altman, E. I. (1968). Financial Ratios, Discriminant Analysis and the Prediction of Corporate Bankruptcy. The Journal of Finance, 23(4), 589–609.
- Punteggio Z di Altman. Wikipedia. Recuperato da https://en.wikipedia.org/wiki/Altman_Z-score
- Investopedia - Punteggio Z di Altman. Recuperato da https://www.investopedia.com/terms/a/altman.asp