Blog
Noter fra strategifabrikken

Din backtests dollar var USDC. Den 11. marts handles den til 87 cent.
Vi mærkede equity-kurven i dollar. Kontoen var i USDC, og den lørdag var USDC ikke en dollar.
Læs indlægget →
Hvordan varmer du en backtest op uden at tælle lookback med som performance?
Ufærdige indikatorer, beskårne kurver der beholder deres positioner, og 30-dages opvarmninger på 8-timers features. Genstartstjekket, der fanger dem.
Læs indlægget →
Vi backtestede på Binance og paper-handlede på Bybit. Edge'en var lagget.
Vi researchede BTC på Binance og paper-handlede den på Bybit. Backtesten var ikke optimistisk. Den kiggede på et hurtigere tape.
Læs indlægget →
Sikringen, der fordoblede handelsomkostningerne i vores backtest
Optionshandlerne var få. Sikringen blev handlet, hver gang det underliggende aktiv rykkede sig. Sådan fandt vi de manglende omkostninger i en optionsbacktest.
Læs indlægget →
Din short tjente på backtesten. Auto-deleveraging lukkede den alligevel.
Likvidation sker, når din margin slipper op. ADL sker, når deres slipper op, mens det er dig, der tjener penge.
Læs indlægget →
Signalet havde ret. Vores optionsbacktest købte den forkerte udløbsdato.
Signalet pegede på et call spread. Backtesten valgte en udløbsdato, der så likvid ud i bagklogskabens lys. Vi sporede uoverensstemmelsen til et diskret kalenderjoin.
Læs indlægget →
Din options-backtest brugte en midpris, der aldrig blev handlet
En midtpunktskurs kan være et fornuftigt værdiestimat og en elendig antagelse om eksekvering. Her er tre måder, hvorpå den forskel i det stille skaber afkast i options-backtests.
Læs indlægget →
Hvorfor bliver mine optionsdata ved med at blive erstattet i backtesten?
Den samme optionsstrategi kan give forskellige resultater på »den samme« historik. Sådan finder du ud af, om markedet har ændret sig i dit arkiv, og hvad du skal gemme, så næste kørsel kan forklares.
Læs indlægget →
Din backtests Sharpe kan stige, når du tilføjer flere markeder
Et bredere markedsunivers ligner diversificering. Under strategisøgningen kan det også være endnu en runde forsøg. Sådan skelner du mellem de to.
Læs indlægget →
Hvorfor ser min backtest bedre ud med hyppigere rebalancering?
Daglig rebalancering kan indfange et signal tidligere, men også bruge hele fordelen på at gøre det. Sådan måler du, om den ekstra handel kan betale sig.
Læs indlægget →
Din strategis Sharpe-ratio kan blive bedre, når dens data bliver dårligere
Et mistænkeligt tick kan være en fejlregistrering eller den ene observation, der afslører strategiens skrøbelighed. Dataoprydning kræver et revisionsspor, ikke kun en pænere aktiekurve.
Læs indlægget →
Vi genopbyggede en backtest, efter at en dataleverandør ændrede sin historik
Den samme strategikode og datoperiode gav en anden equity-kurve seks uger senere. Vi sporede afvigelsen til reviderede markedsdata og genopbyggede derefter eksperimentet, så vi kunne se, hvad der havde ændret sig.
Læs indlægget →
Din strategi blev testet 240 gange. Hvor mange backtests kørte du egentlig?
Du afprøvede 240 parametersæt og beholdt vinderen. Dens Sharpe er 2.1. Det vigtige spørgsmål er, hvor mange chancer du gav støjen for at ligne en edge.
Læs indlægget →
Strategien virkede, indtil vi tog betaling for at rulle en futuresposition
Vores kalenderspread så problemfrit ud, indtil den forreste kontrakt udløb. Så rullede backtesten en position til en pris, ingen kunne handle til.
Læs indlægget →
Rebalanceringen så billig ud, indtil vi talte spreadet med
Backtesten beregnede 4 basispoint i gebyrer. Spreadet og markedspåvirkningen bragte rebalanceringen over 20. Sådan fandt vi den manglende omkostning.
Læs indlægget →
Hvordan backtester jeg en strategi, der handler på et dagligt signal?
En dagsbar giver dig en pris og en dato, men fortæller ikke, hvornår din strategi kendte lukkekursen. Sådan backtester du daglige signaler uden at give dem en urealistisk udførelsespris.
Læs indlægget →
Vi lod en AI-researchagent optimere en strategi. Dagbogen var mindre imponerende.
Agenten fandt en strategi med en Sharpe på 4.1. Så talte vi forsøgene, frøs søgningen og så resultatet skrumpe ind til noget, vi faktisk kunne evaluere.
Læs indlægget →
Din AI-researchagent har set testsættet: 3 måder, resultatet bliver forurenet på
Et testsæt holder op med at være et testsæt, når resultaterne styrer det næste eksperiment. Her er 3 måder, researchagenter i det stille lærer af det på, og sådan holder du resultatet retvisende.
Læs indlægget →
Hvordan tester du, om en strategis edge holder ved højere handelsomkostninger?
Spørg ikke, om din strategi holder med “realistiske omkostninger”. Mål, hvor mange omkostninger den kan absorbere, hvilke antagelser der betyder noget, og hvor edge forsvinder.
Læs indlægget →
Hvorfor din backtest har brug for et afnoteringsregister
Hvis en virksomhed forsvinder fra din backtest, kan dens sidste afkast også være forsvundet. 3 almindelige genveje gør døde aktier til usynlige vindere.
Læs indlægget →
Din backtest fandt en edge på 20 %. Hvor meget skyldtes ét forkert tidsstempel?
En backtest-edge på 20 % kan skyldes et tal, som ingen kunne kende på det tidspunkt. Sådan finder du ud af, om revisioner, forsinkede offentliggørelser eller efterfølgende udfyldninger fra dataleverandøren handler på dine vegne.
Læs indlægget →
Vi skilte en backtest af et forudsigelsesmarked ad, der købte den forkerte kontrakt
Backtesten købte “Går lovforslaget igennem?” Men hvilket lovforslag, inden hvilken frist og ifølge hvilken afgørelse? Vi dissekerer fejl i kontraktidentiteten, der forvandler en pæn replay af et forudsigelsesmarked til et andet væddemål.
Læs indlægget →
Fundingbetalingen, der gjorde en vindende perp-handel urentabel
En BTC-perpetual-handel ramte den rigtige retning og tabte stadig penge. Her er regnskabet, betaling for betaling, og de bogføringstjek, der forklarer hvorfor.
Læs indlægget →
Hvordan afgør du, om en strategis edge holder i et andet markedsregime?
En strategis gennemsnitlige afkast kan skjule en skrøbelig aftale med én bestemt type marked. Sådan finder du ud af, om dens edge holder på tværs af regimer.
Læs indlægget →
En bedre backtest kan forringe din strategiforskning
En backtest kan hjælpe dig med at afvise en dårlig idé. Bruger du den til at vælge den bedste blandt 500 idéer, er vinderen måske bare den heldigste. Sådan holder du forskningsprocessen ærlig.
Læs indlægget →
Hvorfor bliver min limitordre udført, når markedet aldrig nåede den?
Din limitpris lå inden for baren, så backtesten registrerede et fill. Det er et pristouch, ikke bevis på, at du fik handlen.
Læs indlægget →
Din strategi bestod walk-forward-testen. Hvorfor afveg paper-resultaterne?
En strategi bestod walk-forward-validering, men resultaterne fra paper trading afveg bagefter. Den første mistænkte kan være overgangen fra research til eksekvering, ikke markedet.
Læs indlægget →
Hvorfor handlede min backtest til en pris, markedet aldrig viste?
Hvis dit simulerede fill er bedre end alle priser i baren, kan problemet skyldes dine antagelser om eksekvering snarere end signalet. Sådan finder du ud af, hvor prisen kom fra.
Læs indlægget →
Backtesten viste 12 % årlig omsætning. Kontoen handlede for 38 %.
En backtest kan vise 12 % årlig omsætning, mens kontoen handler for 38 %. Forskellen begynder ofte med, hvad »omsætning« betyder i koden.
Læs indlægget →
Hvordan forhindrer du en AI-strategiagent i at lække morgendagen ind i i dag?
En strategi kan bestå alle syntakstjek og stadig kende fremtiden. Her er de diskrete måder, researchagenter lækker information på, og tjekkene, der afslører dem.
Læs indlægget →
Hvordan backtester man en strategi, der handler omkring en markedspause?
En handelspause er ikke en søjle med nul volumen. Den ændrer, hvad markedet lader din strategi gøre, og genåbningsauktionen kan tegne den pris om, du troede, du handlede til.
Læs indlægget →
Din fordel forsvandt, da gebyrniveauet ændrede sig. Brød strategien sammen, eller kontoen?
Strategiens handler før gebyrer var uændrede, men gebyrniveauet fulgte kontoens volumen. Sådan finder du ud af, om det var fordelen eller kontoen, der ændrede sig.
Læs indlægget →
Rebalanceringen, der solgte morgendagens vindere: En gennemgang af omsætningen
En rangeringstabel er ikke en handelsstrategi, før den omsættes til ordrer. Følg en månedlig rebalancering fra målvægte gennem omsætning og gebyrer til de antagelser, der kan få backtesten til at se for pæn ud.
Læs indlægget →
Din backtest elskede den bedste time. Kan du handle på den efter tidsomstilling?
Din strategi tjener penge i den første time – indtil timen flytter sig. En praktisk guide til at teste intradagssæsonvariation på tværs af skift til og fra sommertid og handelspladsers åbningstider.
Læs indlægget →
Din backtest brugte de samme penge to gange: En guide til porteføljeregnskab
En position kan være profitabel på papiret og stadig efterlade dig uden finansiering til din næste ordre. Tre almindelige regnskabsmæssige genveje forklarer, hvordan backtests ubemærket bruger de samme penge to gange.
Læs indlægget →
Din paperstrategi genstartede med en anden position: Et brev om gendannelse af tilstand
Du genstartede processen, men genstartede strategien også? Sådan finder du ud af, om dens hukommelse om positioner, afventende ordrer og signaler stemmer overens med paperkontoen.
Læs indlægget →
Backtesten bestod. Paperstrategien missede 37 % af sine ordrer.
Vores paperstrategi afgav 100 ordrer og fik 63 udført. Backtesten talte 91. Afvigelsen skyldtes ordrestatus, timing og antagelser, som en Sharpe-ratio ikke kunne afsløre.
Læs indlægget →
Vi forsøgte at genskabe en strategis backtest. Her opstod afvigelserne i tallene.
Vi kørte en gemt strategi igen og fik en anden egenkapitalkurve. I løbet af nogle dage sporede vi afvigelserne gennem datarevisioner, afhængighedsversioner og en overraskende lille standardindstilling.
Læs indlægget →
Hvordan ved jeg, om markedsdata fra en backtest faktisk kunne handles på?
Korrekte priser garanterer ikke en retvisende backtest. Undersøg, hvornår hver observation blev tilgængelig, hvilket marked den repræsenterer, og om din strategi kunne have handlet på den.
Læs indlægget →
Vi afspillede en paper-strategi igen efter en genstart. Dens ordrer ændrede sig.
Vi genstartede en paper-strategi midt i en position og fik en anden sekvens af ordrer. Signalet var fint. Dens hukommelse var det ikke.
Læs indlægget →
Hvad sker der egentlig i en optionsbacktest ved udløb?
Ved udløb er den sidste optionskurs ofte det mindst nyttige tal i dit resultat. Sådan modellerer du afvikling, exercise og levering uden at opfinde en handel.
Læs indlægget →
Dit kontinuerlige futuresdiagram viser en kontrakt, ingen kunne handle
Den 20. april 2020 blev to WTI-kontrakter afregnet med en forskel på $58.06. Splejs dem skødesløst sammen, og din backtest bogfører $58,060, som ingen position tjente.
Læs indlægget →
Genstart din strategi midt i backtesten. Kan den huske, hvad den ejer?
En strategi kan klare sig gennem alle markeder i dit datasæt og stadig gå i stykker, når processen genstartes. Stop afspilningen halvvejs, og find ud af, hvad den har glemt.
Læs indlægget →
Din paperkonto afviste backtestens fill: Et brev om børsfiltre
Du fastsatte ordrestørrelsen korrekt i din backtest, men paper-handelspladsen afviste ordren. Sådan gør du præcisionsregler til en del af strategiens eksekveringsmodel.
Læs indlægget →
Tickdata redder ikke din backtest — for de fleste strategier gør den den værre
Højere opløsning er ikke det samme som større sandhed. For de fleste strategier bytter tickdata et reelt problem — dårlige antagelser om fills og omkostninger — ud med et opdigtet: illusionen om, at data med finere opløsning giver en mere retvisende backtest.
Læs indlægget →
Rebalanceringen, der opslugte signalet: En strategis første møde med det virkelige marked
Signalet havde ret i retningen. Alligevel mistede porteføljen sin fordel under rebalanceringen, én tynd ordrebog og én for stor ordre ad gangen.
Læs indlægget →
Hvordan backtester du en omvendt perpetual-kontrakt uden at blande BTC og dollars sammen?
En handel tjener $10,000. Kontoen vokser med $15,000. Begge tal er korrekte. Din backtest skal forklare, hvor de manglende $5,000 kommer fra.
Læs indlægget →
Din aktiebacktest fandt en shortmulighed. Kunne du faktisk låne aktierne?
Din gap-fade-strategi shorter alle aktier, den udvælger. Din broker har et mindre udvalg. Et brev om den manglende handel før din indgang.
Læs indlægget →
Din backtests slippage-model bør med vilje tage fejl
Målet med en slippage-model er ikke at gætte, hvilken kurs du ville have fået. Det er at finde ud af, om din strategi klarer sig med plausible fills, som du ikke kan kende ud fra historiske bars.
Læs indlægget →
Din makrobacktest handlede på den reviderede jobrapport
Du downloadede den historiske jobserie korrekt. Alligevel handlede din strategi på tal, der først ville eksistere to måneder senere. Sådan genskaber du dens informationsgrundlag.
Læs indlægget →
Hvor meget latenstid bør du lægge ind i en backtest? Vi målte hvert millisekund af vores
195 ms median. 2,970 ms på 99-percentilen. 840 ms median på de minutter, dit signal rent faktisk udløses. Kun ét af de tal er interessant.
Læs indlægget →
Fem regler for positionsstørrelse, ét signal: det, der virkelig gør arbejdet i din backtest
Det meste af variationen i dit backtestresultat skyldes, hvor stor en position du holder, ikke hvornår du går ind. Her er det samme signal med seks regler for positionsstørrelse, inklusive gebyrregningen og den maksimale gearing, som rapporten glemte at vise.
Læs indlægget →
Samme kode, samme data, to forskellige Sharpe-tal: determinisme-auditten, din backtest har brug for
11,205 bit-identiske bars, så et lighedstilfælde i en rangering og derefter en Sharpe-forskel på 0.15. Hvis du ikke kender din backtests jitterbånd, ved du ikke, om dit bedste parametersæt vandt noget.
Læs indlægget →
Din Sharpe-ratio bestod alle test. Den kan stadig være et tilfælde.
En Sharpe på 2 kan se ekstraordinær ud efter tusind forsøg. Det overraskende tal er, hvor mange veje du prøvede for at nå dertil.
Læs indlægget →
Hvorfor dit backtests volatilitetsmål overser den risiko, det skal styre
Et volatilitetsmål på 10% er en instruktion om positionsstørrelse, ikke en garanti for risikoen. Gennemgå én BTC perpetual-strategi, og se, hvornår tallet ikke længere beskriver, hvor meget kontoen kan tabe.
Læs indlægget →
Fundingrenten så billig ud. Positionen blødte stadig.
En perpetual betalte 0.01% i funding hver ottende time. Handlen tabte stadig penge. Her er, hvor backtestens attraktive carry blev af.
Læs indlægget →
Den række, din options-backtest bygger på: ét Deribit BTC-call, felt for felt
Tickeren har omkring 20 felter. To af dem er priser, ingen handlede til, tre bruger enheder, som din backtest sandsynligvis læser forkert, og det tal, der slår de fleste optionsstrategier ihjel, findes slet ikke i payloaden.
Læs indlægget →
Du backtestede med $2,000 pr. handel, og nu vil du op på $50,000: et brev om kapacitet
Din bruttofordel er 22 bps pr. handel. Ved $2,000 betaler du omkring 2 bps i markedspåvirkning. Ved $50,000 betaler du 11. Regnestykket herunder afgør, om du har en strategi eller et skærmbillede.
Læs indlægget →
Din backtest blev aldrig likvideret: margin, mark price og gearingsgrænsen, du overså
Aktiekurven falder 63% i april og retter sig frem til juni. På handelsplatformen blev kontoen lukket på dag 41, og der var intet tilbage at rette sig med.
Læs indlægget →
Dit stop og dit mål lå begge i samme candle. Hvilket valgte din backtest?
Candlens low ligger under dit stop. Dens high ligger over dit mål. Det ene skete først, men candlen fortæller ikke hvilket, og noget i din kode traf alligevel en beslutning.
Læs indlægget →
De minutter, der ikke findes: huller, handelsstop og barer med nul volumen i OHLCV-historikken
Manglende barer ligger ikke tilfældigt spredt i din historik. De samler sig præcis i de minutter, din strategi går op i, og standardløsningerne gør skaden usynlig.
Læs indlægget →
Din limitordre blev ikke udført: et brev om køposition, maker-backtests og den Sharpe, du fandt på
Din udførelsesregel er én linje lang: Hvis barens laveste kurs er lig med eller under min limitkurs, er ordren udført. Den linje gør mere arbejde end hele din alpha, og den gør det forkert.
Læs indlægget →
Splitjusterede data skilt ad: hvad NVDA's 10-for-1 gør ved hver række bagved
Rækken siger, at lukkekursen var $120.8781. Børstapen viste $1,208.88 den dag. Seks kolonner adskiller de to tal, og de fleste backtests fejlfortolker mindst tre af dem.
Læs indlægget →
Hvad går galt, når man backtester prediktionsmarkeder: en dagbog fra otte dage
Instrumentet udløber. Det udbetaler én dollar eller ingenting, én gang, på en dato, du ikke bestemmer. Næsten alle antagelser, der er indbygget i en afkastbaseret backtester, er forkerte her, og her er rækkefølgen, vi opdagede det i.
Læs indlægget →
Hvor mange handler kræver en backtest, før Sharpe siger noget?
Standardfejlen for en annualiseret Sharpe er omtrent 1 divideret med kvadratroden af dine dataår. Alt det ubehagelige følger af den ene linje.
Læs indlægget →
Du byggede en strategi, der kun handler kl. 00:00 UTC — et brev om artefakter ved fundingtidspunkter
Din Sharpe er 2.9, og hver eneste dollar af den kommer inden for fire minutter af en fundingafregning. Jeg har set præcis det her resultat måske et dusin gange. Sådan finder du ud af, hvilken slags du har.
Læs indlægget →
Hvorfor din backtest behandler et volatilitetsudsving som et nyt regime
Volatilitetsmålretning lyder adaptiv. Et forældet estimat, en uhensigtsmæssig bundgrænse eller en skjult rebalanceringsregel kan forvandle 1 hård uge til måneder med for lav eksponering. Sådan opdager du skaden.
Læs indlægget →
Dit symbolunivers er en tidsmaskine: survivorship bias i backtests af kryptoperpetuals
Du byggede dit univers ved at kalde exchangeInfo én gang, i dag, og filtrere efter status == TRADING. Den ene linje fjernede lydløst alle de coins, der døde.
Læs indlægget →
Anatomien af én 1-minuts bar: alt det OHLCV ikke fortæller dit backtest
Tolv værdier i et JSON-array. Mindst fire af dem betyder noget andet, end din fill-engine antager. Her er hele baren, skilt ad.
Læs indlægget →
Din backtest har 100 handler. Hvorfor er den gennemsnitlige fill stadig et gæt?
100 handler, 0.04% i gebyrer og en antagelse om 0.02% slippage kan se præcist ud. Men fillen er stadig et gæt, indtil du undersøger, hvor stor en ordre markedet kunne absorbere.
Læs indlægget →
Hvorfor handler min backtest oftere end min papirstrategi?
Et signal kan sige “køb” én gang, mens ordresystemet forsøger tre gange og får to fills. Sådan modellerer du forskellen mellem en backtests handler og papirhandelskontoens ordrehistorik.
Læs indlægget →
Dit backtest har et urproblem, selv når alle tidsstempler er korrekte
Et quote og et signal kan have samme tidsstempel og alligevel ankomme i forskellig rækkefølge. Den lille tvetydighed kan afgøre, om din strategi overhovedet handlede.
Læs indlægget →
Hvorfor dine åbne ordrer i backtesten har brug for et ur
En limitordre kan overleve det signal, der skabte den. Her er 3 almindelige måder, backtests mister overblikket over åbne ordrer på, og en praktisk model, der holder dem på sporet.
Læs indlægget →
Hvorfor din backtest håndterer udbyttet forkert
Et udbytte kan ligne et pludseligt tab, et gratis afkast eller en kontantbeholdning, som strategien aldrig fik. Tre almindelige modelleringsfejl forklarer hvorfor.
Læs indlægget →
Tre måder at fejle walk-forward-optimering på uden at opdage det
Walk-forward-test bliver solgt som modgiften mod overfitting. Gjort skødesløst er det bare overfitting med pænere papirarbejde. Tre fejlformer og deres kendetegn.
Læs indlægget →
Sådan fører et AI-agentteam en handelsidé fra sætning til papirpenge
Ti agenter, én pipeline og en tragt, der er designet til at slå idéer ihjel. En gennemgang af, hvad der reelt sker mellem "funding-momentum" og en kørende papirnode.
Læs indlægget →
Paper trading er den eneste målestok, din backtest skal stå til regnskab for
Hver dag kører vi hver paper-strategis vindue gennem backtest-motoren igen og sammenligner handlerne. Her er, hvad det ritual bliver ved med at fange.
Læs indlægget →
Hvad en rundtur reelt koster på ni handelspladser
Gebyrsider er markedsføring. Her er den tovejsaritmetik, der afgør, om din strategi er en forretning eller en donation — handelsplads for handelsplads.
Læs indlægget →
Hvorfor de fleste backtests lyver, og de fire poster der retter dem
En strategi, der backtester til +40% om året og taber penge live, er ikke uheldig. Den er målt forkert. Fire poster skiller de to tal ad.
Læs indlægget →