Cijfers. Ze zijn overal. Maar cijfers betekenen niet veel zonder te weten waar ze voor staan. Met 20.000 op je bankrekening... zijn dat euro's of Japanse yen? De eerste kan je een kleine auto kopen, de tweede een diner voor twee. De eenheid van een hoeveelheid, in dit geval de valuta, is een belangrijk detail.
Je weet vaak wat de cijfers betekenen als je ze in een bepaalde context bekijkt, bijvoorbeeld je bankrekening. Maar wat als deze cijfers het resultaat zijn van een complexe berekening op een diverse dataset, laten we zeggen het valutarisico van een beleggingsportefeuille? Hoe kun je er absoluut zeker van zijn dat de cijfers en berekeningen correct zijn?
De meeste softwaretoepassingen, databases en programmeertalen begrijpen geen meeteenheden. Dit geldt ook voor Excel en andere softwaretoepassingen die veel in de financiële sector worden gebruikt. Ze beschouwen hoeveelheden als gewone getallen zonder betekenis. Dit betekent dat tools zoals Excel gemakkelijk getallen optellen en vermenigvuldigen, zelfs als die bewerkingen belachelijk zijn.
Probeer het maar. Open Excel en voer een willekeurig getal in twee cellen in. Formatteer het eerste getal als Euro en het andere als Amerikaanse Dollar. Tel die twee getallen dan bij elkaar op in een derde cel.

Excel zal gelukkig de getallen bij elkaar optellen en zelfs 'intelligent' het resultaat weergeven als Euro of Amerikaanse Dollar, afhankelijk van welk veld eerst in de formule werd geraadpleegd. Maar zo werkt wiskunde niet!
Fouten zijn onvermijdelijk
Grote bedrijven die miljarden aan activa beheren, werken met systemen die zelfs de basisregels van de wiskunde niet begrijpen. Natuurlijk hebben ze allerlei processen, controles en audits om fouten te beperken, maar deze zijn vaak duur en tijdrovend. Dit zijn menselijke controles en mensen maken nu eenmaal af en toe fouten. En die mensen gebruiken dezelfde soort fundamenteel gebrekkige software om hun controles uit te voeren.
Eng, hè?
Toen we begonnen met het bouwen van Alloq, wilden we de allocatiebeheersprocessen robuuster en sneller maken. Een deel hiervan is het vergemakkelijken van de menselijke kant van het proces. Tegelijkertijd wilden we ook het fundamentele probleem aanpakken dat hierboven is geïllustreerd; we wilden software creëren die de wiskunde goed kan uitvoeren. Daarom hebben we iteratief de Harmony-engine gebouwd die de kern vormt van de berekeningen die in Alloq worden uitgevoerd.
De Harmony-engine van Alloq begrijpt eenheden en houdt hiermee rekening bij elke wiskundige operatie. De initiële dataset wordt geladen, samen met eenheden die aangeven wat elke hoeveelheid betekent. Vervolgens geven we een reeks berekeningen door aan Harmony om uit te voeren. De correcte eenheden worden automatisch toegewezen aan de resultaten.
De cijfers liegen niet
Toen ik met de Harmony-engine werkte om het valutarisico van een pensioenfonds te berekenen, besparen deze functies me behoorlijk wat tijd. Ik ben maar een mens, dus ik heb een paar fouten gemaakt bij het opzetten van de berekeningen.
Op een gegeven moment zag ik een waarde aangegeven in USD²/EUR. Dit deed me beseffen dat ik iets fout deed met de EUR-USD wisselkoers. Ik wilde Amerikaanse dollars naar euro's omrekenen en in plaats van te delen door de EUR-USD koers (die een eenheid van USD/EUR heeft, of 'USD per EUR') vermenigvuldigde ik met de wisselkoers: USD × USD/EUR = USD²/ EUR. Ik realiseerde me onmiddellijk mijn fout toen ik deze onverwachte uitkomst zag. Met het inzicht kon ik de formule gemakkelijk aanpassen om deling te gebruiken: USD / (USD/EUR) = EUR.
Kort daarna zag ik een dollarbedrag op het scherm terwijl ik een percentage (een eenheidsloze hoeveelheid) van een andere formule verwachtte. In dit geval selecteerde ik eenvoudigweg de verkeerde variabele om weer te geven en corrigeerde dat met een paar toetsaanslagen.
De gedetailleerde output van de Harmony-engine stelde me in staat om beide fouten in minder dan een minuut te detecteren, lokaliseren en corrigeren. In andere tools, zoals Excel, kan het uren of dagen duren voordat je merkt dat er iets mis is met het resultaat. In dit specifieke voorbeeld met waarden zoals de EUR-USD of EUR-GBP wisselkoersen, kan de fout zelfs nog langer onopgemerkt blijven. Dat komt omdat deze koersen relatief dicht bij de eenheid liggen, dus deling of vermenigvuldiging geeft resultaten die ongeveer in dezelfde range liggen.
Samenvattende conclusie
De Harmony-engine begrijpt de betekenis van de cijfers in je data en volgt de regels van de wiskunde, iets wat de meeste software niet doet. Dit heeft een aantal krachtige voordelen:
1. De resultaten worden weergegeven in de juiste eenheden, wat helpt bij de initiële verificatie van de resultaten. Wanneer je met Euro-invoer werkt en een USD-uitkomst verwacht door wisselkoersen toe te passen, weet je dat er iets mis is als het gerapporteerde resultaat nog steeds in Euro's is.
2. Het bovenstaande Excel-voorbeeld waarbij twee bedragen in verschillende valuta's worden opgeteld, werkt gewoon niet. Wanneer Harmony wordt gevraagd om twee getallen met verschillende eenheden op te tellen of af te trekken, stopt het onmiddellijk om incorrecte resultaten te voorkomen. Een dergelijke fout betekent dat er een fundamentele fout in de berekeningsregels is.
3. Bovendien retourneert Harmony een foutmelding met precies de specifieke berekening waar het fout gaat. Dit maakt het veel gemakkelijker om de oorzaak te traceren. Zelfs zonder inputdata kan Harmony dimensionale analyse op de berekeningen uitvoeren om fouten te detecteren en het type uitkomst af te leiden.
4. Alle tussenliggende berekeningsstappen zijn beschikbaar in Alloq, zodat je alle cijfers kunt herleiden tot de aanvankelijk geladen data. Controles en audits worden veel eenvoudiger omdat Alloq geen zwarte doos is.
Wij geloven dat Alloq als oplossing voor vermogensbeheer van binnenuit correct moet zijn. Daarom hebben we de Harmony-engine ontwikkeld; we willen erop kunnen vertrouwen dat elke berekening wiskundig correct is en dat elke uitkomst correct is.




