Portfolio Balancer: Hiërarchisch Beleggingsbeheersysteem
Portfolio Balancer: een hiërarchische benadering voor het beheren van gedecentraliseerd vermogen over meerdere wallets, exchanges en activa.
Stel je een complex beleggingsbeheersysteem voor waarin elk actief in zijn eigen "huis" leeft — een wallet, en al deze huizen zijn georganiseerd in een duidelijke hiërarchische structuur, vergelijkbaar met een bestandssysteem op een computer. Dit is precies de aanpak die we zullen verkennen.
Systeemarchitectuur: Drie Soorten Entiteiten
De kern van het systeem bestaat uit drie belangrijke concepten die als bouwstenen fungeren:
Wallet — het eenvoudigste element dat slechts één type actief bevat. Beschouw het als een bankkluiscel die alleen dollars of alleen bitcoins bevat. Geen vermenging — één wallet, één actief.
Asset — een specifieke munt, aandeel of ander financieel instrument. Bitcoin, Apple-aandelen, Amerikaanse dollars — dit zijn allemaal activa.
Portfolio — vergelijkbaar met een map in een bestandssysteem, die andere mappen (portfolio's) of bestanden (activa) kan bevatten. Een portfolio groepeert gerelateerde items op basis van een specifiek principe.
Boomstructuur: Van Algemeen naar Specifiek
Het systeem organiseert alle activa in een boom met een duidelijke hiërarchie:
Visualisatie van de hiërarchische structuur: van de globale wortel tot specifieke asset-wallets op verschillende exchanges
Wortel van de boom — dit vertegenwoordigt al je activa samen. Beschouw het als de hoofdmap "Mijn Beleggingen."
Eerste niveau — activa worden onderverdeeld per gebruiker. Als het systeem meerdere personen bedient, heeft elk zijn eigen tak.
Tweede niveau — activa worden gegroepeerd per exchange. Eén gebruiker kan activa hebben op Binance, Coinbase, Sberbank, enzovoort.
Derde niveau — accounts op een specifieke exchange. Bij één exchange kun je een spot-account, een futures-account, een spaarrekening hebben.
Vierde niveau — groepering per sector of strategie. Bijvoorbeeld "Techaandelen," "Cryptocurrencies," "Stablecoins" — als thematische mappen.
Vijfde niveau — specifieke wallets met activa. Hier bevinden zich je Bitcoin, Ethereum, dollars.
Twee Systeemtoestanden: Werkelijkheid en Dromen
Het systeem werkt met twee parallelle bomen:
Werkelijke Portfolioboom — dit is wat je momenteel bezit. Het systeem haalt deze gegevens rechtstreeks op bij exchanges via API. 1,5 Bitcoin op Binance, 100 Apple-aandelen bij Sberbank, 5000 dollar op Coinbase — alles zoals het is.
Gewenste Portfolioboom — dit is je plan, uitgedrukt in percentages. Je zegt: "Ik wil 60% in aandelen, 30% in cryptocurrencies, 10% in contanten." Het systeem berekent vervolgens de specifieke bedragen.
Balanceringsfunctie: Van Eenvoudig naar Complex
De meest basale balanceringsfunctie werkt als een eenvoudige vergelijking van de twee bomen:
Diff-algoritme vergelijkt de werkelijke en gewenste toestand, identificeert verschillen en geeft instructies: "Verkoop 0,3 Bitcoin, koop aandelen voor $15.000." Het is als een rekenmachine die laat zien wat er moet gebeuren om het doel te bereiken.
De functie kan echter veel complexer zijn. Geavanceerde balancering houdt niet alleen rekening met wat te kopen en verkopen, maar ook met waar dit te doen. Het zou kunnen voorstellen: "Verplaats Bitcoin van Binance naar Coinbase omdat de verkoopkoers daar beter is" of "Neem dollars op van de bank naar de exchange om aandelen te kopen."
Diff Tree: De Magie van Boomvergelijking
Diff Tree is de resulterende boom die de verschillen tussen de werkelijke en gewenste portfoliotoestanden toont. Beschouw het als een actieplan waarbij elk knooppunt instructies bevat over wat er moet gebeuren.
Het 'Diff Tree' actieplan: precies identificeren wat te kopen (groen) of te verkopen (rood) om de gewenste toestand te bereiken
Elk knooppunt in de diff tree bevat informatie:
- Huidige hoeveelheid van het actief
- Gewenste hoeveelheid van het actief
- Verschil (hoeveel te kopen of te verkopen)
- Operatie (kopen/verkopen/aanhouden)
Als je bijvoorbeeld 1 Bitcoin hebt maar 0,7 nodig hebt, geeft het diff tree-knooppunt voor dit actief aan: "Verkoop 0,3 Bitcoin." Als je 50% in aandelen hebt maar 60% nodig hebt, toont het systeem: "Koop aandelen ter waarde van X dollar."
Het diff tree-constructiealgoritme werkt recursief — het berekent eerst verschillen op hogere niveaus (portfolio's), en gaat vervolgens dieper naar specifieke activa. Dit maakt het mogelijk om te begrijpen wat te kopen/verkopen, maar ook in welke volgorde dit te doen.
De diff tree wordt de basis voor het uitvoeren van balanceringsoperaties. Het systeem voert eerst verkooptransacties uit (om geld vrij te maken), daarna aankooptransacties (om het vrijgemaakte geld te investeren in ondergewogen activa).
Virtuele Bomen: Wanneer Complexe Logica Nodig Is
Het meest intrigerende onderdeel van het systeem is de mogelijkheid om virtuele bomen te creëren voor speciale taken. Stel je voor dat je een arbitragebot hebt die een gelijke hoeveelheid Litecoin op twee verschillende exchanges moet aanhouden om prijsverschillen uit te buiten.
In plaats van één wallet "LTC 100%," creëert het systeem twee afzonderlijke wallets: "LTC 10%" en "LTC 90%." De virtuele boom van de arbitragebot verwijst naar de 10%-wallet. Het systeem markeert deze 10% als vergrendeld en specificeert door wie — de arbitragebot.
Het is alsof je virtuele "enveloppen" zou kunnen maken voor verschillende doeleinden in je bank-app, terwijl het geld fysiek op één rekening blijft.
Praktische Toepassing
Zo'n systeem lost echte problemen van beleggers op:
Automatisering van routinetaken — geen noodzaak om handmatig te berekenen wat te verkopen en kopen. Het systeem doet alle berekeningen voor je.
Controle over complexe strategieën — je kunt tegelijkertijd meerdere trading bots, arbitragestrategieën en langetermijnbeleggingen beheren.
Transparantie — de hele activastructuur is in één oogopslag zichtbaar. Het is duidelijk waar alles zich bevindt en waarom.
Flexibiliteit — je kunt eenvoudig strategieën wijzigen, activa herverdelen tussen exchanges en nieuwe instrumenten toevoegen.
Dit systeem transformeert het chaotische beheer van talrijke activa op verschillende platforms in een gestructureerd, begrijpelijk proces. Het is als het omzetten van een rommelige kast in een netjes georganiseerd garderobesysteem — maar dan voor beleggingen.
Conclusie
Portfolio Balancer laat zien hoe moderne technologieën complexe beleggingsprocessen kunnen vereenvoudigen. Het systeem toont aan dat portfoliobeheer geen magie is, maar een gestructureerde aanpak met duidelijke algoritmen en begrijpelijke logica.
Je kunt een demo van het systeem bekijken op: https://portfolio-balancer-tau.vercel.app/en
De broncode van het project is beschikbaar op GitHub: https://github.com/suenot/portfolio-balancer
Citatie
@software{soloviov2025portfoliobalancer,
author = {Soloviov, Eugen},
title = {Portfolio Balancer: Hierarchical Investment Management System},
year = {2025},
url = {https://marketmaker.cc/en/blog/post/portfolio-balancer},
version = {0.1.0},
description = {An overview of the Portfolio Balancer investment management system, which organizes assets into a hierarchical structure similar to a file system to simplify complex investment processes.}
}
Auteurs
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.