Handlare som är ivriga att pröva en handelsidé på en levande marknad gör ofta misstaget att helt lita på backtestresultat för att avgöra om systemet kommer att vara lönsamt. Även om backtesting kan ge handlare värdefull information, är det ofta vilseledande, och det är bara en del av utvärderingsprocessen.
Provning utan provtagning och framåtriktad prestandatestning ger ytterligare bekräftelse beträffande systemets effektivitet och kan visa ett systems verkliga färger innan riktiga kontanter är på raden. God korrelation mellan backtesting, out-of-sample och framåtprövningsresultat är avgörande för att bestämma ett handelssystemets livskraft.
Grunder för backtesting
Backtesting avser att tillämpa ett handelssystem på historiska data för att verifiera hur ett system skulle ha presterat under den angivna tidsperioden. Många av dagens handelsplattformar stödjer backtesting. Handlare kan testa idéer med några tangenttryckningar och få insikt i effektiviteten hos en idé utan att riskera pengar på ett handelskonto. Backtesting kan utvärdera enkla idéer, till exempel hur en rörlig medelövergång skulle fungera på historiska data, eller mer komplexa system med en mängd inmatningar och triggers.
Så länge en idé kan kvantifieras, kan den testas tillbaka. Vissa handlare och investerare kan söka kompetens hos en kvalificerad programmerare för att utveckla idén till en testbar form. Vanligtvis involverar detta en programmerare som kodar idén till det proprietära språket som är värd för handelsplattformen. Programmeraren kan inkludera användardefinierade inmatningsvariabler som gör det möjligt för näringsidkaren att "finjustera" systemet.
Ett exempel på detta skulle vara i det enkla rörliga medelövergångssystemet som nämns ovan: Handlaren skulle kunna mata in (eller ändra) längderna på de två rörliga medelvärdena som används i systemet. Näringsidkaren kunde backtest för att bestämma vilka längder av rörliga medelvärden som skulle ha presterat bäst på historiska data.
Optimeringsstudier
Många handelsplattformar möjliggör också optimeringsstudier. Detta innebär att man anger ett intervall för den angivna ingången och låter datorn "göra matematiken" för att ta reda på vilken ingång som skulle ha bäst bäst. En optimering med flera variabler kan göra matematiken för två eller flera variabler för att bestämma vilka kombinationer som skulle ha uppnått det bästa resultatet.
Till exempel kan handlare berätta för programmet vilka input de vill lägga till i sin strategi; dessa skulle sedan optimeras till deras idealvikter med tanke på de testade historiska data.
Backtesting kan vara spännande eftersom ett ofördelaktigt system ofta magiskt kan förvandlas till en pengar som gör pengar med några optimeringar. Tyvärr leder en justering av ett system för att uppnå största möjliga nivå av tidigare lönsamhet ofta till ett system som kommer att prestera dåligt i verklig handel. Denna överoptimering skapar system som bara ser bra ut på papper.
Kurvanpassning är användningen av optimeringsanalys för att skapa det högsta antalet vinnande affärer med största vinst på de historiska data som använts under testperioden. Även om det ser imponerande ut i backtestresultat leder kurvmontering till opålitliga system eftersom resultaten i huvudsak är specialdesignade för den specifika datan och tidsperioden.
Backtesting och optimering ger många fördelar för en näringsidkare, men detta är bara en del av processen när man utvärderar ett potentiellt handelssystem. Nästa steg för en näringsidkare är att tillämpa systemet på historiska data som inte har använts i den första backtestingfasen.
I-prov kontra data utan prov
När man testar en idé om historiska data är det fördelaktigt att reservera en tidsperiod med historisk data för teständamål. De ursprungliga historiska data som idén testas och optimeras benämns data i provet. Datauppsättningen som har reserverats är känd som data utan prov. Denna installation är en viktig del av utvärderingsprocessen eftersom den ger ett sätt att testa idén på data som inte har varit en del av optimeringsmodellen.
Som ett resultat kommer idén inte påverkas på något sätt av data utan provtagning, och näringsidkare kommer att kunna avgöra hur bra systemet kan fungera på nya data, dvs i verklig handel.
Innan återförsäljare startar eller optimerar kan handlare avsätta en procentandel av de historiska uppgifterna som ska reserveras för provtagning utanför provet. En metod är att dela upp de historiska uppgifterna i tredjedelar och segregera en tredjedel för användning i testet utan prov. Endast data i provet bör användas för den första testningen och för eventuell optimering.
Figuren nedan visar en tidslinje där en tredjedel av de historiska uppgifterna är reserverade för provtagning utanför provet och två tredjedelar används för provtagningen. Även om figuren nedan visar data utanför provet i början av testet, skulle typiska förfaranden ha delen utan provet omedelbart före framåtprestanda.
En tidslinje som representerar den relativa längden på in-sample och out-of-sample-data som används i backtestingprocessen. Bild av Julie Bang © Investopedia 2020
Korrelation hänvisar till likheter mellan föreställningarna och de övergripande trenderna för de två datauppsättningarna. Korrelationsstatistik kan användas för att utvärdera strategiprestationsrapporter som skapats under testperioden (en funktion som de flesta handelsplattformar tillhandahåller). Ju starkare korrelationen mellan de två, desto bättre är sannolikheten för att ett system kommer att prestera bra vid framåtriktad testning och livehandel.
Figuren nedan illustrerar två olika system som testades och optimerades på data i provet och sedan tillämpades på data utan provtagning. Diagrammet till vänster visar ett system som tydligt var kurvanpassat för att fungera bra på in-sample-data och som fullständigt misslyckades med data utan provtagning. Diagrammet till höger visar ett system som fungerade bra på både in- och out-of-sample-data.
Två aktiekurvor. Handelsdata före varje gul pil representerar test i provet. De affärer som genererats mellan de gula och röda pilarna indikerar tester utan prov. Handlarna efter de röda pilarna kommer från framåtprövningsfaserna.
När ett handelssystem har utvecklats med hjälp av in-sample-data är det redo att appliceras på out-of-sample-data. Näringsidkare kan utvärdera och jämföra resultat mellan data i urvalet och ur provtagningen.
Om det finns liten korrelation mellan in-sample och out-of-sample-testning, som det vänstra diagrammet i figuren ovan, är det troligt att systemet har varit överoptimerat och inte kommer att fungera bra i live trading. Om det finns stark korrelation i prestandan, som framgår av det högra diagrammet, innebär nästa fas av utvärderingen en ytterligare typ av provtagning utanför provet, känd som framåtprestningstest.
Grunder för framtida prestationstest
Framåtriktad prestandatestning, även känd som pappershandel, ger handlare en annan uppsättning out-of-sample-data för att utvärdera ett system. Test av framåtriktad prestation är en simulering av faktisk handel och innebär att systemets logik följs på en levande marknad. Det kallas också pappershandel eftersom alla affärer endast utförs på papper; det vill säga, handelsinmatningar och utgångar dokumenteras tillsammans med någon vinst eller förlust för systemet, men inga verkliga affärer genomförs.
En viktig aspekt av framåtprestning är att följa systemets logik exakt; annars blir det svårt, om inte omöjligt, att exakt utvärdera detta steg i processen. Näringsidkare bör vara ärliga när det gäller handelsposter och utgångar och undvika beteenden som körsbärsplockning eller inte inkludera en handel på papper som rationaliserar att "Jag skulle aldrig ha tagit den handeln." Om handeln skulle ha skett efter systemets logik, bör den dokumenteras och utvärderas.
Många mäklare erbjuder ett simulerat handelskonto där handel kan placeras och motsvarande vinst och förlust beräknas. Genom att använda ett simulerat handelskonto kan du skapa en semi-realistisk atmosfär att öva på handeln och ytterligare utvärdera systemet.
Figuren ovan visar också resultaten för framåtprestning på två system. Återigen misslyckas systemet som visas i det vänstra diagrammet att göra långt utöver den inledande testningen på data i provet. Systemet som visas i det högra diagrammet fortsätter dock att fungera bra genom alla faser, inklusive framåtprestningstestet. Ett system som visar positiva resultat med god korrelation mellan in-sample, out-of-sample och forward performance-testning är redo att implementeras på en live-marknad.
Poängen
Backtesting är ett värdefullt verktyg som finns tillgängligt i de flesta handelsplattformar. Att dela historiska data i flera uppsättningar för att tillhandahålla in-sample och out-of-sample-testning kan ge handlare ett praktiskt och effektivt sätt att utvärdera en handelsidé och ett system. Eftersom de flesta handlare använder optimeringstekniker vid backtesting är det viktigt att sedan utvärdera systemet på rena data för att bestämma dess livskraft.
Att fortsätta testen utan prov med framtida prestandatest ger ytterligare ett lager av säkerhet innan man sätter ett system på marknaden och riskerar riktiga kontanter. Positiva resultat och god korrelation mellan backtestning i urval och ur provtagning och framåtriktat resultat ökar sannolikheten för att ett system kommer att fungera bra i faktisk handel.
