Whiz Tools

Indata

Resultat

Altman Z-poängen hjälper till att bedöma ett företags kreditrisk. En högre poäng indikerar lägre risk för konkurs inom två år.

Altman Z-Score Kalkylator

Introduktion

Altman Z-Score är en finansiell modell utvecklad av Edward I. Altman 1968 för att förutsäga sannolikheten för att ett företag går i konkurs inom två år. Den kombinerar fem nyckelfinansiella kvoter med hjälp av en viktad summa för att bedöma företagets finansiella hälsa. Z-Score används i stor utsträckning av investerare, borgenärer och finansiella analytiker för att utvärdera kreditrisk.

Formel

Altman Z-Score beräknas med följande formel:

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

Där:

  • X1=Ro¨relsekapitalTotala tillga˚ngarX_1 = \frac{\text{Rörelsekapital}}{\text{Totala tillgångar}}
  • X2=Balanserade vinsterTotala tillga˚ngarX_2 = \frac{\text{Balanserade vinster}}{\text{Totala tillgångar}}
  • X3=Resultat fo¨re ra¨ntor och skatter (EBIT)Totala tillga˚ngarX_3 = \frac{\text{Resultat före räntor och skatter (EBIT)}}{\text{Totala tillgångar}}
  • X4=Marknadsva¨rde av eget kapitalTotala skulderX_4 = \frac{\text{Marknadsvärde av eget kapital}}{\text{Totala skulder}}
  • X5=Fo¨rsa¨ljningTotala tillga˚ngarX_5 = \frac{\text{Försäljning}}{\text{Totala tillgångar}}

Förklaring av variabler

  • Rörelsekapital (WC): Omsättningstillgångar minus kortfristiga skulder. Indikerar kortsiktig finansiell likviditet.
  • Balanserade vinster (RE): Ackumulerade vinster som återinvesterats i företaget. Återspeglar långsiktig lönsamhet.
  • EBIT: Resultat före räntor och skatter. Mäter drifts effektivitet.
  • Marknadsvärde av eget kapital (MVE): Antal utestående aktier multiplicerat med det aktuella aktiepriset. Representerar aktieägarnas förtroende.
  • Totala skulder (TL): Summan av kortfristiga och långfristiga skulder.
  • Försäljning: Totala intäkter från sålda varor eller tjänster.
  • Totala tillgångar (TA): Summan av kortfristiga och långfristiga tillgångar.

Beräkning

Steg-för-steg-guide

  1. Beräkna finansiella kvoter:

    • 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=Fo¨rsa¨ljningTAX_5 = \frac{\text{Försäljning}}{\text{TA}}
  2. Tillämpa vikter på varje kvot:

    • Multiplicera varje XX-kvot med dess motsvarande koefficient.
  3. Summera de viktade kvoterna:

    • 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

Numeriskt exempel

Anta att ett företag har följande finansiella data (i USD miljoner):

  • Rörelsekapital (WC): $50 miljoner
  • Balanserade vinster (RE): $200 miljoner
  • EBIT: $100 miljoner
  • Marknadsvärde av eget kapital (MVE): $500 miljoner
  • Totala skulder (TL): $400 miljoner
  • Försäljning: $600 miljoner
  • Totala tillgångar (TA): $800 miljoner

Beräkning av kvoter:

  • 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

Beräkning av 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*}

Tolkning

  • Z-Score > 2.99: Säker zon – Låg sannolikhet för konkurs.
  • 1.81 < Z-Score < 2.99: Grå zon – Osäker risk; försiktighet rekommenderas.
  • Z-Score < 1.81: Nödsituation – Hög sannolikhet för konkurs.

Resultat: En Z-Score på 2.34 placerar företaget i Grå zon, vilket indikerar potentiell finansiell instabilitet.

Gränsfall och begränsningar

  • Negativa värden: Negativa ingångar för nettoinkomst, balanserade vinster eller rörelsekapital kan sänka Z-Score avsevärt.
  • Tillämpbarhet: Den ursprungliga modellen är bäst lämpad för börsnoterade tillverkningsföretag.
  • Branschskillnader: Icke-tillverknings-, privata och framväxande marknadsföretag kan kräva justerade modeller (t.ex. Z'-Score, Z''-Score).
  • Ekonomiska förhållanden: Makroekonomiska faktorer beaktas inte i modellen.

Användningsfall

Tillämpningar

  • Konkursförutsägelse: Tidig upptäckte av finansiell kris.
  • Kreditanalys: Hjälpa långivare att utvärdera lånerisker.
  • Investeringsbeslut: Vägleda investerare mot finansiellt stabila företag.
  • Företagsstrategi: Hjälpa ledningen att bedöma finansiell hälsa och göra strategiska justeringar.

Alternativ

Z'-Score och Z''-Score-modeller
  • Z'-Score: Anpassad för privata tillverkningsföretag.
  • Z''-Score: Ytterligare justerad för icke-tillverknings- och framväxande marknadsföretag.
Andra modeller
  • Ohlson O-Score: En logistisk regressionsmodell som förutspår konkursrisk.
  • Zmijewski Score: Ett probitmodell-alternativ som fokuserar på finansiell kris.

När man ska använda alternativ:

  • För företag utanför tillverkningssektorn.
  • När man bedömer privata eller icke-börsnoterade företag.
  • I olika ekonomiska sammanhang eller geografiska regioner.

Historia

Edward Altman introducerade Z-Score-modellen 1968 mitt under ökande företagskonkurser. Genom att använda multipel diskriminantanalys (MDA) analyserade Altman 66 företag för att identifiera nyckelfinansiella kvoter som är förutsägbara för konkurs. Modellen har sedan dess förfinats och förblir ett grundläggande verktyg inom kreditriskbedömning.

Ytterligare överväganden

Påverkan av finansiell manipulation

  • Företag kan engagera sig i redovisningsmetoder som tillfälligt blåser upp finansiella kvoter.
  • Det är avgörande att överväga kvalitativa faktorer tillsammans med kvantitativa poäng.

Integration med andra mått

  • Kombinera Z-Score med andra analyser (t.ex. kassaflödesanalys, marknadstrender).
  • Använd som en del av en omfattande due diligence-process.

Kodexempel

Excel

' Excel VBA-funktion för beräkning av Altman Z-Score
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

' Användning i en cell:
' =AltmanZScore(A1, B1, C1, D1, E1, F1, G1)
' Där A1 till G1 innehåller respektive ingångsvärden

Python

## Altman Z-Score beräkning i 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

## Exempel på användning:
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 beräkning
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;
}

// Exempel på användning:
const zScore = calculateZScore(50, 200, 100, 500, 400, 600, 800);
console.log(`Altman Z-Score: ${zScore.toFixed(2)}`);

Java

// Java Altman Z-Score beräkning
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 beräkning
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)
}

## Exempel på användning:
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 beräkning
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

% Exempel på användning:
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 beräkning
#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 beräkning
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 beräkning
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 beräkning
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
}

// Exempel på användning:
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))

Referenser

  1. Altman, E. I. (1968). Finansiella kvoter, diskriminantanalys och förutsägelse av företagskonkurser. The Journal of Finance, 23(4), 589–609.
  2. Altman Z-Score. Wikipedia. Hämtad från https://en.wikipedia.org/wiki/Altman_Z-score
  3. Investopedia - Altman Z-Score. Hämtad från https://www.investopedia.com/terms/a/altman.asp
Loading related tools...
Feedback