Modelarea financiară DCF pentru antreprenori: multi-scenariu, Monte Carlo și stress test
Trecerea de la un tablou de cash flow determinist la modelarea financiară DCF antreprenori nu este o rafinare cosmetică, ci o schimbare de paradigmă epistemică: renunți la iluzia unei singure cifre „adevărate" și începi să lucrezi cu distribuții de rezultate. Dacă stăpânești deja construcția unui cash flow lunar și actualizarea avansată a fluxurilor, pasul următor este să tratezi fiecare input ca pe o variabilă aleatoare, nu ca pe o constantă. Aici intervin DCF cu structură probabilistică, valoarea actuală netă calcul corectă pe fluxuri post-impozit și analiza sensibilitate variabile critice care îți spune nu doar cât contează un input, ci care input pe care îl amplifică.
Lecția construiește un model complet pe cinci variabile critice — creșterea veniturilor, marja brută, ciclul de conversie a numerarului, capex-ul și costul capitalului — și îl supune la stress test cash flow prin scenario planning afacere și 10.000 de simulări Monte Carlo. Vom face sensitivity analysis Excel (tabel cu două intrări, tornado, spider), apoi vom urca la forecast revenues variabile externe corelate (curs EUR/RON, ROBOR, inflație) și la arbori decizionali care leagă deciziile de management de starea distribuției. Contextul este România anului 2026: cotă impozit profit 16%, microîntreprindere cu plafon redus la 100.000 EUR și cotă unică de 1%, TVA standard 21%, dividende impozitate 16%, dobânda de politică monetară BNR la 6,50%.
Obiectivul nu este un model „frumos", ci unul auditabil și decizional: fiecare ipoteză trasabilă, fiecare corelație justificată, fiecare output legat de o acțiune. Mergem direct în profunzime.
Arhitectura unui model DCF probabilistic pentru IMM
Un DCF determinist clasic produce o singură valoare actuală netă. Problema nu e formula, ci faptul că reducem o distribuție la media ei și pierdem toată informația despre coadă. Modelul probabilistic înlocuiește fiecare driver scalar cu o distribuție și propagă incertitudinea prin întreaga structură de free cash flow.
Pornim de la Free Cash Flow to Firm (FCFF), construit corect pe baze post-impozit:
- FCFF = EBIT × (1 − t) + Amortizare − Capex − ΔNWC, unde t = 16% (cota standard de impozit pe profit în România 2026).
- ΔNWC (variația capitalului de lucru) se derivă din ciclul de conversie a numerarului: DSO (zile încasare clienți) + DIO (zile stocuri) − DPO (zile plată furnizori). Pentru un IMM de servicii cu venituri de 6.000.000 lei/an, fiecare zi de DSO adăugată blochează ≈ 16.440 lei numerar (6.000.000 / 365).
- Valoarea terminală prin Gordon: VT = FCFF₍ₙ₊₁₎ / (WACC − g), cu g plafonat la creșterea nominală sustenabilă a economiei (în RO 2026, prudent g ≤ 4–5% nominal, sub inflația-țintă plus PIB potențial real).
VAN-ul (valoarea actuală netă calcul) însumează FCFF actualizate plus valoarea terminală actualizată, minus investiția inițială. Diferența-cheie față de nivelul avansat: în loc să rulezi o singură proiecție, rulezi N traiectorii, fiecare cu drivere extrase din distribuții, și obții o distribuție a VAN-ului.
WACC pentru un antreprenor român: calibrare 2026
Costul capitalului propriu prin CAPM: Ke = Rf + β × ERP + size premium + country/illiquidity premium. Pentru RO 2026, ancorele rezonabile:
- Rf ≈ randamentul titlurilor de stat RON pe 10 ani, în zona 7% (peste rata de politică monetară BNR de ~6,5%, reflectând prima de termen și risc suveran).
- ERP (equity risk premium) pentru o piață emergentă ca RO: 6–8%.
- Size + illiquidity premium pentru un IMM nelistat: încă 4–6% — un IMM nu se tranzacționează ca BVB, deci penalizezi lipsa de lichiditate.
Rezultă un Ke realist de 16–22% pentru capitaluri proprii. Costul datoriei Kd: dobânda bancară RON pentru IMM = ROBOR/IRCC + marjă; cu IRCC în zona 5,5–6% și marje de 3–5%, Kd brut ≈ 9–11%, iar Kd post-impozit = Kd × (1 − 0,16). Punctul de specialist: nu folosi un WACC fix. Structura de finanțare (D/E) se schimbă pe orizont, deci WACC devine el însuși o variabilă, iar în modelul probabilistic îl tratezi ca o distribuție centrată pe ~14–18%.
Cele cinci variabile critice și distribuțiile lor
Selecția celor cinci variabile nu e arbitrară: sunt driverele cu cea mai mare derivată parțială a VAN-ului. Pentru fiecare, alegem o distribuție potrivită formei reale a incertitudinii — nu totul e gaussian.
- 1. Creșterea veniturilor (g_rev) — distribuție triunghiulară sau lognormală asimetrică la dreapta. Ex.: min −5%, mod +12%, max +30%. Lognormala captează corect faptul că venitul nu poate fi negativ și are coadă dreaptă.
- 2. Marja brută (GM%) — distribuție Beta reparametrizată pe [40%, 60%], mod 52%. Beta e ideală fiindcă marja e mărginită în [0,1] și are formă flexibilă.
- 3. Ciclul de conversie a numerarului (CCC, zile) — Normal trunchiat, μ = 45 zile, σ = 12, trunchiat la ≥ 0. Impactul pe cash e direct prin ΔNWC.
- 4. Capex / Venituri — distribuție lognormală, mediană 4%, cu coadă pentru anii de investiție majoră.
- 5. WACC / Rf-shock — Normal, μ = 16%, σ = 2,5%, corelat cu ROBOR și inflația.
Calibrarea distribuțiilor se face din date proprii (istoric 24–36 luni) plus ancorare la benchmark sectorial. Eroarea clasică de începător-avansat: să tratezi cele cinci variabile ca independente. Nu sunt. O recesiune comprimă simultan g_rev și GM% și extinde CCC.
Matricea de corelație — inima modelului
Independența falsă subestimează masiv coada stângă a VAN-ului. Construiești o matrice de corelație ρ și impui dependența prin descompunere Cholesky pe variabilele normale standard, apoi le mapezi la distribuțiile-țintă prin transformata inversă (copula gaussiană).
- ρ(g_rev, GM%) ≈ +0,4 — volume mari aduc economii de scară.
- ρ(g_rev, CCC) ≈ +0,3 — creșterea rapidă lungește încasările (clienți noi plătesc mai lent).
- ρ(WACC, g_rev) ≈ −0,5 — dobânzi mari însoțesc adesea cerere slabă.
- ρ(WACC, ROBOR) ≈ +0,8 — aproape mecanic.
Pas algoritmic: (1) generezi vector Z ~ N(0, I) de dimensiune 5; (2) L = chol(ρ); (3) Y = L·Z are corelația ρ; (4) U = Φ(Y) sunt uniforme corelate; (5) aplici inversa CDF a fiecărei distribuții-țintă pe componentele lui U. Repeți de 10.000 de ori.
Monte Carlo: 10.000 de simulări pas cu pas
Structura buclei (pseudo-cod riguros, ușor de transpus în Excel cu Data Tables + RAND() sau în Python/numpy):
- Pas 1. Pentru iterația i = 1…10.000, extrage vectorul corelat (g_rev_i, GM_i, CCC_i, capex_i, WACC_i).
- Pas 2. Proiectează 5 ani de venituri: Rev_t = Rev_{t−1} × (1 + g_rev_i), cu g_rev posibil dezagregat pe variabile externe (vezi mai jos).
- Pas 3. EBIT_t = Rev_t × GM_i − OpEx_t; aplică t = 16%.
- Pas 4. ΔNWC_t = (CCC_i / 365) × (Rev_t − Rev_{t−1}); Capex_t = capex_i × Rev_t.
- Pas 5. FCFF_t și valoarea terminală; actualizează cu WACC_i; sumează VAN_i.
- Pas 6. Stochează VAN_i; după buclă, ai vectorul de 10.000 de VAN-uri.
Din distribuția rezultată extragi statisticile decizionale care contează cu adevărat:
- P(VAN < 0) — probabilitatea de distrugere de valoare. Dacă depășește ~20%, proiectul e fragil indiferent de media pozitivă.
- VaR și CVaR (Expected Shortfall) la 5% — pierderea medie în cei mai răi 5% dintre scenarii. CVaR e mai onest decât VaR fiindcă privește în coadă, nu doar la pragul ei.
- Percentilele P10 / P50 / P90 ale VAN-ului și ale soldului minim de trezorerie — soldul minim de cash de-a lungul celor 60 de luni e adesea mai important decât VAN-ul, fiindcă o firmă moare din lipsă de lichiditate, nu din VAN negativ.
Numărul de simulări și eroarea Monte Carlo
De ce 10.000 și nu 1.000? Eroarea standard a mediei estimate scade cu 1/√N. Pentru o probabilitate de ruină p ≈ 0,1, eroarea standard pe estimatul probabilității este √(p(1−p)/N). La N = 10.000 ≈ 0,003 (±0,3 puncte procentuale) — suficient de stabil. La N = 1.000 ≈ ±0,9 pp, prea zgomotos pentru decizii de capital. Pentru percentilele extreme (P1, P99) crește N la 50.000 sau folosește Latin Hypercube Sampling pentru a reduce varianța cu același buget de iterații.
Analiza de sensibilitate: tornado, spider, tabel cu două intrări
Înainte de Monte Carlo, analiza sensibilitate variabile critice îți spune unde să-ți concentrezi efortul de calibrare. Sensitivity analysis Excel pe trei niveluri:
- One-way (spider plot): variezi fiecare driver ±20% față de bază, ținând restul fix, și măsori VAN. Panta dreptei = sensibilitatea liniară locală.
- Tornado chart: ordonezi variabilele după amplitudinea Δ-VAN între scenariul pesimist și optimist al fiecăreia. Bara cea mai lată = variabila dominantă. Tipic pentru IMM: g_rev și GM% domină, WACC al treilea.
- Tabel cu două intrări (Data Table): în Excel, axa pe rânduri = g_rev (de la −5% la +30%, pas 5%), axa pe coloane = WACC (12% la 20%, pas 1%), celula de colț referențiază VAN. Obții o suprafață de izo-VAN — vezi exact combinațiile care basculează proiectul din pozitiv în negativ.
Punctul de finețe pe care îl ratează majoritatea: sensibilitatea locală (derivata în jurul bazei) diferă de sensibilitatea globală (care input explică cea mai mare parte din varianța output-ului pe tot spațiul). Pentru sensibilitate globală, calculezi indicii Sobol sau, mai simplu, coeficienții de regresie standardizați (beta-uri) ai unei regresii VAN ~ drivere pe cele 10.000 de simulări. Pătratul beta-ului standardizat ≈ ponderea din varianța VAN explicată de acel driver. Așa răspunzi cantitativ la întrebarea „care variabilă o afectează pe care": dacă regresezi VAN pe interacțiunile g_rev×GM, termenul de interacțiune îți spune amplificarea încrucișată.
Stress test și scenario planning structurat
Monte Carlo descrie incertitudinea „normală". Stress test cash flow descrie ruperile — scenarii de coadă plauzibile, nu probabiliste-medii. Construiești trei scenarii deterministe ancorate în realitatea macro RO 2026:
- Bază: g_rev +12%, GM 52%, CCC 45 zile, WACC 16%.
- Adverse (recesiune ușoară): g_rev −8%, GM 47% (presiune pe costuri din inflație ~5%), CCC 60 zile (clienții întârzie), WACC 18% (dobânzi sus). Verifici dacă soldul de trezorerie rămâne pozitiv în fiecare lună.
- Sever (șoc combinat): g_rev −20%, GM 43%, CCC 75 zile, capex înghețat, WACC 20%, plus un șoc de curs EUR/RON de +5% pe costurile importate. Aici testezi covenant-urile bancare și momentul exact al breșei de lichiditate.
Stress test-ul corect nu variază o singură variabilă — variază blocuri corelate simultan (reverse stress test: pornești de la „ce combinație face soldul minim de cash să atingă zero?" și lucrezi înapoi spre driverele necesare). Atenție la praguri reale 2026: dacă firma e microîntreprindere, depășirea plafonului de venituri (redus drastic față de anii anteriori, la 100.000 EUR — echivalentul a ≈509.850 lei la cursul istoric de referință din 31.12.2021, cu verificare la zi a actului normativ) basculează firma de la cota unică de impozit pe veniturile microîntreprinderii (1% în 2026, cota de 3% fiind eliminată) la impozit pe profit 16% — un efect de prag care îți schimbă brusc FCFF în scenariile de creștere puternică. Modelează explicit tranziția microîntreprindere → profit ca un nod de decizie/eveniment, nu ca o cotă constantă.
Forecast de venituri din variabile externe
Pentru forecast revenues variabile externe, dezagregă g_rev într-un model de drivere observabile: g_rev = f(cerere sectorială, curs EUR/RON, putere de cumpărare reală, dobândă). Exemplu de structură liniară calibrabilă:
- Rev = β₀ + β₁·PIB_real + β₂·(EUR/RON) + β₃·ROBOR + ε, estimat pe istoricul propriu plus serii BNR/INS.
- Avantajul: în Monte Carlo nu mai simulezi g_rev direct, ci simulezi factorii externi (care au serii istorice și corelații publice) și propagi prin β-uri spre venit. Mai puține ipoteze arbitrare, mai multă disciplină.
- Capcana: nu suprapotrivi. Cu R² ridicat pe 24 de puncte ai un model care prezice trecutul, nu viitorul. Regularizează și validează out-of-sample.
Arbori decizionali: legarea modelului de acțiune
Distribuția VAN e descriptivă; arborele decizional o face prescriptivă. Modelezi deciziile secvențiale ale antreprenorului ca noduri de decizie (pătrate) alternând cu noduri de hazard (cercuri), folosind chiar percentilele din Monte Carlo ca probabilități ramurale.
- Nod 1 (decizie): investești acum în capacitate (capex mare) sau aștepți un trimestru?
- Nod 2 (hazard): cererea se realizează Înaltă (P = 0,35, din percentila P65+ a g_rev), Medie (0,45), Joasă (0,20).
- Nod 3 (decizie): dacă cererea e Joasă, restructurezi costuri sau menții? Fiecare ramură are propriul sub-DCF.
Rezolvi prin roll-back: de la frunze spre rădăcină, la fiecare nod de hazard calculezi valoarea așteptată, la fiecare nod de decizie alegi maximul. Diferența esențială față de un VAN simplu: arborele captează valoarea opțiunii de a aștepta (real option). Flexibilitatea de a amâna capex-ul are valoare pozitivă tocmai pentru că reduce expunerea la coada stângă — exact ce ai măsurat cu CVaR. Pentru opțiuni reale propriu-zise (extindere, abandon, amânare), poți urca la evaluare binomială tip Cox-Ross-Rubinstein, dar pentru majoritatea IMM-urilor arborele decizional cu probabilități din Monte Carlo e suficient și mult mai transparent pentru bancă/investitor.
Validare, capcane și disciplină de model
Un model probabilistic prost calibrat e mai periculos decât o foaie deterministă, fiindcă acumulează autoritate falsă din complexitate. Verificările obligatorii de specialist:
- Reconciliere cu determinismul: media distribuției VAN trebuie să fie apropiată — dar nu identică — de VAN-ul scenariului de bază. Diferența (efectul Jensen, din convexitate/concavitate) e ea însăși informație: dacă media MC e mult sub VAN-ul bazei, modelul tău are asimetrii negative ascunse.
- Test de convergență: rulează modelul cu N = 1k, 5k, 10k, 50k și verifică stabilizarea P(VAN<0) și a CVaR. Dacă încă oscilează la 10k, ai cozi grele care cer mai multe iterații sau reducere de varianță.
- Senzitivitatea la corelații: variază ρ-urile ±0,2 și observă cât se mișcă coada. Dacă rezultatul e foarte sensibil la o corelație pe care ai ghicit-o, ai găsit cea mai importantă ipoteză de calibrat cu date reale.
- Garbage in: nicio cantitate de Monte Carlo nu salvează distribuții inventate. Distribuțiile vin din date, benchmark sau judecată expertă documentată — niciodată din „simțul" valorii.
Checklist de implementare pas cu pas
- 1. Construiește baza deterministă FCFF pe 5 ani cu t = 16%, WACC calibrat 14–18%, valoare terminală cu g ≤ 4–5% nominal.
- 2. Identifică cele 5 variabile critice prin tornado chart pe baza deterministă.
- 3. Atribuie distribuții fiecăreia (triunghiular/lognormal/Beta/normal trunchiat), calibrate din istoric 24–36 luni + benchmark sectorial.
- 4. Estimează matricea de corelație ρ și impune-o prin Cholesky + copulă gaussiană.
- 5. Rulează 10.000 de simulări; extrage P(VAN<0), CVaR 5%, P10/P50/P90 ale VAN și ale soldului minim de cash lunar.
- 6. Adaugă 3 scenarii de stress (Bază/Adverse/Sever) + un reverse stress test pe lichiditate; modelează explicit pragul micro → profit 16%.
- 7. Construiește arborele decizional cu probabilități din percentilele MC; rezolvă prin roll-back; cuantifică valoarea opțiunii de a aștepta.
- 8. Validează: reconciliere cu determinismul, test de convergență, senzitivitate la corelații.
- 9. Documentează fiecare ipoteză și sursă într-un registru de model — un model neauditabil nu e bun pentru bancă, investitor sau pentru tine peste 6 luni.
- 10. Recalibrează trimestrial cu realizările efective; compară distribuția prezisă cu rezultatul real (backtesting de calibrare).
Verifică întotdeauna cotele și plafoanele la zi (impozit profit 16%, TVA 21%, microîntreprindere cotă unică 1% cu plafon 100.000 EUR, dividende 16%, rata de politică monetară BNR 6,50% și IRCC/ROBOR curente) direct la sursă — ANAF, BNR, ASF — înainte de a fixa cifrele într-un model pe care îl prezinți unei bănci sau unui investitor. Un model probabilistic nu îți spune ce se va întâmpla; îți spune cât de mult nu știi și unde anume te doare cel mai tare — iar asta e exact informația care separă deciziile de capital ale unui specialist de pariurile unui amator.