Hoe je een handelsstrategie backtest
StartpaginaArtikelen

Hoe je een handelsstrategie backtest

Gemiddeld
3w ago
6m

TL;DR

Denk je dat je goede ideeën over de markt hebt, maar weet je niet hoe je ze op de proef moet stellen zonder je geld op het spel te zetten? Leren hoe je handelsideeën kunt backtesten is een dagelijkse bezigheid van een goede systematische trader.

Het onderliggende uitgangspunt van backtesten is dat wat in het verleden werkte, in de toekomst ook kan werken. Maar hoe doe je dat zelf? En hoe moet je de resultaten beoordelen? Laten we een eenvoudig backtesting-proces doorlopen.


Inleiding

Backtesten is een van de belangrijkste onderdelen van het ontwikkelen van je eigen grafiek- en handelsstrategie. Het wordt gedaan door transacties te reconstrueren die in het verleden zouden hebben plaatsgevonden met een systeem dat is gebaseerd op historische gegevens. De resultaten van backtesten zouden je een algemeen idee moeten geven van of een investeringsstrategie effectief is of niet.

Voordat we verder gaan: als je je eigen strategieën wilt backtesten, is Binance Futures een geweldige plek om dit te doen. Als je toegang wil krijgen tot historische gegevens van het platform, vul dan dit aanvraagformulierin.


Wat is backtesten?

Als je dieper wilt ingaan op wat backtesten is, lees dan eerst ons artikel Wat is backtesten?

Kortgezegd is het belangrijkste doel van backtesten om te zien of je handelsideeën geldig zijn. Je gebruikt marktgegevens uit het verleden om te zien hoe een strategie zou hebben gepresteerd. Als de strategie potentieel lijkt te hebben, kan deze ook effectief zijn in een echte handelsomgeving.


Wat te doen voordat je gaat backtesten

Voordat we beginnen met het voorbeeld van backtesten, is er iets dat je voor jezelf moet bepalen: wat voor handelaar ben je? Ben je een discretionaire of systematische handelaar?

Discretionaire handel is gebaseerd op beslissingen: handelaren gebruiken hun eigen oordeel om te bepalen wanneer ze in- en uitstappen. Het is een relatief losse en open strategie, waarbij de meeste beslissingen worden genomen aan de hand van hoe een handelaar de marktomstandigheden beoordeelt. Zoals je zou verwachten, is backtesten minder relevant als het gaat om discretionair handelen, aangezien de strategie niet streng gedefinieerd is.

Dit betekent natuurlijk niet dat als je een discretionaire handelaar bent, je helemaal geen backtest hoeft te doen en niet kan handelen zonder echt geld. Het betekent alleen dat de resultaten mogelijk niet zo betrouwbaar zijn als in een systematische situatie.

Systematisch handelen is namelijk meer van toepassing op dit onderwerp. Systematische traders vertrouwen op een handelssysteem dat precies definieert en aangeeft wanneer ze moeten in- en uitstappen. Hoewel ze de volledige controle hebben over wat de strategie is, worden de in- en uitstapsignalen bepaald door de strategie. Je zou een eenvoudige systematische strategie kunnen inbeelden als volgt:

  • Als A en B tegelijkertijd plaatsvinden, voer je een transactie uit. 
  • Als X daarna gebeurt, stap je uit de transactie.

Sommige handelaren geven de voorkeur aan deze benadering. Het kan emotionele handelsbeslissingen elimineren en een redelijke mate van zekerheid bieden dat een handelssysteem winstgevend is. Garanties zijn er natuurlijk nog steeds niet.

Daarom is het belangrijk om ervoor te zorgen dat je zeer specifieke regels voor het in- of uitstappen in je systeem opneemt. Als de strategie niet goed is gedefinieerd, zijn de resultaten ook inconsistent. Zoals je zou verwachten, is een dergelijke handelsstijl populairder bij algoritmische handel.

Er is backtest-software beschikbaar die je kunt kopen als je automatische backtesten wil uitvoeren. Je kunt je eigen gegevens invoeren en de software zal de backtesting voor je uitvoeren. In dit voorbeeld gaan we echter voor een handmatige backtest-strategie. Het kost wat meer werk, maar het is helemaal gratis.


Hoe backtest je een handelsstrategie

Achter deze link vind je een spreadsheet-sjabloon van Google Spreadsheets. Het is een rudimentair voorbeeld dat je als uitgangspunt kunt nemen om je eigen template te maken. Het geeft je een algemeen idee van welke informatie een backtest kan bevatten. Sommige handelaren geven er de voorkeur aan om Excel te gebruiken of om het in Python te coderen, maar er zijn hier geen strikte regels voor. Je kunt er veel meer gegevens aan toevoegen en al het andere dat je mogelijk nuttig acht.
Datum
Markt
Kant
Instap
Stop-lossTake-profitRisicoRendementP&L

12-08

BTCUSD

Long

$ 18.000

$ 16.200

$ 21.600

10 %

20 %

$ 3.600

12-09

BTCUSD

Short

$ 19.000

$ 20.900

$ 13.300

10 %

30 %

- $ 1.900


Laten we eens een eenvoudige handelsstrategie testen. Dit is ons idee:

  • We kopen één Bitcoin bij de eerste dagelijkse sluiting na een golden cross. We beschouwen een situatie als een golden cross wanneer het 50-daagse voortschrijdend gemiddelde boven het 200-daagse voortschrijdend gemiddelde komt.
  • We verkopen één Bitcoin bij de eerste dagelijkse sluiting na een death cross. We beschouwen een situatie als een death cross wanneer het 200-daagse voortschrijdend gemiddelde onder het 50-daagse voortschrijdend gemiddelde komt.

Zoals je kunt zien, hebben we ook het tijdsbestek gedefinieerd waarin de strategie geldig is. Dit betekent dat we het niet als een handelssignaal beschouwen als er een golden cross op de 4-uursgrafiek wordt gevormd.

In het belang van dit voorbeeld kijken we alleen naar de periode die teruggaat tot begin 2019. Als je echter nauwkeurigere en betrouwbaardere resultaten wilt krijgen, kun je veel verder teruggaan in de prijsactie van Bitcoin.

Laten we nu eens kijken welke handelssignalen dit systeem genereerde tijdens deze periode:

  • Koop @ ~ $ 5.400
  • Verkoop @ ~ $ 9.200
  • Koop @ ~ $ 9.600
  • Verkoop @ ~ $ 6.700
  • Koop @ ~ $ 9.000


Hier zie je hoe onze signalen er ingetekend op de grafiek uitzien:

Golden cross-death cross-strategie. Bron: TradingView.


Onze eerste transactie zou een winst van ongeveer $ 3.800 hebben opgeleverd, terwijl onze tweede transactie resulteerde in een verlies van ongeveer $ 2.900. Dit betekent dat onze gerealiseerde P&L momenteel $ 900 is. 

We hebben ook een openstaande positie die vanaf december 2020 ongeveer $ 9.000 niet-gerealiseerde winst heeft opgeleverd. Als we ons aan onze aanvankelijk gedefinieerde strategie houden, sluiten we deze positie wanneer het volgende death cross plaatsvindt. 



Resultaten van backtesting evalueren

Dus, wat laten deze resultaten zien? Onze strategie zou een redelijk rendement hebben opgeleverd, maar tot dusver laat het niet opvallends zien. We zouden de huidige openstaande positie kunnen sluiten om onze gerealiseerde P&L drastisch te verhogen, maar dat zou het doel van backtesten teniet doen. Als we ons niet aan het plan houden, zijn de resultaten ook niet betrouwbaar.

Hoewel dit een systematische strategie is, is het ook de moeite waard om de context in overweging te nemen. De onrendabele transactie van $ 9.600 naar $ 6.700 vond plaats ten tijde van de COVID-19-crash van maart 2020. Zo’n Black Swan-gebeurtenis kan grote invloed hebben op elk handelssysteem. Dit is nog een reden waarom het de moeite waard is om verder terug te gaan om te zien of dit verlies een uitschieter is of slechts een bijproduct van de strategie.
In elk geval is dit hoe een eenvoudige backtest eruit kan zien. Deze strategie kan veelbelovend zijn als we terug in de tijd gaan en testen met meer gegevens of andere technische indicatoren om de signalen die de strategie produceert mogelijk sterker te maken.

Maar wat kunnen resultaten van backtesten je nog meer laten zien?

  • Volatiliteitsmaatregelen: de maximale opwaartse en neerwaartse beweging.
  • Blootstelling: het kapitaal als percentage van je portfolio dat je moet toewijzen aan de strategie.
  • Rendement op jaarbasis: het procentuele rendement van de strategie in één jaar.
  • Win-loss ratio: hoeveel van de transacties resulteren in winst en hoeveel in verlies.
Dit zijn slechts enkele voorbeelden en het is geen alomvattende lijst. Welke statistieken je wilt bijhouden, is geheel aan jou. In elk geval: hoe meer gegevens je bijhoudt over je transacties, hoe meer mogelijkheden je hebt om te leren van de resultaten. Sommige handelaren zijn erg streng met hun backtesten en dit wordt ook weerspiegeld in hun resultaten.
Een laatste aspect om te overwegen, is optimalisatie. Als je ons artikel over backtesten hebt gelezen, weet je het verschil tussen backtesten en forward testen, oftewel handelen zonder echt geld. Het kan handig zijn om je ideeën te testen en te optimaliseren in een realtime-handelsomgeving zoals het Binance Futures-testnet.


Tot slot

We hebben het basisproces doorlopen voor het uitvoeren van een handmatige backtest van een handelsstrategie. Onthoud dat in het verleden behaalde resultaten geen garantie zijn voor toekomstige prestaties. 

Marktomgevingen veranderen en je moet je aan die veranderingen aanpassen als je je resultaten wilt verbeteren. Over het algemeen is het ook handig om de gegevens niet blindelings te vertrouwen. Gezond verstand kan een verrassend handig hulpmiddel zijn bij het evalueren van resultaten. 

Heb je nog meer vragen over backtesting en crypto? Ga dan naar ons Q&A-platform, Ask Academy, waar de Binance-community al je vragen graag zal beantwoorden.