Startpagina > De impact van inflatie in Beancount

De impact van inflatie in Beancount

Niko Strijbol

Gepubliceerd op , laatst bijgewerkt op

boekhouden

Met een inflatie van 12,27% in oktober, wat het hoogste pijl in ruim 47 jaar is [1], worden we dezer dagen om de oren geslagen met inflatiecijfers. In dit artikel gaan we na wat dat precies betekent, en hoe we de impact van de inflatie zouden kunnen tonen in Beancount, een implementatie van boekhouden in platte tekst of PTA (plain text accounting).

1. Wat is dat, de inflatie?

Eerst en vooral is het nodig om te weten waar het precies om gaat. Derhalve handelt deze paragraaf over wat de inflatie precies betekent, welke definities er zijn en waar die vandaan komt.

Laten we starten met het begrip inflatie zelf. Volgens de Europese Centrale Bank [2]:

In een markteconomie kan de prijs van goederen en diensten altijd veranderen. Sommige prijzen stijgen, weer andere dalen. Inflatie treedt op wanneer er sprake is van een algemene stijging van de prijzen van goederen en diensten, niet alleen van individuele producten; dat betekent dat je vandaag minder kunt kopen voor 1 euro dan gisteren. Met andere woorden: door inflatie wordt de munt in de loop van de tijd minder waard.

ECB, Wat is inflatie?

Stel dat een brood vroeger 1,00 euro kostte. Als datzelfde brood nu 1,20 euro kost, dan is de inflatie 20% (er is 20% van de originele prijs bijgekomen).

Na dit voorbeeldje wordt een eerste aspect van de inflatie duidelijk: een inflatiecijfer is altijd een percentage, dat een bepaald moment vergelijkt met een eerder moment. Standaard wordt telkens vergeleken met hetzelfde moment één jaar terug. De hierboven vermelde inflatie van 12,27% voor oktober 2022 zegt dus dat het leven in oktober 2022 gemiddeld 12,27% duurder is dan oktober 2021. Dit betekent wel dat als de inflatie in november opnieuw 12% zou bedragen, dit niet betekent dat alles opnieuw 12% duurder geworden is.

Het gaat evenwel niet om één product, maar over een algemene stijging van de prijzen. Om die algemene stijging te meten wordt naar een korf van goederen en diensten gekeken. Als inflatiecijfers van verschillende landen of perioden vergeleken worden met elkaar is het belangrijk dat dezelfde korf gebruikt wordt. Dit kan door een korf met dezelfde goederen te gebruiken, maar ook een korf die hetzelfde voorstelt, zoals het gemiddeld uitgavenpatroon van een gezin. In de EU en omstreken bestaat dit gelukkig al.

Tot slot is er het verschil tussen de inflatie en de index. Regelmatig wordt de index opnieuw bepaald. Op basis van die index worden dan de inflatiecijfers berekend.

In België wordt de index gepubliceerd door Statbel, de Algemene Directie Statistiek (het vroegere Nationaal Instituut voor de Statistiek). Er zijn een drietal verschillende indices[3][4][5][6]:

Index der consumptieprijzen (CPI)
De „oerindex” van België, die sinds 1920 gemeten wordt. De goederen in de korf (de getuigen) worden regelmatig bijgewerkt, op basis van onderzoek naar het koopgedrag van de Belgische consument. De hele geschiedenis ervan is mooi uitgelegd op de Wikipedia-pagina, een pagina van Statbel of een brochure van het ABVV.
Gezondheidsindex
Sinds 1994 wordt uit de CPI ook de gezondheidsindex afgeleid. Deze wordt bekomen door een aantal producten te weren uit de korf, zoals alcoholische dranken, tabak en motorbrandstoffen. Op die manier wou men de indexstijging afremmen: in oktober 2022 staat de gezondheidsindex op 127,92, tegenover 128,21 van de CPI.
(Europees) Geharmoniseerde consumptieprijsindex (HICP)
In 1997 opgericht om in Europa (de EU en omstreken) de inflatiecijfers te kunnen vergelijken met elkaar. Er wordt dus gewerkt met eenzelfde korf in alle landen. Een variant hiervan is het geharmoniseerd indexcijfer met constante belastingvoeten, waarbij de belastingen op producten (zoals accijnzen en btw) constant gehouden worden. Deze wordt maandelijks berekend door Eurostat.

Hieronder een tabel met de inflatiecijfers op basis van de verschillende indices voor de laatste drie maanden:

DefinitieAugustus 22September 22Oktober 22
Index der consumptieprijzen9,94%11,27%12,27%
Gezondheidsindex9,70%11,25%12,27%
Geharmoniseerde consumptieprijsindex10,50%12,10%-1
Geharmoniseerde consumptieprijsindex met constante belastingvoet11,50%13,20%-1

Daarnaast zouden we België niet zijn, moesten er niet nog wat definities zijn die gebruikt worden in een poging de automatische indexaties te remmen [7]:

Afgevlakte index
Ingevoerd in 1994. De afgevlakte index komt overeen met het rekenkundige gemiddelde van de gezondheidsindex van de laatste 4 maanden vermenigvuldigd met een factor 0,98. Dit is wat gebruikt wordt als basis voor de indexatie van (sommige) lonen, pensioenen, uitkeringen, enz. De woninghuur bijvoorbeeld niet: die is gebaseerd op de gezondheidsindex. Die 0,98 is afkomstig uit de indexsprong van 2% uit 2015.
Spilindex
Een vaste waarde waarmee de afgevlakte index vergeleken wordt. Wordt de spilindex bereikt of overschreden wordt, volgt een indexatie in de publieke sector en bepaalde private sectoren. De automatische indexatie van de lonen is voor de private sector grotendeels niet wettelijk vastgeld, maar wordt bepaald door de sectorale collectieve arbeidsovereenkomsten (cao’s). Sommige sectoren hebben geen automatische indexaties van de lonen.

2. Impact van de inflatie op geld

Het begrip inflatie is nu duidelijk. Nu rijst een tweede vraag: wat is de impact? Met andere woorden, wat betekent het concreet voor uw geld dat de inflatie 12,27% bedraagt?

Stel bijvoorbeeld dat er 100 euro op een bankrekening staat en dat een brood 1 euro kost. Dat betekent dat 100 euro 100 broden waard is. Stel dat later de inflatie 10% bedraagt. Dat betekent dat hetzelfde brood dan 1,10 euro kost. Met hetzelfde geld, 100 euro, kunnen er nu 90,91 broden gekocht worden. U hebt als het ware 9,09 euro „verloren”. Dat is wat we willen zien in Beancount.

Ook volstaat het niet om een eindsaldo om te zetten in broden. We willen de evolutie van de verhouding geld/brood in de tijd weergeven. Hieronder passen we dit toe voor een fictief voorbeeld.

3. Indexcijfers bemachtigen

Op Statbel, of via een zoekmachine naar keuze, wordt de index gemakkelijk gevonden in een exporteerbaar en machineleesbaar formaat.

Dit resulteert bijvoorbeeld in volgend csv-bestand:

datum,cpi
2021-01-01,100.00
2022-01-01,102.10
2023-01-01,104.15
2024-01-01,106.25
2025-01-01,110.75

4. Toepassen in Beancount

We beginnen met een eenvoudig journaal, om gemakkelijk het resultaat te kunnen verifiëren. In dit fictief voorbeeld krijgen we elk jaar op 1 januari 100 euro loon. Aanschouw:

2021-01-01 * "Bedrijf" "Loon"
    Activa:Zichtrekening            100.00 EUR
    Inkomsten:Loon
2022-01-01 * "Bedrijf" "Loon"
    Activa:Zichtrekening            100.00 EUR
    Inkomsten:Loon
2023-01-01 * "Bedrijf" "Loon"
    Activa:Zichtrekening            100.00 EUR
    Inkomsten:Loon
2024-01-01 * "Bedrijf" "Loon"
    Activa:Zichtrekening            100.00 EUR
    Inkomsten:Loon
2025-01-01 * "Bedrijf" "Loon"
    Activa:Zichtrekening            100.00 EUR
    Inkomsten:Loon

We moeten dus de indexcijfers van de vorige paragraaf verwerken in dit bestand. Gelukkig heeft Beancount hier al de nodige functionaliteit voor, zodat we niet zelf moeten rekenen: we kunnen gebruik maken van de valuta-ondersteuning.

We definiëren eerst een nieuwe, theoretische munteenheid: de Koopkracht (KKR; elke munteenheid heeft een drieletterige afkorting nodig). De Koopkracht is een munteenheid wier waarde vastligt, in de zin dat er altijd evenveel mee gekocht zou kunnen worden. Om het concreet te maken: met 1 eenheid Koopkracht kan altijd 1 brood gekocht worden, ongeacht het moment of de inflatie.

Vervolgens herdefiniëren we de euro op basis van die munteenheid. Met een script in een programmeertaal naar keuze genereert men makkelijk onderstaande:

2021-01-01 price KKR     1.00 EUR
2022-01-01 price KKR     1.02 EUR
2023-01-01 price KKR     1.04 EUR
2024-01-01 price KKR     1.06 EUR
2025-01-01 price KKR     1.11 EUR

Een price directive in Beancount moet gelezen worden als: op datum 1/01/2022 was de prijs voor 1 eenheid KKR 1,02 euro. Met andere woorden, op 1/01/2022 moest men 1,02 euro neertellen voor 1 eenheid koopkracht. De lezer zal opmerken dat bovenstaande generen eenvoudig is: neem de index, deel door 100 en rond af op 2 cijfers na de komma.

De impact van de inflatie kan nu bekeken worden, door bovenstaande bestand met price directives samen met het journaal te nemen en rapporten en saldi in de munteenheid KKR te bekijken.

Bekijken we bijvoorbeeld het verzamelde kapitaal na 5 jaar, zonder de inflatie mee te rekenen:

> SELECT date, balance WHERE account ~ "activa" ORDER BY date DESC LIMIT 1
   date     balance
---------- ----------
2025-01-01 500.00 EUR

Als we de inflatie toepassen, krijgen we een saldo van ongeveer 450 KKR. Dit betekent dus dat er bijna 50 euro aan kapitaal verloren gegaan is door de inflatie:

> SELECT date, convert(balance, 'KKR') WHERE account ~ "activa" ORDER BY date DESC LIMIT 1
   date      convert_balance_c_
---------- ---------------------
2025-01-01 450.45 KKR

Ook op het loon kunnen we het effect bekijken (er is in ons voorbeeld geen indexatie van lonen):

> SELECT date, position, convert(position, 'KKR') ORDER BY date DESC LIMIT 1
   date     position   convert_position_c_
---------- ---------- ---------------------
2025-01-01 100.00 EUR 90.09 KKR

Blijkbaar is ons loon gedaald tot ongeveer 90 KKR. In totaal bedraagt de inflatie over de beschouwde periode van 5 jaar 11%. Als we op het laatste loon een indexatie van 11% toepassen, krijgen we inderdaad terug 100 KKR.

Een andere manier om deze gegevens te vinden is fava te gebruiken, dat ondersteuning biedt om alles in andere munteenheden te bekijken.

5. Samenvatting

  1. Verkrijg een csv-bestand met daarin de indexcijfers.
  2. Bedenk een fictieve munteenheid met vaste waarde.
  3. Herdefinieer de euro aan de hand van de indexcijfers, door price directives te generen van de indexcijfers in een Beancount-bestand.
  4. Bekijk de saldi in de nieuwe munteenheid.

Bronnen


  1. Cijfers voor deze maand worden verwacht op 17/11/22.