Zum Hauptinhalt springen
Zurück zum Lexikon

Monte-Carlo-Simulation in der Unternehmensbewertung

Definition

Die Monte-Carlo-Simulation bewertet Unternehmen durch tausende zufällige Szenarien für unsichere Eingangsgrößen. Statt eines Punktwerts liefert sie eine Wahrscheinlichkeitsverteilung des Unternehmenswerts.

Was ist Monte-Carlo-Simulation?

Ein klassisches DCF-Modell produziert einen einzigen Wert — z. B. „SAP ist 185 € je Aktie wert". Aber wie sicher ist diese Zahl? Monte Carlo ersetzt den Punktwert durch eine Verteilung: „Mit 80 % Wahrscheinlichkeit liegt der faire Wert zwischen 155 € und 215 €."

Der Name geht auf das Spielcasino in Monaco zurück — beide nutzen Zufallszahlen, um Wahrscheinlichkeiten zu simulieren.

Funktionsweise

Schritt 1 — Unsichere Variablen identifizieren:

  • Umsatzwachstum (normalverteilt: μ = 8 %, σ = 3 %)
  • EBIT-Marge (triangular: min 12 %, wahrscheinlich 16 %, max 20 %)
  • WACC (normalverteilt: μ = 9 %, σ = 0,5 %)
  • Ewige Wachstumsrate (uniform: 1,5–3 %)

Schritt 2 — Simulation laufen lassen: 10.000–100.000 Iterationen: In jeder Runde wird für jede Variable ein Zufallswert aus der definierten Verteilung gezogen, das DCF-Modell berechnet und ein Unternehmenswert ermittelt.

Schritt 3 — Verteilung analysieren: Die 10.000 Ergebnisse ergeben eine Wahrscheinlichkeitsverteilung des Unternehmenswerts.

Ergebnisinterpretation

Aus der Simulation für ein Beispielunternehmen:

PerzentilUnternehmenswert
10. (pessimistisch)3,2 Mrd. €
25.4,1 Mrd. €
50. (Median)5,0 Mrd. €
75.6,2 Mrd. €
90. (optimistisch)7,8 Mrd. €

Value at Risk-Analogie: Mit 90 % Wahrscheinlichkeit liegt der Wert über 3,2 Mrd. € — das ist die "Wertuntergrenze" mit 90 % Konfidenz.

Korrelationen einbauen

Realistisch sind Variablen korreliert: Hohes Umsatzwachstum geht oft mit höheren Margen einher (Skaleneffekte). Monte Carlo erlaubt, Korrelationsmatrizen zu definieren — ohne diese Schritt liefert die Simulation unrealistische Kombinationen.

Praktische Implementierung

In Python (numpy/scipy):

import numpy as np

n = 10000
growth = np.random.normal(0.08, 0.03, n)
margin = np.random.triangular(0.12, 0.16, 0.20, n)
wacc = np.random.normal(0.09, 0.005, n)

# DCF-Formel anwenden
fcf = revenue_base * growth * margin
tv = fcf[-1] * (1 + 0.02) / (wacc - 0.02)
ev = sum(fcf / (1+wacc)**t for t in range(1, 6)) + tv / (1+wacc)**5

print(np.percentile(ev, [10, 25, 50, 75, 90]))

Vorteile gegenüber Szenarioanalyse

Szenarioanalyse betrachtet 3–5 diskrete Szenarien. Monte Carlo erkundet den gesamten Parameterraum und gibt echte Wahrscheinlichkeiten — nicht nur "Base Case, Bull, Bear". Besonders wertvoll bei stark nicht-linearen Payoff-Profilen.

Disclaimer: Dieser Artikel dient ausschließlich der Information und stellt keine Anlageberatung dar. Gemäß §34 WpHG wird darauf hingewiesen, dass der Autor Positionen in den besprochenen Wertpapieren halten kann.

Monte Carlo SimulationUnternehmensbewertungDCFRisikoanalyseWahrscheinlichkeitsverteilungWACCSzenarioanalyse