Glossarium
Begrippen
Alle termen, factoren en metrics die op deze site voorkomen, in normaal Nederlands uitgelegd. Voor wie er net induikt en voor wie het al kent maar even iets terug wil zoeken.
Het systeem
Wat het is, hoe het werkt, waar het op draait.
Multi-factor systeem
Trading approach
Een systeem dat aandelen rangschikt op basis van meerdere onafhankelijke criteria, niet één. In mijn geval vier: momentum, value, quality en catalyst. Het idee komt uit academisch onderzoek naar wat aandelen historisch beter laat presteren dan de markt.
Universe
Handelsuniversum
De aandelen waarop het systeem mag handelen. Bij mij 554 stuks: ongeveer 500 uit de S&P 500 (de grootste Amerikaanse aandelen) plus 54 Nederlandse aandelen uit AEX en AMX.
Niet elk van die 554 krijgt elke dag een score. Sommige hebben onvoldoende data voor een betrouwbare composite. Daardoor zijn er gemiddeld 462 aandelen die echt geranked worden.
FMP
Financial Modeling Prep
De Amerikaanse data leverancier waar mijn financiële data vandaan komt. Geeft toegang tot dagelijkse koersen, kwartaal-rapportages, en analist verwachtingen voor zo'n beetje elk beursgenoteerd bedrijf wereldwijd. Niet gratis maar betaalbaar.
Supabase
Database
De online database waar alle data in opgeslagen wordt: dagelijkse koersen, alle kwartaalcijfers, alle berekende scores. Als Excel maar dan met miljoenen rijen en razendsnelle bevraging.
De vier factoren
Hoe het systeem aandelen beoordeelt. Elke factor een andere invalshoek.
Momentum
Factor 1, 25% gewicht
Hoe goed of slecht een aandeel het de afgelopen tijd heeft gedaan. Eenvoudig idee: aandelen die het 12 maanden goed hebben gedaan, doen het vaak ook de komende maanden goed. Niet altijd, maar academisch onderzoek over decennia toont een statistische edge.
Ik bereken twee componenten: het 12-maands rendement van het aandeel zelf, en de relatieve sterkte ten opzichte van de markt. Beide samen geven een momentum z-score per aandeel.
Value
Factor 2, 25% gewicht
Hoeveel betaal je voor wat een bedrijf opbrengt? Cheap is goed, duur is slecht. Ik meet dit via drie verhoudingen: vrije cashflow opbrengst, ondernemingswaarde gedeeld door winst voor afschrijvingen, en winst per aandeel ten opzichte van prijs.
Belangrijk: ik bereken Value binnen de sector, niet over de hele markt. Een chipfabrikant met EV/EBITDA van 30 is normaal voor Tech. Een aannemer met 30 zou belachelijk duur zijn. Sector-relative voorkomt dat je appels met peren vergelijkt.
Quality
Factor 3, 30% gewicht
Hoe gezond zijn de fundamenten? Goede bedrijven doen het op de lange duur beter dan slechte. Bij mij: hoog rendement op geïnvesteerd kapitaal (ROIC), lage schuld, gezonde groei in vrije cashflow, en gezonde marges.
Quality weegt het zwaarst van de vier factoren omdat fundamenten duurzamer zijn dan momentum of catalyst. Een goed bedrijf blijft een goed bedrijf, ook als de koers tijdelijk daalt.
Catalyst
Factor 4, 20% gewicht
Recente positieve gebeurtenissen die in de cijfers zitten maar niet altijd in de prijs. Earnings beats (winst hoger dan verwacht), aandeleninkopen, positieve analist revisies. Vandaag positief betekent dat de markt nog niet alle goede nieuws heeft verwerkt.
Dit is de meest tijdsgevoelige factor: vandaag positief, over een maand misschien anders. Lichter gewogen omdat het signaal sneller veroudert.
Scores en rangschikking
Hoe de vier factoren tot één getal komen.
Z-score
Standaardisatie
Een z-score vertelt je hoeveel je afwijkt van het gemiddelde, gemeten in standaarddeviaties. Het mooie van z-scores: ze maken factoren met totaal verschillende schalen onderling vergelijkbaar.
Een z-score van +1 betekent: één standaarddeviatie boven gemiddeld. +2 betekent: dik in de top, het soort uitschieter dat je opvalt. +3 is zeldzaam, de absolute extreme. Bij mij is +3 ook de bovengrens, om te voorkomen dat één extreem aandeel de hele rangschikking domineert.
Composite score
Totaalscore per aandeel
De gewogen optelsom van de vier factor z-scores. Quality 30%, Value 25%, Momentum 25%, Catalyst 20%. Eén getal dat samenvat: hoe interessant is dit aandeel volgens alle vier de invalshoeken samen?
Hoger is beter. Een composite van +1,0 betekent dat het aandeel op meerdere dimensies aantrekkelijk is. Een composite van -1,0 is het tegenovergestelde.
Percentile rank
Positie binnen het universum
Welk percentage van de aandelen heeft een lagere composite score? Een aandeel met percentile 95 zit in de top 5% van de hele lijst.
Ik gebruik percentile in plaats van absolute scores omdat het robuuster is. Of de markt nu hoog of laag staat, percentile 75 betekent altijd: top 25%.
Look-ahead bias
Backtest valkuil
Een fout in backtests waarbij het systeem informatie krijgt die op die historische datum nog niet beschikbaar was. Bijvoorbeeld: kwartaalcijfers gebruiken op 1 februari, terwijl ze pas op 19 februari werden gepubliceerd. Levert kunstmatig hoge backtest resultaten op die in het echt nooit te repliceren zijn.
Mijn systeem voorkomt dit: voor fundamentals gebruik ik een 60-dagen buffer (rapporten zijn meestal pas na een maand of twee echt openbaar), voor earnings gebruik ik de exacte aankondigingsdatum.
Posities en sizing
Hoe het systeem beslist hoeveel van wat te kopen.
Position size
Positie grootte
Hoe groot een individuele positie wordt in het portfolio. Bij mij 4 tot 7% per positie, afhankelijk van hoe volatiel het aandeel is. Volatiel = kleinere positie. Rustig = grotere positie.
Het idee: gelijk risico per positie, niet gelijk kapitaal. Een aandeel dat 5% per dag beweegt is risicovoller dan een aandeel dat 1% per dag beweegt, ook al kost het hetzelfde.
ATR
Average True Range
Een maat voor hoe veel een aandeel gemiddeld per dag beweegt. Berekend als de gemiddelde dagelijkse koersrange over de laatste 20 handelsdagen. Hoger ATR betekent volatieler.
Ik gebruik ATR voor twee dingen: position sizing (hoe groot een positie wordt) en stop loss berekening (hoe ver onder entry het stop niveau zit).
Sector cap
Sectorlimiet
Maximaal 25% van het portfolio in één sector. Voorkomt dat een Energy-sector klap (zoals 2014 of 2020) je hele portfolio onderuit haalt. Spreiding op sectorniveau is een vorm van risicobeheer.
Country cap
Landenlimiet
Maximaal 70% van het portfolio in één land. Belangrijk omdat mijn systeem soms een sterke voorkeur heeft voor Nederlandse aandelen door de samenstelling van de universe. Country cap dwingt af dat het portfolio gespreid blijft over Nederland en VS.
Exit triggers
De zes redenen waarom het systeem een positie sluit. Een goed uitstapmoment is belangrijker dan een goed instapmoment.
Stop loss
Trigger 1, capital protection
Harde uitstap als de positie te ver onder entry zakt. Bij mij: het maximum van -8% onder entry of 2x ATR onder entry, afhankelijk van wat eerst getriggerd wordt.
Voor de meeste aandelen wint de -8% grens. Voor zeer volatiele aandelen wint het ATR-gebaseerde niveau (omdat 2x ATR ruimer is dan 8%).
Trailing stop
Trigger 2, winst veiligstellen
Activeert pas als de positie +15% in plus is. Daarna volgt de trailing stop de hoogste sluitkoers, op 10% afstand. Schuift alleen omhoog, nooit omlaag.
Doel: een eindelijk winnende positie laten doorlopen, maar de winst veiligstellen als hij keert. Het systeem maakt geen winst totdat de positie sluit.
Thesis degradation
Trigger 3, signaal weg
Sluit de positie als de composite score onder percentile 50 zakt. Reden om te kopen was: top 25% van het universum. Als het aandeel naar de mediaan zakt, klopt de thesis niet meer.
Relative strength decay
Trigger 4, zwakte vs markt
Sluit de positie als hij 20 handelsdagen op rij minder doet dan de markt (S&P 500 voor Amerikaanse aandelen, AEX voor Nederlandse). Niet noodzakelijk dat het aandeel daalt, maar dat het achterloopt op het bredere geheel.
Time stop
Trigger 5, te lang vlak
Sluit de positie als hij 40 handelsdagen aangehouden is en het rendement is tussen -3% en +3%. Het aandeel doet niets, maar bezet wel een slot in het portfolio. Beter het kapitaal vrij maken voor een aandeel dat wel beweegt.
Target hit
Trigger 6, waardering bereikt
Sluit de positie als de waardering (EV/EBITDA) de sector mediaan bereikt vanaf onder. Het aandeel was goedkoop binnen zijn sector, nu is het marktconform geprijsd. De value opportunity is voorbij.
Performance metrics
Hoe je beoordeelt of een handelssysteem goed is.
Sortino ratio
Asymmetrische Sharpe
Zoals Sharpe maar straft alleen neerwaartse volatiliteit. Het idee: opwaartse beweegingen zijn niet "risico", die wil je juist hebben. Vooral neerwaartse spikes zijn pijn.
Max drawdown
Grootste daling
Het grootste percentage waarmee het portfolio is gezakt vanaf een eerder hoogtepunt. Drawdown is wat je in praktijk ervaart als pijn: als je portfolio van €12.000 daalt naar €9.500, dat is -21% drawdown.
Veel beleggers stoppen bij -30% drawdown ("ik kan niet meer kijken"). Mijn systeem mikt op max -30% drawdown, liefst onder -20%.
Win rate
% winnende trades
Percentage trades dat met winst is afgesloten. Verrassend genoeg is dit niet de belangrijkste metric. Een systeem met 40% win rate kan winstgevend zijn als de winnaars veel groter zijn dan de verliezers.
Mijn systeem mikt op 40 tot 55% win rate met asymmetrische uitkomst: gemiddelde winnaar groter dan gemiddelde verliezer.
Backtest
Historische simulatie
Het draaien van het systeem op historische data. Wat zou er zijn gebeurd als ik 4 jaar geleden was begonnen, met deze regels? Geeft een schatting van performance, niet een belofte.
Backtests kunnen misleidend zijn door look-ahead bias, survivorship bias (alleen aandelen tonen die het overleefd hebben) en overfitting. Een goede backtest test hoe het systeem reageert op tijden die het niet eerder gezien heeft.
Markt regime
Wanneer durf je vol te kopen, wanneer hou je de hand op de knip?
Markt regime
Macro context
Een classificatie van de algehele marktomstandigheden: risk-on (rustige markt), neutraal, voorzichtig, of risk-off (paniek). Bepaalt hoeveel exposure het systeem accepteert.
Bij risk-off (zoals maart 2020 of oktober 2022) gaat de exposure naar 25% en sluit het systeem agressief posities. Bij risk-on staat het portfolio op 100%.
VIX
Volatility Index
Een index die de verwachte volatiliteit van de S&P 500 meet over de komende 30 dagen. Wordt vaak "fear gauge" genoemd. VIX onder 15: rustige markt. VIX boven 25: zenuwachtige markt. VIX boven 40: paniek.
Breadth
Marktbreedte
Welk percentage van de aandelen handelt boven hun 200-daags voortschrijdend gemiddelde. Boven 60%: gezonde markt, brede deelname. Onder 40%: smal gedragen, mogelijk problemen onder de motorkap.
Credit spread
High yield vs investment grade
Het verschil in rendement tussen risicovolle bedrijfsobligaties (high yield, HYG) en veilige bedrijfsobligaties (investment grade, LQD). Wordt het verschil groter, dan zien obligatiebeleggers meer risico in de markt. Een vroege waarschuwing voor problemen die in aandelenkoersen nog niet zichtbaar zijn.
Hoe het is gebouwd
De technische kant in normaal Nederlands.
Cursor
AI coding tool
De AI tool die de daadwerkelijke code schrijft op basis van mijn prompts. Ik vertel wat er moet komen, Cursor produceert de Python of TypeScript regels. Daarna review ik en testen we samen of het klopt.
Claude
AI sparringpartner
Mijn AI assistent voor het denken, ontwerpen en reviewen. Wat ik in dit project Harry de hulp noem, geeft een eigen identiteit aan het samenwerken. Schrijft de prompts voor Cursor, helpt me beslissen, en pikt op wanneer iets niet klopt.
Six-eyes principle
Drie perspectieven, zes ogen
Mijn werkwijze: drie perspectieven op elke beslissing. Ik (ontwerp en review), Claude (sparring en prompts), Cursor (code). Geen perspectief mag worden overgeslagen. Dat dwingt om altijd na te denken voordat code wordt geschreven.
Backend en frontend
Twee kanten van de site
De backend is wat draait achter de schermen: data ophalen van FMP, scores berekenen, signalen genereren, orders verzenden naar de broker. Geschreven in Python.
De frontend is wat je hier op de site ziet: de pagina's, de tabellen, de grafieken. Geschreven in Next.js, een populair web-framework.
IBKR
Interactive Brokers
De broker waar mijn echte handel plaatsvindt. Wereldwijd toegang tot beurzen, lage commissies, programmatisch te benaderen vanuit mijn systeem. Mijn Python backend stuurt orders direct naar IBKR via hun API.
Iets gemist?
Als je een term tegenkomt op de site die hier niet staat, of als een uitleg onduidelijk is, laat het me weten via LinkedIn. Ik vul dit lijstje aan zodat de site voor iedereen leesbaar blijft.
→ Stuur mij een bericht