2 mei 2026 · 5 min lezen
Post #1Het moment dat mijn handelssysteem een mening kreeg
Van ontwerp op papier naar een gerangschikte lijst van 462 aandelen. Twee dagen werk, drie perspectieven, geen regel code van mijn hand.
Een week geleden bestond mijn handelssysteem alleen op papier. Een ontwerp document met factor groepen, exit triggers en theoretische gewichten. Niets dat naar live aandelen keek, niets dat een uitspraak deed.
Vandaag, twee dagen werk later, kan ik het systeem letterlijk vragen: welke aandelen zou je vandaag kopen? En het antwoord komt terug, niet als gevoel of vermoeden, maar als een gerangschikte lijst van 462 aandelen met een score per stuk.
Dit is hoe dat ging.
Wat is dit eigenlijk
Even kort wat context. Ik bouw playitsmart.nl, een geautomatiseerd handelssysteem dat eind juni live gaat met 10.000 euro van mijn eigen geld. Het kiest aandelen op basis van vier factoren: hoe sterk zijn de fundamenten (kwaliteit), hoeveel betaal je ervoor (waarde), hoe is de koersontwikkeling (momentum), en zijn er recente positieve gebeurtenissen zoals goede earnings of buybacks (catalyst). Geen mens beslist. Het systeem rangschikt, het systeem signaleert.
Wat het de afgelopen twee dagen doet, is leren rangschikken. En dat is het leukste deel van het bouwen.
Wie schrijft de code
Belangrijk om vooraf te zeggen: ik typ zelf geen regel code. Niet uit principe, maar omdat ik het experiment ben aangegaan om te zien hoe ver je kunt komen met AI als bouwer.
Hoe het werkt: ik ontwerp wat er moet komen. Claude (mijn AI sparringpartner, in dit project genaamd Harry de hulp) helpt nadenken, schrijft prompts en reviewt. Cursor, een AI coding tool, schrijft de daadwerkelijke code. Daarna review ik het resultaat en testen we samen of het klopt. Drie perspectieven op elke beslissing.
Ik herhaal dat patroon de hele dag. Ontwerpen, prompten, reviewen, testen. Mijn eigen waarde zit in keuzes maken, vragen stellen die de AI niet stelt, en herkennen wanneer iets niet klopt. De AI doet het schrijfwerk.
Stap één: data binnenhalen
Een handelssysteem zonder data is een lege huls. Dus ik begon met het ophalen van koersen.
Mijn data komt van FMP, een Amerikaanse data leverancier die financiële informatie van duizenden bedrijven dagelijks bijhoudt en via een interface beschikbaar maakt voor ontwikkelaars. Hun service kost geld, maar geeft mij toegang tot 5 jaar dagelijkse koersen, kwartaal-rapportages, en analist verwachtingen voor zo'n beetje elk beursgenoteerd bedrijf wereldwijd.
Mijn handelsuniverse bestaat uit 554 aandelen: ongeveer 500 uit de S&P 500 (de grootste Amerikaanse aandelen) plus 54 Nederlandse aandelen uit AEX en AMX. Voor elk van die 554 wilde ik de afgelopen 5 jaar aan dagelijkse koersen.
Dat zijn 686.804 datapunten. Allemaal in mijn database, dat heet bij mij Supabase, een online database service die je net als Excel kunt vullen maar dan met miljoenen rijen en met razendsnelle bevraging.
Stap twee: factoren bouwen, één voor één
Met al die koersen had ik nu de input. Maar het systeem moest leren wat ze betekenen. Daarvoor bouw ik vier factoren, elk een aparte invalshoek op een aandeel.
Momentum ging eerst. Eenvoudig idee: aandelen die het de afgelopen 12 maanden goed hebben gedaan, doen het vaak ook de komende maanden goed. Niet altijd, maar academisch onderzoek over decennia toont een statistische edge. Voor elk aandeel berekent mijn systeem het rendement over de afgelopen 12 maanden, zet dat om in een z-score (meer daarover zo direct), en levert een ranking.
Value kwam daarna. Hoeveel betaal je voor wat een bedrijf opbrengt? Cheap is goed, duur is slecht. Waardering meet ik via vier verhoudingen: vrije cashflow opbrengst, ondernemingswaarde gedeeld door winst voor afschrijvingen, en twee andere klassieke maatstaven.
Quality was de derde. Goede bedrijven doen het op de lange duur beter dan slechte. Maar wat is "goed"? Bij mij: hoog rendement op geïnvesteerd kapitaal, lage schuld, gezonde groei in vrije cashflow. Bedrijven die kwaliteit van winsten leveren in plaats van groei kopen met schuld.
Catalyst was de vierde. Recente earnings beats? Aandeleninkopen? Positieve revisions van analisten? Dit is de meest tijdsgevoelige factor: vandaag positief, over een maand misschien anders.
Elke factor heeft zijn eigen formule, eigen logica, eigen valkuilen. Maar alle vier produceren ze hetzelfde: een z-score per aandeel.
Wat is een z-score eigenlijk
Even uitleggen. Een z-score vertelt je hoeveel je afwijkt van het gemiddelde, gemeten in standaarddeviaties.
Stel: het gemiddelde momentum in mijn 554 aandelen is 36 procent over de afgelopen 12 maanden, met een standaarddeviatie van 154 procent. Een aandeel dat 50 procent steeg krijgt z-score plus 0.09. Iets boven gemiddeld. Een aandeel dat 200 procent steeg krijgt plus 1.07. In het top kwartiel.
Het mooie van z-scores: ze maken factoren met totaal verschillende schalen onderling vergelijkbaar. Momentum in procenten kun je niet zomaar optellen bij ROIC in procenten, ze hebben totaal andere distributies. Z-scores zetten alles op één schaal: standaarddeviaties weg van het gemiddelde.
Waarom multi-factor
Met vier factoren en z-scores per aandeel komt de laatste stap: de gewogen optelsom. Quality weegt het zwaarst (fundamenten zijn duurzamer dan momentum), gevolgd door Value, Momentum en Catalyst.
De reden voor die mix is simpel. Een momentum-only systeem koopt vooral wat al heeft gewonnen. Vaak duur, vaak hype. Een value-only systeem koopt vooral wat al lang gedaald is. Vaak om goede redenen. Pas door meerdere factoren te combineren krijg je bevestigde signalen: aandelen die op meerdere onafhankelijke dimensies aansluiten. Niet de extreme winnaars op één factor, maar de redelijke winnaars op alle vier.
En toen kwam de eerste lijst
Twee dagen geleden was dit een verzameling werkende code modules. Vandaag is het een systeem dat een mening heeft. Geen geld erin geïnvesteerd. Geen backtest gedraaid. Maar de output is concreet, traceerbaar en argumenteerbaar.
Het systeem produceerde vandaag voor het eerst zijn top 5 BUY signalen. Niet wat ik verwachtte. Geen NVIDIA, geen Microsoft, geen Apple. Voor sommige tech-watchers misschien teleurstellend.
Daarover gaat de volgende blog. Wat staat er wel in mijn top 5, waarom precies die namen, en wat zegt dat over multi-factor investeren. Plus een eerlijk gesprek over wat me opviel en waar ik twijfels bij heb.
Het verschil tussen werkende code en een werkend systeem zit in dat moment. De code werkte al een paar dagen. Het systeem werkt vandaag.