En backtest er den mest overbevisende løgnen i trading. Egenkapitalkurven peker oppover og mot høyre, vinnerraten ser sunn ut, og nedgangene føles overkommelige. Så handler du live, og fortrinnet fordamper stille og rolig. Dette er ikke uflaks. Backtester overvurderer live-resultater på systematiske, forutsigbare måter, og når du først kjenner feilmodusene, slutter du å bli overrasket av dem.

Dette innlegget forutsetter at du allerede vet hvordan man kjører en backtest. Hvis ikke, start med følgeguiden om hvordan man backtester en tradingstrategi, som dekker mekanikken, utvalgsstørrelse og fremoverstesting. Her går vi dypere inn i et vanskeligere spørsmål: hvorfor tallet en backtest gir deg, nesten alltid er bedre enn tallet du faktisk kommer til å tjene.

En Backtest Er et Beste Tilfelle, Ikke et Estimat

Kjerneproblemet er at en backtest ikke er en nøytral måling. Det er resultatet av en prosess der du tok dusinvis av små valg, og hvert eneste av disse valgene hadde en sjanse til å lekke optimisme inn i resultatet. Du valgte markedet, perioden, indikatoren, parametrene, exit-punktet. Hver beslutning ble tatt med en viss kunnskap om hva som fungerte. Den kunnskapen er kontamineringen.

Statistisk sett er resultatet du sitter igjen med ikke et tilfeldig utvalg fra fordelingen av mulige utfall. Det er maksimumet av mange støyete trekninger. Når du velger den beste av hundre ting, måler du ikke ferdighet, du måler den øvre halen av flaks. Det som følger er en katalog over mekanismene som produserer denne oppadgående skjevheten.

Fem måter en backtest overvurderer live-resultater

SkjevhetHvordan den blåser opp resultatetHvordan avdekke denLøsning
OverlevelsesskjevhetTester bare aktiva som overlevde til i dagSjekk om universet er punkt-i-tidBruk et datasett som inkluderer strøkne noteringer
Fremoverskuende dataBruker data som ikke var kjent på handelstidspunktetSpor hvert signal tilbake til tidsstempeletForsink dataene; fyll på neste bar
OvertilpasningBeste av mange justerte kjøringer ser flott ut på grunn av flaksTell parametrene og forsøkene dineFærre parametre; testing utenfor utvalget
KostnadsblindhetIgnorerer spread, slippage, kurtasjeRegn alt om netto etter reelle kostnaderModeller rundturkostnad per handel
RegimeavhengighetKodifiserer én markedsepoke som en markedslovMerk deg rente- og volatilitetsregimet som testesTest på tvers av bull, bear og høy volatilitet

De Fem Måtene Tallet Lyver

1. Overlevelsesskjevhet: Du Testet Bare Vinnerne

Anta at du backtester en enkel idé: kjøp dippen på S&P 500-aksjer. Du henter dagens indeksmedlemmer, laster ned deres kurshistorikk, og simulerer kjøp ved hver 10 %-nedgang. Resultatene er fremragende, fordi strategien ser ut til alltid å komme seg. Det gjør den ikke. Den ser bare slik ut fordi hvert selskap i testen din overlevde til å være i indeksen i dag.

S&P 500 erstatter omtrent 20 til 25 selskaper i året. Over en 20-årig backtest utgjør det flere hundre endringer i sammensetningen du aldri ser. Testen din kjøpte aldri dippen på Lehman Brothers, Bear Stearns, Enron eller Washington Mutual, fordi de dippet og fortsatte nedover helt til de ble strøket fra og fjernet fra indeksen. Strategien ble aldri eksponert for taperne. Konklusjonen om at "dipper alltid kommer seg" var innbakt i konstruksjonen av universet, ikke oppdaget i dataene. Punkt-i-tid-data som inkluderer strøkne navn er den eneste ærlige løsningen.

2. Fremoverskuende Skjevhet: Å Bruke Informasjon Du Ikke Hadde

Fremoverskuende skjevhet betyr at simuleringen din brukte informasjon som ikke var tilgjengelig på handelsøyeblikket. Den subtile, vanlige varianten er en timingfeil. Si at regelen din er "kjøp når daglig sluttkurs krysser over 50-dagers glidende gjennomsnitt," og backtesten din fyller kjøpet til samme dags sluttkurs. I virkeligheten kan du ikke vite sluttkursen før økten er over, og innen da er den eneste kursen du kan handle til, neste åpning, som kan gappe mot deg. Å fylle til signalkursen i stedet for neste tilgjengelige kurs kan skape et fortrinn som ikke eksisterer.

Den andre klassiske varianten er reviderte data. Selskapsresultater blir revidert. Hvis backtesten din bruker det endelige, reviderte EPS-tallet som ligger i databasen i dag, handler den på tall som ikke var kjent på handelsdatoen, da bare det først rapporterte tallet eksisterte. Regelen er enkel å formulere og enkel å bryte: hver inndata må forsinkes til det som var kjent på det tidspunktet.

3. Overtilpasning og Fellen med Flere Sammenligninger

Mekanikkguiden dekker grunnleggende kurvetilpasning. Det dypere problemet er statistisk. Hvis du tester 200 parameterkombinasjoner og bedømmer hver mot en 5 %-signifikansterskel, vil omtrent 10 av dem se "signifikante" ut rent tilfeldig, selv om ingen av dem har noe reelt fortrinn. Å velge kjøringen som ser best ut, er ikke å finne den gode. Det er å finne den heldigste.

En strategi med 12 optimaliserte parametre har nok frihetsgrader til å tilpasses nesten enhver historisk kursserie. Den har ikke lært en regel om markeder, den har memorert den spesifikke støyen i utvalget ditt. Den ærlige tommelfingerregelen følger direkte: jo flere parametre du justerte og jo flere kombinasjoner du prøvde, desto større rabatt bør du legge på resultatet. Et rent tre-parameters system som ble testet én gang, fortjener mer tillit enn et tolv-parameters system som var vinneren av en tusen-kjørings optimalisering.

4. Kostnadsblindhet ved Transaksjoner

Spreader, slippage og kurtasje belastes per handel, så de akkumuleres med frekvens. En backtest som forutsetter null kostnad, modellerer ikke strategien din, den modellerer en fantasiversjon som handler gratis. Vurder et kortsiktig system med et tynt bruttofortrinn på 0,10 % per rundtur-handel og en realistisk rundturkostnad på 0,12 % når du legger til spread, slippage og kurtasje. Grafen under viser brutto avkastning mot netto avkastning etter hvert som antall handler stiger, med enkel summert avkastning for tydelighets skyld.

Samme strategi, brutto vs netto: et tynt fortrinn som kostnadene spiser opp

Se hva som skjer. Ved 1000 handler i året viser den brutto backtesten en spektakulær avkastning på 100 %, mens det reelle, kostnadsjusterte resultatet er minus 20 %. Jo mer denne strategien handler, desto bedre ser backtesten ut, og desto mer reelle penger taper den, fordi fortrinnet per handel aldri overlevde kostnaden per handel. Dette er grunnen til at det samme forførende 40 %-brutto høyfrekvenssystemet kan være solid negativt netto. Kostnader forvrenger også stille og rolig risiko-avkastningsforholdene en backtest rapporterer, siden hver betalt spread krymper den reelle gevinsten på hver vinner.

5. Regimeavhengighet

En strategi backtestet fra 2010 til 2021 ble testet nesten utelukkende innenfor ett enkelt markedsregime: null rente, kvantitative lettelser, lav volatilitet, og det lengste bull-markedet i historien. I den verdenen kom dippene seg og trendene fortsatte, så et mean-reversion- eller trendfølgende system som "lærte" den atferden, kodifiserer egentlig bare regimet som om det var en permanent markedslov. Så kom 2022 med renteøkninger, et bear-marked og forhøyet volatilitet, og strategien møtte forhold den aldri hadde sett. En backtest begrenset til én epoke forteller deg hvordan en strategi gjorde det i den epoken, og nesten ingenting om hvordan den håndterer den neste.

Hvor Mye Bør Du Rabattere en Backtest?

Du kan ikke fjerne denne skjevheten helt, men du kan prise den inn. Behandle hovedtallet som et tak og trekk fra basert på hvordan testen ble bygget. Jo skitnere prosessen, desto dypere rabatt.

Hvor mye du bør rabattere en backtest før du tror på den

Backtest-egenskapRealistisk behandlingHvorfor
Kun in-sample, ett markedsregimeKraftig rabatt eller forkastDen har aldri sett en annen verden
10+ optimaliserte parametreKraftig rabattDen har trolig memorert utvalget
Kostnader antatt null eller ignorertKan snu fortegnetNetto er det eneste tallet du beholder
Overlevelsesskjevhetsfritt universModerat rabattTaperne ble stille fjernet
Ut-av-utvalg, walk-forward, realistiske kostnaderLett rabatt, verifiser fortsatt liveDet nærmeste ærlig du kan komme

Hva Faktisk Hjelper

Ingenting av dette betyr at backtesting er unyttig. Det betyr at en backtest er et filter som fjerner dårlige ideer, ikke et løfte om gode. Noen praksiser innsnevrer meningsfullt gapet mellom backtesten og virkeligheten. Reserver ut-av-utvalg-data modellen aldri berørte, og bruk walk-forward-testing. Rabatter aggressivt etter antall parametre. Test bevisst på tvers av ulike regimer, inkludert de stygge. Og bekreft at live-utførelse faktisk kan oppnå fyllingene og posisjonsstørrelsene backtesten forutsatte, fordi et system som stille avhenger av perfekte inngangspunkter eller ignorerer posisjonsstørrelsesreglene dine, vil oppføre seg svært annerledes med ekte penger på spill.

Det siste filteret er papirhandel, deretter liten live-handel. En backtest lever i en verden uten tapte fyllinger, ingen følelser og ingen overraskelser. Reell utførelse er den eneste testen som inkluderer alle tre.

Viktige Poenger

  • En backtest er den beste av mange støyete forsøk, så den er skjevfordelt oppover før du i det hele tatt leser den.
  • Overlevelsesskjevhet tester bare aktivaene som overlevde; fremoverskuende skjevhet handler på informasjon du ikke hadde.
  • Overtilpasning skalerer med antall parametre og antall kombinasjoner prøvd, så rabatter deretter.
  • Kostnader belastes per handel og kan snu en stor bruttoavkastning solid negativ netto.
  • En backtest for ett enkelt regime kodifiserer det regimet som en lov og brytes sammen når regimet endres.
En backtest forteller deg at en strategi ville ha fungert. Den forteller deg aldri at den vil. Gapet mellom disse to setningene er der de fleste tradingkontoer går for å dø.

Ansvarsfraskrivelse: Dette innholdet er kun for utdanningsformål og utgjør ikke finansiell rådgivning. Trading innebærer betydelig risiko for tap. Historisk avkastning garanterer ikke fremtidige resultater.