Werk
Kwantitatief modelleren voor beslissingen
Ik pas statistische en computationele methoden toe op praktische financiële vraagstukken.Tijdens een stage bij Corporate Finance van Fugro (zomer 2025) bouwde en evalueerde ik prognosesystemen voor planning en voor liquiditeit: modelkeuze, eerlijke validatie en de stap die van een prognose een beslissing maakt.

Financiële prognoses
Corporate Finance · Fugro
Klassiek + ML
Methode volgt het dataregime
Twee horizonnen
Langetermijnplanning en dagelijkse kaspositie
Beslissingen
Van model naar bruikbaar resultaat
Twee prognosevraagstukken
Corporate finance stelt op verschillende horizonnen verschillende prognosevragen. Planning wil weten hoe de omzet zich in de tijd ontwikkelt. Treasury wil weten hoe de kaspositie er op een bepaalde dag uitziet. Achter die twee vragen zit niet dezelfde data, en de modelkeuze volgt de data.
Lange horizon · Planning
Zes jaar maandelijkse historie
Achtenzeventig maandelijkse waarnemingen
- Maandtotalen, geen transacties.
- Sterke, terugkerende seizoensinvloed.
- Een voorlopende indicator die eerst beweegt.
- Weinig genoeg punten om te tellen.
Korte horizon · Liquiditeit
Tienduizenden facturen
Betalingsvertraging in dagen →
Eén markering per factuur
- Transacties, geen totalen.
- Betaalgedrag per tegenpartij.
- Categorische structuur met veel niveaus.
- Veel te veel punten om te tellen.
Zelfde bedrijf, zelfde stage, tegengestelde antwoorden.
Het dataregime bepaalde de methode.
01 · Planning
Planning op lange termijn
Omzetplanning op langere termijn draaide op een beperkte maandelijkse historie, sterke seizoensinvloeden en een handvol mogelijke externe verklarende variabelen. De vraag was nooit welk model de historie het best beschreef. De vraag was welk model geloofwaardig bleef zodra het een echte prognose moest zijn — gemaakt op een bepaald moment, met wat op dat moment bekend was.
Het interval wordt breder met de horizon. Een prognose twaalf maanden vooruit is niet hetzelfde object als een prognose één maand vooruit, en hem beoordelen alsof dat wel zo is, is waar de meeste eerlijkheid verloren gaat.
De randvoorwaarde die alles bepaalt
Een model met externe verklarende variabelen kun je niet evalueren alsof hun toekomstige waarden al bekend zijn. Als zo'n variabele op het beslismoment een invoer moet zijn, moet hij onder dezelfde informatiecondities worden voorspeld als datgene wat hij helpt voorspellen. Sla je dat over, dan meet de evaluatie een model dat nooit zal bestaan — een model met een kopie van het antwoord.
Consistent met gebruik
De variabele wordt eerst voorspeld en dan aan het model gegeven. Het resultaat is wat het model op de dag zelf zou hebben opgeleverd — het enige getal dat het rapporteren waard is.
Onrealistisch
De variabele houdt voorbij het prognosemoment zijn gerealiseerde waarden. Het model wordt beoordeeld op informatie die het niet kon hebben, en het scoort goed — precies waarom de fout een review overleeft.
Wat eruit kwam
Op deze taak bleek de eenvoudigere klassieke aanpak betrouwbaarder dan de afgestemde machine-learning-alternatieven. De les is niet dat de ene modelklasse beter is dan de andere. De les is dat schaarse seizoensdata met een echte voorlopende indicator een gedisciplineerd tijdreeksmodel beloont — en dat de rangorde pas zichtbaar werd toen de verklarende variabelen werden voorspeld in plaats van aangenomen.
02 · Liquiditeit
Liquiditeit op korte termijn
Kasprognoses op korte termijn zijn een andere vraag in vergelijkbare woorden. De relevante eenheid is geen maandtotaal maar één factuur, en wat voorspeld moet worden is geen niveau maar een datum: wanneer deze factuur daadwerkelijk wordt betaald, gegeven hoe deze tegenpartij zich eerder gedroeg.
Waarom het modelregime verschilt
Op factuurniveau zijn er ordes van grootte meer waarnemingen, en de structuur is evenzeer categorisch als temporeel — wie, onder welke voorwaarden, met welke geschiedenis. Dat is de setting waarin machine-learning-methoden hun complexiteit beginnen te verdienen, en op deze taak presteerden ze beter dan de operationele benchmark waarmee ze werden vergeleken.
Hoe voorspellingen beslissingen worden
Het model voorspelt wanneer één factuur wordt betaald. Niemand neemt een beslissing over één factuur. Per dag opgeteld worden dezelfde voorspellingen een netto kaspositie; gesorteerd op blootstelling en verwachte vertraging worden ze een lijst van wie je het eerst moet bellen. Het modelleren houdt op het interessante deel te zijn, precies waar die vertaling begint.
Verwachte betaling · één markering per factuur
Per dag opgeteld ↓
Dagelijkse instroom, uitstroom en netto kaspositie
Opvolging debiteuren · werklijst
- INV-0412Tegenpartij AVervalt12 mrtVerwacht09 aprVertraging+28 dBlootstelling€ 184.000PrioriteitHoog
- INV-0389Tegenpartij BVervalt05 mrtVerwacht24 mrtVertraging+19 dBlootstelling€ 96.500PrioriteitHoog
- INV-0437Tegenpartij CVervalt19 mrtVerwacht31 mrtVertraging+12 dBlootstelling€ 71.200PrioriteitMiddel
- INV-0451Tegenpartij DVervalt22 mrtVerwacht27 mrtVertraging+5 dBlootstelling€ 130.400PrioriteitMiddel
- INV-0468Tegenpartij EVervalt26 mrtVerwacht27 mrtVertraging+1 dBlootstelling€ 42.900PrioriteitLaag
Prioriteit is geen kolom die het model produceert. Het is blootstelling gewogen met verwachte vertraging — een regel die iemand moet kiezen, en het punt waarop een prognose een instructie wordt over wie je het eerst belt.
Hoe de modellen zijn beoordeeld
Een model is alleen bruikbaar als het wordt geëvalueerd onder de omstandigheden waarin het gebruikt gaat worden. Voor het planningsvraagstuk betekende dat evaluatie vooruit in de tijd: het model werd gefit op de historie tot een gekozen moment en alleen beoordeeld op de periode daarna, op de horizon waarvoor de prognose echt gemaakt zou worden. Voor het liquiditeitsvraagstuk betekende het beoordelen op facturen die buiten de training waren gehouden, en vergelijken met de betaalregel die al operationeel in gebruik was. Elk resultaat werd gerapporteerd tegenover een referentieaanpak. Een getal zonder iets ernaast is geen resultaat.
Rolling origin
Tijd →
- Fold 1
- Fold 2
- Fold 3
- Fold 4
Met één enkele train/test-splitsing kun je geluk hebben. Door het prognosemoment door de reeks te laten opschuiven en telkens over dezelfde horizon te beoordelen, ontstaat een reeks getallen die met elkaar en met een benchmark te vergelijken zijn — en een model dat maar op één moment wint, heeft niet gewonnen.
Wat ik eruit meenam
Validatie verandert welk model je kiest
Een sterke in-sample fit is geen bewijs. De rangorde van kandidaten verschuift zodra ze worden beoordeeld op ongeziene periodes, op de horizon waarvoor de prognose daadwerkelijk wordt gemaakt — en ze verschoof bij allebei deze vraagstukken.
Complexiteit heeft een prijs
Een flexibeler model is niet automatisch een beter model. Met zes jaar maanddata koopt extra capaciteit variantie in plaats van nauwkeurigheid, en het eenvoudigere model is het model dat volgend kwartaal nog steeds werkt.
Een analyse moet de vertaling overleven
Een technisch correct resultaat is niets waard totdat iemand ermee aan de slag kan: een invoer voor de planning, een dagelijkse kaspositie, een lijst van wie je het eerst belt. Die laatste stap is geen administratie. Het is waar het werk nuttig wordt.
Overig professioneel werk
Communicatie
Lezingen en workshops
Ik heb lezingen gegeven en sessies geleid voor bedrijven, evenementen en klimgroepen, en daarbij geleerd technische en ervaringsgerichte stof af te stemmen op verschillende publieken.

Bouwen
Ontworpen, gebouwd en geleverd
Klimborstel
Ik ontwierp een klimborstel vanaf de geometrie van het object, modelleerde hem in CAD, ontwikkelde het fysieke product en leverde de afgewerkte borstels rechtstreeks aan klimhallen.
Het project leerde me het verschil tussen een ontwerp dat er goed uitziet en een ontwerp dat gemaakt, gebruikt en geleverd moet worden.

Weergegeven: Afgewerkt
Ontwerp
Van tekening naar object


Op zoek naar de volledige achtergrond?
Bekijk het volledige cv, of neem contact op.
