- Home
- Kennisbank
- Technische Analyse
- Wat is backtesting?
Wat is backtesting?
Wat is backtesting? Backtesting is de algemene methode om te kijken hoe een handelsstrategie zou presteren op basis van data uit het verleden. Backtesting wordt door handelaren of traders vaak gebruikt om nieuwe strategieën te ontdekken of gebruikte te optimaliseren. Als uit het backtesten blijkt dat het systeem of de strategie werkt, gaan handelaren er […]
In dit artikel
- Wat is backtesting?
- Zo werkt een backtest: stap voor stap
- Fictief voorbeeld: een kruising van moving averages
- Handmatig of met software backtesten
- Welke cijfers bekijk je na een backtest?
- Valkuilen: overfitting, look-ahead bias en survivorship bias
- Overfitting
- Look-ahead bias
- Survivorship bias
- Backtesting, forward testing en paper trading
- Veelgestelde vragen
- Hoeveel jaar data heb je nodig?
- Werkt backtesting ook voor forex en crypto?
- Waarom wijkt het echte resultaat vaak af van de backtest?
Met backtesting test je een tradingstrategie op historische koersdata. Zo zie je hoe de regels van je strategie in het verleden zouden hebben uitgepakt, voordat je ze op actuele markten toepast. In dit artikel lees je hoe een backtest stap voor stap werkt, welke cijfers je bekijkt en welke valkuilen het resultaat te mooi kunnen maken. Dit artikel is bedoeld als uitleg: we prijzen geen strategie aan en beloven geen rendement.
Wat is backtesting?
Bij backtesting test je een handelsstrategie op historische koersdata om te zien hoe die in het verleden zou hebben gepresteerd. Een goed resultaat in het verleden biedt geen zekerheid voor de toekomst.
Een backtest is in feite een simulatie. Je neemt een set vaste regels, bijvoorbeeld wanneer je een positie opent, wanneer je die sluit en hoe groot die positie is, en past die regels toe op koersen uit het verleden. Het resultaat laat zien wat er zou zijn gebeurd als je die regels in die periode consequent had gevolgd.
Backtesting wordt veel gebruikt bij technische analyse en price action, maar ook bij strategieën op basis van fundamentele cijfers of bij het spreiden van een portefeuille over verschillende beleggingen. Het past in een bredere beleggingsstrategie: het helpt om ideeën te toetsen voordat je er geld aan verbindt. Wil je eerst de basis van traden kennen, lees dan ons artikel over traden.
Zo werkt een backtest: stap voor stap
Een backtest begint met regels die je kunt meten, zoals het openen en sluiten van een positie en de positiegrootte. Die pas je toe op een historische periode, en daarna analyseer je de resultaten, kosten inbegrepen.
- Formuleer de regels. Elke regel moet zo concreet zijn dat een computer hem kan uitvoeren. "Een positie openen als de koers sterk lijkt" is niet toetsbaar; "een positie openen als het 50-daags gemiddelde boven het 200-daags gemiddelde komt" wel.
- Bepaal de positiegrootte en het risico. Hoeveel van je vermogen gebruik je per positie? Gebruik je een stop-loss, en zo ja, waar ligt die?
- Kies de markt en de periode. Kies een periode die verschillende marktomstandigheden bevat: stijgende, dalende en zijwaartse markten.
- Verzamel betrouwbare data. Zorg dat de koersen gecorrigeerd zijn voor dividenden en aandelensplitsingen en dat de data compleet zijn.
- Reken kosten en slippage mee. Transactiekosten, spreads en slippage (het verschil tussen de verwachte en de werkelijke uitvoeringsprijs) kunnen een strategie met veel transacties flink raken.
- Voer de test uit en analyseer. Bekijk niet alleen het eindrendement, maar ook hoe dat rendement tot stand kwam.
- Toets op een aparte periode. Test de regels daarna op data die je niet hebt gebruikt bij het ontwikkelen (out-of-sample).
Fictief voorbeeld: een kruising van moving averages
Fictief voorbeeld. De cijfers zijn verzonnen en dienen alleen ter uitleg. Stel, je test de regel: open een positie in een index-tracker als het 50-daags gemiddelde boven het 200-daags gemiddelde komt, en sluit de positie als het weer eronder zakt. Over een periode van tien jaar levert de test 14 transacties op. Zonder kosten komt het rendement uit op 6% per jaar. Met kosten en slippage blijft er 5,4% over, met een grootste tussentijdse daling van 22%. Pas als je die cijfers naast een eenvoudige vergelijking legt, bijvoorbeeld de index zelf aanhouden, kun je iets zeggen over de regel.
Hetzelfde principe kun je toepassen op valuta (forex). Daar spelen andere factoren mee, zoals de rentevergoeding of rentekosten bij het aanhouden van een positie over nacht en de spread die per valutapaar en per moment van de dag sterk kan verschillen. Een regel die op een aandelenindex redelijk lijkt te werken, kan op een valutapaar heel anders uitpakken.
Handmatig of met software backtesten
Je kunt handmatig backtesten door grafiek voor grafiek terug te spoelen, of automatisch testen met code of een functie in een grafiek- of handelsplatform. Beide manieren hebben voor- en nadelen.
- Handmatig: je bekijkt een historische grafiek, verbergt de toekomstige koersen en beslist per candle wat je regels voorschrijven. Dat is tijdrovend en gevoelig voor vergissingen, maar je leert er de markt en je eigen regels goed door kennen.
- Met een spreadsheet: je zet koersdata in een rekenblad en laat formules de regels toepassen. Geschikt voor eenvoudige strategieën.
- Met een programmeertaal of een ingebouwde backtestfunctie: geschikt voor complexere regels en grote hoeveelheden data. Het risico is dat een fout in de code ongemerkt een te mooi resultaat oplevert.
Welke cijfers bekijk je na een backtest?
Kijk naar het totale rendement, het aantal transacties, het winstpercentage, de grootste daling (max drawdown) en, waar het past, de Sharpe ratio. Eén cijfer zegt weinig.
- Totaal en jaarlijks rendement: na aftrek van kosten.
- Aantal transacties: bij weinig transacties is het resultaat statistisch zwak.
- Winstpercentage en gemiddelde winst en verlies: een strategie met 40% winnende transacties kan prima werken als de winsten gemiddeld veel groter zijn dan de verliezen, en omgekeerd.
- Max drawdown: de grootste daling van piek tot dal. Dit zegt veel over hoe zwaar een strategie onderweg kan zijn.
- Voor risico gecorrigeerd rendement: bijvoorbeeld de Sharpe ratio.
Valkuilen: overfitting, look-ahead bias en survivorship bias
De grootste valkuil is een strategie die zo strak op het verleden is afgesteld dat ze daarbuiten niet werkt. Dat heet overfitting. Daarnaast kunnen look-ahead bias en survivorship bias het resultaat te rooskleurig maken.
Overfitting
Wie lang genoeg aan instellingen schuift, vindt altijd een combinatie die op historische data uitstekend werkt. Een 47-daags gemiddelde met een stop-loss van 3,2% lijkt dan ideaal, maar dat komt vooral doordat de regels zijn afgestemd op toevalligheden in die specifieke periode. Een test op een aparte periode helpt om dit te ontdekken.
Look-ahead bias
Hier gebruikt de test informatie die op dat moment nog niet bekend was. Bijvoorbeeld een regel die werkt met de slotkoers van de dag, terwijl de order al tijdens die dag zou zijn uitgevoerd. Of jaarcijfers die pas weken na het einde van het boekjaar werden gepubliceerd.
Survivorship bias
Als je alleen test op bedrijven die nu nog bestaan of nu in een index zitten, laat je de bedrijven weg die failliet gingen of uit de index vielen. De resultaten zien er dan beter uit dan ze in werkelijkheid zouden zijn geweest.
Backtesting, forward testing en paper trading
Na een backtest volgt vaak een forward test of paper trading op actuele koersen, zonder echt geld. Zo zie je of de regels ook werken op data die de strategie nog niet kende.
Bij forward testing pas je de regels toe op nieuwe koersen terwijl die binnenkomen. Je kunt dat doen in een simulatieomgeving; lees daarover meer in ons artikel over paper trading. Een backtest beantwoordt de vraag "hoe zou dit vroeger hebben gewerkt?", een forward test de vraag "hoe gedraagt dit zich nu?". Geen van beide geeft zekerheid over de toekomst. Ook scenarioanalyse, waarbij je kijkt hoe een portefeuille zou reageren op een bepaalde gebeurtenis zoals een renteschok, is een aanvulling en geen vervanging van een backtest.
De AFM wijst er in haar informatie over beleggen op dat resultaten uit het verleden geen voorspelling zijn voor de toekomst. Een algemene beschrijving van de methode vind je op Wikipedia (Engelstalig).
Veelgestelde vragen
Hoeveel jaar data heb je nodig?
Daar is geen vaste regel voor. Belangrijk is dat de periode verschillende marktfases bevat en dat de strategie genoeg transacties oplevert om iets over het resultaat te kunnen zeggen.
Werkt backtesting ook voor forex en crypto?
Ja, de methode werkt voor elke markt met historische koersdata. Let wel op de specifieke kosten, zoals spreads en financieringskosten, en op de kwaliteit van de data.
Waarom wijkt het echte resultaat vaak af van de backtest?
Door overfitting, onderschatte kosten en slippage, en doordat markten veranderen. Ook speelt emotie mee: in een backtest volg je de regels altijd, in de praktijk niet altijd.
Dit artikel is algemene educatie en geen persoonlijk beleggingsadvies.
Educatief, geen beleggingsadvies. Beleggen kent risico's; je kunt geld verliezen. Hebben personeelsleden of Beleggingsinstituut een positie in een besproken aandeel, dan staat dat bij dat aandeel vermeld.