Python script voor het automatisch herbalanceren van een portfolio

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Alex de Vries
Quantitatief Analist & Algo-Trading Expert
Python Libraries voor Algoritmische Trading · 2026-02-15 · 5 min leestijd

Stel je voor: je portfolio zit vol met verschillende aandelen en fondsen, maar na een paar maanden is de verdeling compleet anders dan je had bedacht.

De ene belegging groeit hard, de ander blijft achter. Je wilt herbalanceren, maar je hebt geen zin om uren achter Excel te zitten en met de rekenmachine te rommelen. Een Python script kan dit automatisch voor je regelen, zodat je portfolio weer netjes bij je doelallocatie past zonder onnodige handelskosten.

Dit is precies wat een portfolio balancer script doet: het berekent de beste aankooporders om je allocatie weer op orde te krijgen, met minimale transacties. Handig, snel en zonder stress.

Python Script voor Automatisch Herbalanceren van Portfolio

Een portfolio balancer script is een stukje code dat helpt om je beleggingen weer in de juiste verhouding te brengen.

Je geeft aan welke verdeling je wilt, bijvoorbeeld 35% NASDAQ, 25% WORLD, enzovoort. Het script kijkt naar je huidige bezittingen, berekent wat er nodig is om de doelallocatie te halen en stelt de minimale aankooporders voor. Dit werkt met een CSV-bestand dat je makkelijk zelf aanmaakt.

De kolommen zijn simpel: Asset, Quantity, Price, Target Allocation (%). Zo hoef je geen ingewikkelde spreadsheets bij te houden.

Waarom is dit belangrijk? Omdat herbalanceren je portfolio gezond houdt.

Functionaliteiten en Werking van Portfolio Balancer Script

Zonder actie groeit de ene belegging te hard en wordt de ander verwaarloosd, wat je risico verhoogt. Een script beperkt het aantal transacties, wat handelskosten laag houdt. Stel je hebt €1.235,36 te investeren en je wilt maximaal 3 transacties doen. Het script zorgt dat je niet meer dan nodig handelt.

Je kunt ook een minimale investeringsdrempel instellen, bijvoorbeeld dat ten minste 90% van je beschikbare fondsen wordt geïnvesteerd. Zo voorkom je dat er geld op de plank blijft liggen.

Het script begint met het laden van je CSV-bestand. Neem dit voorbeeldportfolio: NASDAQ 43 stuks @ €10,00 (35%), WORLD 15 stuks @ €8,50 (25%), GOLD 25 stuks @ €12,00 (20%), SP500 5 stuks @ €5,00 (10%), EM 56 stuks @ €20,00 (5%), CRYPTO 0 stuks @ €12,20 (5%). Het script berekent de huidige waarde van elke asset en vergelijkt die met de doelallocatie.

Vervolgens bepaalt het welke aankopen nodig zijn om afwijking te minimaliseren. Bijvoorbeeld: als CRYPTO 0% is maar 5% moet zijn, koopt het script genoeg CRYPTO om die 5% te halen, rekening houdend met je budget.

Een andere handige functie is de Allocation Index. Dit is een maatstaf voor hoe goed je portfolio matcht met je doelallocatie, waarbij 1 een perfecte match is. Het script laat zien hoe ver je zit en wat er nodig is om dichter bij 1 te komen.

Op Linux, zoals Ubuntu 22.04, is er zelfs een GUI beschikbaar, zodat je niet alleen via de command line werkt.

Het script is onder MIT License, dus je mag het vrij gebruiken en aanpassen. Toekomstige features, zoals verkooporders en fractionele aandelen, zitten eraan te komen, wat het nog veelzijdiger maakt. Om fouten te voorkomen, moet je de CSV-kolommen precies noemen zoals hierboven: Asset, Quantity, Price, Target Allocation (%).

Een verkeerde naam leidt tot verwerkingsfouten. Ook is het slim om een transactielimiet in te stellen, anders loop je het risico op onnodig hoge handelskosten. Het script is ontworpen om efficiënt te werken, zodat je tijd bespaart en je portfolio onder controle houdt.

Automatische Portfolio Analyse met Python

Naast herbalanceren kun je Python gebruiken voor diepgaande portfolio-analyse. Waarom Excel geen vervanger is voor Python in professionele trading, ontdek je door te kijken naar hoe dit helpt om je beleggingen en risico’s beter te begrijpen.

Je kunt historische data ophalen, rendementen berekenen en visualisaties maken om patronen te zien. Dit is vooral handig voor algoritmische trading bots, waarbij je snel moet kunnen inspelen op marktveranderingen. Met Python automatiseer je dit proces, waarbij je natuurlijk ook denkt aan de beveiliging van je API keys in Python scripts, zodat je niet handmatig hoeft te puzzelen.

Een voorbeeld: je portfolio heeft een Allocation Index van 0,85. Door analyse te draaien, zie je dat de afwijking vooral komt van de EM-allocatie, die maar 5% is maar eigenlijk meer zou moeten zijn.

Je kunt dan je bot instellen om automatisch bij te kopen. Dit werkt samen met brokers API’s, zoals die van Interactive Brokers of degiro, om orders direct te plaatsen. Risicomanagement wordt hierbij niet vergeten: je kunt limieten instellen voor hoeveel je per asset mag investeren, om concentratierisico te vermijden.

Essentiële Bibliotheken voor Portfolio Analyse

Voor deze analyse gebruik je een paar krachtige Python-bibliotheken. yfinance is een must: het haalt gratis historische marktdata van Yahoo Finance, inclusief aandelenkoersen, dividenden en splits. Handig voor backtesting van je strategieën. pandas is ideaal voor data manipulatie; je kunt er CSV’s mee laden, berekeningen uitvoeren en data in Excel analyseren.

Bijvoorbeeld: je laadt je portfolio-CSV en voegt er marktdata aan toe om de huidige waarde te berekenen.

Voor wiskundige berekeningen gebruik je numpy. Dit is super snel voor arrays en formules, zoals het berekenen van je portfolio-rendement of de optimale aankooporders. Voor visualisaties zijn matplotlib en seaborn perfect. Je maakt grafieken van je allocatie over tijd, of een heatmap van correlaties tussen assets.

Tot slot is er quantstats voor advanced portfolio analytics: het berekent metrics zoals Sharpe ratio, drawdowns en volatiliteit. Deze tools samen maken je analyse compleet en professioneel.

Praktische Tips voor Gebruik

Begin met een simpele CSV en test het script op een klein bedrag, bijvoorbeeld €500, om te zien hoe het werkt.

Gebruik altijd de juiste kolomnamen in je CSV-bestand, anders loopt het vast. Stel een transactielimiet in, zoals 3 transacties per herbalancering, om kosten laag te houden. Op Ubuntu 22.04 kun je de GUI proberen voor een visuele aanpak – veel beginners vinden dat prettiger. Automatiseer je rapportage met Python: laat het script na elke herbalancering een overzicht genereren met de Allocation Index en de uitgevoerde orders.

Dit bespaart tijd en voorkomt fouten. Denk aan risicomanagement: stel een minimale investeringsdrempel in, zodat je niet teveel cash vasthoudt.

En experimenteer met de toekomstige features, zoals verkooporders, om je bot nog slimmer te maken.

Zo blijf je altijd bovenop je portfolio, zonder dat het je veel tijd kost.

Portret van Alex de Vries, Quantitatief Analist & Algo-Trading Expert
Over Alex de Vries

Alex is een ervaren quantitatief analist en Python-ontwikkelaar die complexe trading concepten vertaalt naar begrijpelijke, praktische handleidingen voor zowel beginners als gevorderden.

Volgende stap
Bekijk alle artikelen over Python Libraries voor Algoritmische Trading
Ga naar overzicht →