Backtestning anvender specificerede regler på historiske data under en udførelsesmodel. Den estimerer, hvad denne model ville have givet, ikke hvad en virkelig konto med sikkerhed ville have tjent.

1. Skriv regler, som en anden person kan reproducere

Definer instrumentet, datakilden, sessionen, signalets timing, indgangs- og udgangsordrer, metode til fastsættelse af mængde, omkostninger og betingelser for ikke at handle. Angiv, om et signal bruger en afsluttet bar. Versionsstyr reglerne, før evalueringen køres.

For et crossover-eksempel skal du angive gennemsnitstypen og perioderne, hvilken bar der bekræfter krydset, og det tidligste efterfølgende tidspunkt for ordren. “Køb ved crossover” efterlader vigtige antagelser om udførelse uafklarede.

2. Kontrollér de data, du kunne have kendt

Undersøg manglende barer, ændringer i tidszoner, justeringer for selskabshandlinger og rolls på terminskontrakter. En aktuel liste over aktier, der stadig findes, er ikke nødvendigvis det historiske univers. Økonomiske offentliggørelser og virksomhedstal kan være blevet revideret efter testdatoen.

Værdier fra højere tidsrammer og bekræftede swingpunkter kan indføre fremtidig information, hvis de bruges for tidligt. Bevar dataversionen og testindstillingerne, så resultatet kan reproduceres.

3. Modellér ordrer og omkostninger

En bar, der indeholder både target og stop, fortæller ikke, hvilken der blev ramt først. Brug finere data, hvor det er relevant, eller dokumentér en konservativ regel for tvivlstilfælde. At en limitkurs berøres garanterer ikke tilgængelig mængde eller udførelse.

Medtag den faktiske gebyrstruktur og et begrundet interval af antagelser om ugunstig udførelse. Der findes ikke en universel tilladt slippage på en til to ticks, der passer til enhver ordre, ethvert instrument og enhver begivenhed. TradingViews strategidokumentation forklarer, hvordan én mægleremulator håndterer ordrer og begrænsninger ved test; andre værktøjer kan afvige.

4. Gennemgå sekvensen, ikke kun totalen

Registrér tidsstempler for indgang og udgang, udførelser, mængder, omkostninger, åben eksponering og årsager til ordrer, der blev sprunget over eller afvist. Undersøg nettoforventning, drawdown og afhængighed af få outliers sammen med vindrate og profitfaktor.

En vindrate på 45% med gennemsnitlige bruttogevinster, der er dobbelt så store som de gennemsnitlige tab, har positiv bruttoforventning i denne model. Omkostninger eller forskellige realiserede resultater pr. handel kan vende det. Et fast targetforhold er ikke det samme som en observeret gennemsnitlig gevinst.

5. Hold evaluering adskilt fra udvælgelse

Brug én del af dataene til at udvikle regler og en separat del til at evaluere dem. Gentagen tuning på den anden del gør den til endnu et udviklingsdatasæt. Registrér, hvor mange varianter der blev afprøvet, og medtag ugunstige perioder.

Ingen tærskel på 100 handler skaber i sig selv statistisk signifikans. Afhængighed mellem handler, variabilitet i resultatet pr. handel og markedsdækning har betydning. Se usikkerhed om stikprøvestørrelse.

Fremadrettet simulering kan derefter kontrollere timing og arbejdsgang for ordrer på nyligt ankomne data. Det er fortsat simulering, og et godt resultat kræver ikke en prøve med rigtige penge. Sæt straks på pause ved et sikkerheds- eller implementeringsproblem i stedet for at fortsætte blot for at nå et antal.

Risikofraskrivelse: Handel indebærer betydelig risiko for tab. Tidligere resultater er ikke udtryk for fremtidige resultater. Se vores fulde risikofraskrivelse.