FOR QUANTITATIVE ANALYSTS

Monte Carlo Simulation Engine

Market-linked stochastic simulation for private markets. How we model correlation, dynamic pacing, and realistic risk assessment.

The Core Innovation: Market-Linked Simulation

Why Traditional Monte Carlo Fails

Most private market Monte Carlo tools sample outcomes independently:

TVPI[i] ~ LogNormal(μ, σ)

IRR[i] ~ Normal(μ, σ)

// Each fund independent - WRONG

Problem: Private markets correlate with public markets. When S&P crashes, PE/VC funds don't stay independent. Capital calls slow, exits delay, marks compress.

Evidence: Korteweg & Sorensen (2010) show VC returns have β ≈ 1.4 vs public equity. Gompers et al. (2008) show investment drops 30-50% in bear markets.

Our Approach: 3-Layer Architecture

Layer 1 (Economic): Correlated market paths (equity + bonds linked)

Layer 2 (Accounting): NAV smoothing and reporting lag (private marks lag public)

Layer 3 (Liquidity): Cash buffer constraints (realistic capital deployment)

Layer 1: Correlated Market Path Generation

Cholesky Decomposition for Correlation

Correlation Matrix:

Σ = [ σ²_equity ρ·σ_equity·σ_bond ]

[ ρ·σ_equity·σ_bond σ²_bond ]

Where ρ ≈ -0.2 (equity-bond correlation)

Cholesky Factor L (such that Σ = LL^T):

L = [ 1 0 ]

[ ρ √(1-ρ²)]

Algorithm:

1. Draw independent standard normals: z₁, z₂ ~ N(0,1)

2. Apply Cholesky: [r_equity, r_bond]^T = L × [z₁, z₂]^T

3. Scale to monthly returns:

R_equity(t) = μ_equity/12 + (σ_equity/√12) × r_equity

R_bond(t) = μ_bond/12 + (σ_bond/√12) × r_bond

Default Parameters:

• Equity: μ = 8% annual, σ = 18% annual

• Bonds: μ = 4% annual, σ = 6% annual

• Correlation: ρ = -0.2 (negative, flight to safety)

Why this matters: Realistic correlation means downside scenarios show funds moving together (like 2008), not independently. Better risk assessment.

Layer 2: Dynamic Pacing Modulation

Market-Responsive Capital Calls and Exits

Observation:

GPs slow capital calls in bear markets, accelerate in bull markets. Exits follow same pattern (Axelson et al., 2009).

Model:

Capital Call(t) = Base Call(t) × (1 + β_call × R_equity(t))

Distribution(t) = Base Dist(t) × (1 + β_dist × R_equity(t))

β_call = 0.4 (calls slow 40% in -100% crash)

β_dist = 0.5 (exits slow 50% in -100% crash)

Example Scenarios:

Bull Market (+20% equity): Calls +8%, Exits +10%

Normal (0%): Base schedule (no adjustment)

Bear (-30% equity): Calls -12%, Exits -15%

Why this matters: In downturns, all funds call capital together AND distributions slow. Realistic liquidity planning accounts for this.

NEW: PRODUCTION READY (NOV 2025)

Industry-Calibrated Exit Modeling

4 Major Enhancements

1. Industry-Calibrated Exit Timing

Exit curves calibrated to Cambridge Associates and Preqin benchmarks (not arbitrary distributions).

PE Buyout: 5.8y median (4.9% error vs industry target)

Growth Equity: 6.2y median (1.9% error vs benchmark)

Early Venture: 7.7y median (industry-calibrated)

2. Realistic Cash Settlement Overlays

Models escrows, lockups, and trailing payments (not instant proceeds at exit).

Buyout exits: 95% at close, 5% over 18 months (escrows)

Growth IPOs: 90% at close, 10% over 24 months (lockups)

Venture exits: 85-90% at close, 10-15% trailing

3. Small-N Exit Realism (Lines Layer)

For small portfolios (<50 companies), models lumpy exits via correlated exit times (not smooth averaging).

12-company buyout: Top 2 exits = 58% of value ✓

Gaussian copula: ρ = 0.3 (realistic clustering)

Auto-enabled: Buyouts, Growth Equity, Venture <50 lines

4. Markov Regime Switching

Proper state propagation (π_t+1 = π_t × P) instead of expected multiplier. Exits cluster in bull markets, slow in bear markets.

Open regime: 1.6× hazard (bull market)

Shut regime: 0.4× hazard (bear market)

Persistence: p_OO=0.85, p_SS=0.75

Why This Matters:

  • CFO Trust: Cash timing 6-12 months more accurate than smooth Excel curves
  • LP Alignment: Exit lumpiness matches what LPs see in quarterly reports
  • Liquidity Planning: Settlement overlays show when cash actually arrives (not just deal close)
  • Risk Assessment: Markov regime switching captures 2008-style coordinated crashes

Validation & Accuracy

5-15%
Exit timing error vs industry benchmarks
0%
Cash settlement accounting error
4.9%
Exit timing error (PE Buyout vs 5.8y benchmark)
700+
Automated test cases (87 test files)

What We Test

1. Mean Matching

Sample mean converges to parameter mean (Law of Large Numbers). Error <0.05% over 10,000 iterations.

2. Variance Matching

Sample variance matches theoretical variance. Error <3% (within statistical bounds).

3. Correlation Preservation

Cholesky decomposition produces correct correlation. Measured ρ within ±0.05 of target.

4. Convergence Rate

Standard error decreases as σ/√N. Validates proper sampling.

5. Benchmark Comparison

Exit timing within 5-15% of Cambridge Associates/Preqin benchmarks (PE Buyout: 4.9% error vs 5.8y median). TVPI/IRR derived from calibrated timing and growth assumptions.

When to Use Monte Carlo

✓ Good Use Cases:

  • Risk assessment: "What's our P10 downside if markets crash?"
  • Tail risk: "How bad could it get in worst 10% of outcomes?"
  • Probability estimates: "What's probability we hit 2.5x TVPI?"
  • Stress testing: Model correlated downturn across portfolio

✗ Poor Use Cases:

  • Day-to-day planning: Use deterministic base case instead
  • IC presentations: P50 is just base case, show that directly
  • Every decision: MC is for risk assessment, not routine analysis

Bottom line: Use Monte Carlo when uncertainty really matters. For routine forecasting, deterministic is faster and clearer.

Questions About Monte Carlo Implementation?

Schedule a technical discussion with our team or explore the engine yourself.