UTC
NL
ForexForStarters.com

Biases bij backtesting (overfitting, lookahead, survivorship)

Je hebt wekenlang je strategie gebacktest. De resultaten zien er ongelooflijk uit: een winrate van zeventig procent, een profit factor van drie en nauwelijks drawdown. Je bent klaar om live te gaan en rijk te worden. Dan slaat de realiteit toe. De strategie verliest vanaf de eerste dag geld.

Risicowaarschuwing: Deze inhoud is uitsluitend educatief en geen financieel advies. Forex trading brengt risico’s mee en je kunt geld verliezen.

Equitycurve
MAX. DRAWDOWN −6%EQUITYCURVE · VOORBEELD

Bias bij backtesting

Wat ging er mis? Hoogstwaarschijnlijk was je backtest besmet met biases. Dat zijn systematische fouten in je testproces waardoor de resultaten er beter uitzien dan ze in werkelijkheid zijn. Wil je dat je backtest iets betekent, dan moet je deze biases begrijpen.

Deze pagina behandelt de drie schadelijkste biases en hoe je ze vermijdt.

Overfitting: wat is het?

Overfitting betekent dat je je strategie zo perfect hebt afgestemd op data uit het verleden dat ze alleen nog op die specifieke data werkt. Je voegt regel na regel en filter na filter toe, tot je strategie elke historische verliestrade vermijdt en elke winnaar pakt. Het resultaat ziet er geweldig uit op de oude grafiek, maar het heeft nul voorspellende waarde voor de toekomst.

Vergelijk het met het uit je hoofd leren van de antwoorden van het examen van vorig jaar. Op dat examen scoor je honderd procent, maar voor het nieuwe examen zak je, omdat de vragen anders zijn.

Hoe overfitting ontstaat

  • Je merkt dat je strategie op maandag verliest, dus je voegt een regel toe: niet traden op maandag.
  • Je merkt dat ze verliest als de RSI tussen 40 en 60 staat, dus je voegt een filter toe: alleen traden als de RSI boven 60 of onder 40 staat.
  • Je merkt dat ze in maart verliest op GBP/JPY, dus je sluit die periode uit.
  • Je blijft voorwaarden toevoegen tot de backtest foutloos is.

Elke regel die je toevoegt, laat de strategie strakker passen op de data uit het verleden, maar elke regel maakt het ook minder waarschijnlijk dat ze op nieuwe data werkt. De strategie vangt geen echte voorsprong (edge) in de markt; ze vangt ruis en toeval uit één specifieke periode.

Zo voorkom je overfitting

  • Houd de regels van je strategie eenvoudig. Maximaal drie tot vijf regels. Heb je tien regels nodig om het te laten werken, dan is de strategie waarschijnlijk overfit.
  • Out-of-sample testen. Verdeel je historische data in twee helften. Ontwikkel de strategie op de eerste helft en test haar daarna op de tweede helft zonder iets te veranderen. Werkt ze dan nog steeds, dan is de edge waarschijnlijker echt.
  • Forward testing. Test de strategie in realtime op een demo account. Overfitte strategieën falen snel onder live omstandigheden. Zie /nl/strategieen/backtesting/forward-testing/.
  • Wees achterdochtig bij perfecte resultaten. Echte strategieën hebben rommelige equitycurves met drawdowns en verliesreeksen. Ziet die van jou er te netjes uit, dan is je strategie waarschijnlijk overfit.

Lookahead bias: wat is het?

Lookahead bias ontstaat als je backtest informatie gebruikt die op het moment van de trade nog niet beschikbaar was. Je gluurt in feite in de toekomst en gebruikt die kennis om beslissingen te nemen, wat bij realtime traden onmogelijk is.

Hoe lookahead bias ontstaat

  • Je ziet op de grafiek dat een supportniveau standhield, dus je noteert een kooptrade op dat niveau. Maar in realtime had je niet geweten dat het niveau zou standhouden. Het had ook kunnen breken.
  • Je gebruikt een indicatorwaarde die opnieuw wordt berekend op basis van toekomstige data. Sommige indicatoren repainten: hun signalen veranderen nadat de candle is gesloten.
  • Je stapt in op de exacte low van een candle, iets wat op historische data zichtbaar is maar in realtime bijna niet uit te voeren is.
  • Je gebruikt data van het einde van de dag voor een beslissing die aan het begin van de dag had moeten vallen.

Zo voorkom je lookahead bias

  • Scrol één candle tegelijk vooruit. Kijk tijdens je backtest nooit verder dan de huidige candle als je een tradingbeslissing neemt.
  • Zorg dat je indicatoren niet repainten. Test ze op een live grafiek om dat te bevestigen.
  • Stap in op de open van de volgende candle na het signaal, niet tegen de best mogelijke prijs binnen de signaalcandle.
  • Backtest je handmatig, dek dan de rechterkant van de grafiek af, zodat je niet kunt zien wat er daarna gebeurt.

Survivorship bias: wat is het?

Survivorship bias ontstaat als je je strategie alleen test op instrumenten of data die vandaag nog bestaan en de instrumenten negeert die zijn verdwenen. Bij aandelen is dat een groot probleem, omdat bedrijven failliet gaan en van de beurs verdwijnen. Bij forex is het minder ernstig, maar nog steeds relevant.

Hoe survivorship bias bij forex ontstaat

  • Je test je strategie op valutaparen die nu populair en liquide zijn, maar sommige van die paren waren jaren geleden misschien minder liquide. Je backtest gaat ervan uit dat ze altijd makkelijk te traden waren.
  • Je test niet op paren met extreme gebeurtenissen of afwijkingen (zoals de Zwitserse frankschok in januari 2015), omdat het uitschieters zijn. Maar die gebeurtenissen zijn echt en je strategie moet ze overleven.
  • Je test alleen op de paren waarvan je al had gemerkt dat de strategie lijkt te werken en negeert de paren waar dat niet zo is. Dat is een vorm van selection bias die nauw verwant is aan survivorship bias.

Zo voorkom je survivorship bias

  • Test op een brede selectie paren, ook paren die niet ideaal lijken voor de strategie. Werkt de strategie maar op twee van de twintig paren, dan is de edge misschien niet echt.
  • Neem crisisperiodes op in je data. De Zwitserse frankschok van 2015, de crash door de pandemie in 2020 en andere extreme bewegingen horen in je testdata.
  • Sluit verliesperiodes of uitschieters niet uit alleen omdat ze er slecht uitzien.

Andere biases om op te letten

  • Confirmation bias (bevestigingsbias). Je gelooft dat je strategie werkt, dus je interpreteert twijfelachtige setups onbewust als geldige entries terwijl ze op het randje zijn. Wees meedogenloos met je regels.
  • Selection bias. De strategie alleen testen onder de marktomstandigheden waarin je denkt dat ze werkt (alleen tijdens trends, alleen tijdens ranges). Een robuuste strategie moet onder alle omstandigheden getest worden.
  • Bias door datakwaliteit. Slechte historische data gebruiken met ontbrekende candles, verkeerde koersen of fouten in de tijdzone. Controleer altijd of je databron betrouwbaar is. Platformen zoals TradingView en MetaTrader 4 bieden over het algemeen degelijke historische data om te backtesten.

Het beste backtestproces bevat deze waarborgen

  1. Schrijf duidelijke, ondubbelzinnige regels op voordat je begint.
  2. Gebruik een dataset die groot genoeg is (minstens één jaar, liefst twee of meer).
  3. Verdeel de data in een in-sampleperiode om te ontwikkelen en een out-of-sampleperiode om te valideren.
  4. Houd de strategie eenvoudig, met weinig regels.
  5. Scrol één candle tegelijk vooruit en kijk niet vooruit.
  6. Neem uiteenlopende marktomstandigheden en crisisperiodes mee.
  7. Volg het op met forward testing op een demo account.

Volg je deze stappen, dan worden je backtestresultaten veel betrouwbaarder en verloopt je overstap naar live traden soepeler.