Data fra Kalshi bliver nyttige til historisk research, når datasættet bevarer, hvad en beslutningsproces faktisk kunne have vidst. Et regneark med nøjagtige endelige priser og udfald kan stadig producere en umulig backtest, hvis det inddrager senere revisioner, udelader perioder med indsamlingssvigt eller udvælger markeder ved hjælp af oplysninger lært efter afregning. Det centrale designproblem er historisk tilgængelighed, ikke blot at hente flere rækker.
Et pålideligt arkiv bør lade en reviewer rekonstruere en beslutning på et bestemt tidspunkt og separat evaluere denne beslutning, efter udfaldet er kendt. Disse perspektiver bruger nogle af de samme registreringer, men bør ikke smelte sammen til én overskrevet historik. Denne vejledning udvikler et fiktivt researchprojekt omkring kontrakter om planlagte indikatoroffentliggørelser. Eksemplerne beskriver datasætdesign og aritmetik, ikke observerede Kalshi-resultater eller en påstand om, at nogen strategi er rentabel.
Definer researchspørgsmålet før download
Antag, at en analytiker vil undersøge, om en prognose offentliggjort før en indikatoroffentliggørelse forbedrede beslutninger på relaterede markeder. Spørgsmålet kræver den prognose, der var tilgængelig på tidspunktet, den relevante kontraktdefinition, en samtidig eksekverbar kurs og en endelig label bestemt under kontraktreglerne. En samling lukkepriser og endelige indikatorværdier er ikke tilstrækkelig.
Skriv den tilsigtede beslutning i én sætning: På et defineret observationstidspunkt sammenlignes anskaffelsesomkostningen for en kontrakt, der opfylder kriterierne, med et dateret estimat, hvorefter det registreres, om en foreslået position ville opfylde en angivet regel. Beskrivelsen tydeliggør, hvilke felter der er væsentlige, og hvilke der blot er bekvemme. Den gør også manglende dokumentation synlig, før projektet producerer attraktive resultatgrafer.
Angiv researchpopulationen på forhånd. Populationen kan omfatte hver kontrakt i udvalgte tilbagevendende begivenheder i en fast periode, herunder kontrakter uden handel, med manglende data eller med udelukkede regler. Bevarelse af disse tilfælde understøtter en meningsfuld nævner for dækning. Et datasæt, som kun indeholder de markeder, hvor en tænkt strategi handlede, kan ikke afsløre, hvor ofte strategien manglede brugbare oplysninger.
Den ældre vejledning om analyse af prognosemarkeder adskiller kontraktfortolkning, prognoser og udførelse. Brug denne adskillelse i arkivet. Hvert researchspørgsmål bør identificere, hvilket lag det evaluerer; ellers kan en forbedring i klassifikation af endelige udfald fejlagtigt fremstilles som dokumentation for handelsresultater, der kunne udføres.
Historisk dækning i data fra Kalshi kræver en udtrykkelig grænse
Kalshis dokumentation om historiske data beskriver separate live- og historiske datalag med skæringsgrænser, der afhænger af registreringstypen. En fuldstændig indsamlingsproces bør undersøge de relevante grænser og forespørge de passende kilder. At en gammel registrering ikke findes i et liveendepunkt, beviser ikke, at markedet aldrig eksisterede eller ikke havde aktivitet.
Gem indsamlingstidspunkt, forespørgselsparametre, pagineringsfremskridt og den observerede kontekst for skæringsgrænsen. Disse detaljer forklarer, hvorfor et arkiv indeholder bestemte registreringer. Hvis grænsen flytter sig under en lang indsamling, kan overlappende anmodninger og identitetsbaseret fjernelse af dubletter hjælpe med at fastslå dækning uden dobbelttælling. Den præcise implementering bør følge de aktuelt dokumenterede endepunkter og deres understøttede forespørgselsadfærd.
Betragt et fiktivt projekt, der anmoder om 100 daglige begivenheder. Indsamleren henter fuldstændige registreringer for 92, delvise registreringer for fem og ingen for tre. Rapporter grupperne separat. At kalde datasættet en backtest med 100 begivenheder skjuler, at nogle observationer ikke kan understøtte den planlagte beslutning. At kalde det en undersøgelse af 92 begivenheder uden at bevare udelukkelserne gør udvælgelsesprocessen vanskelig at undersøge.
Dækning har flere dimensioner. En begivenhed kan have et endeligt udfald, men mangle samtidig dybde. En anden kan have kurser, men ingen gemt regelversion. En tredje kan have en fuld offentlig historik uden en kontoudførelseshistorik. Følg, hvilke researchpåstande hver begivenhed kan understøtte, frem for at tildele én udifferentieret fuldstændighedsmarkering til hele registreringen.
Bevar flere tidspunkter uden at opfinde præcision
En historisk observation kan have et begivenhedstidspunkt, et kildeoffentliggørelsestidspunkt, et modtagelsestidspunkt hos indsamleren og et behandlingstidspunkt. Et økonomisk tal kan beskrive aktivitet i august, offentliggøres i september og rettes senere. Referenceperioden august er ikke det tidspunkt, hvor en handler i september kunne have fået kendskab til tallet. At bruge den som tilgængelighedstid skaber øjeblikkelig brug af fremtidig information.
I et fiktivt forløb offentliggøres en prognose klokken 08:29:50, modtages klokken 08:29:52 og indarbejdes i en beslutning klokken 08:29:54. Den officielle meddelelse følger klokken 08:30:00. Denne prognose kan plausibelt informere beslutningen klokken 08:29:54. En rettelse modtaget klokken 08:31:10 kan ikke, selv hvis den har samme prognosedato eller vedrører samme underliggende indikatorperiode.
Vælg en tilgængelighedsregel, som passer til det tilsigtede system. Hvis undersøgelsen evaluerer indsamlerens faktiske proces, kan modtagelsestid være den passende grænse. Hvis den undersøger teoretisk offentlig tilgængelighed, kan kildetid være relevant, men kræver dokumentation om offentliggørelsen. De to spørgsmål er legitime og forskellige; ingen af dem bør låne den andens gunstige timing uden at oplyse det.
Undgå falsk præcision. En kildedato uden klokkeslæt fastslår ikke tilgængelighed ved midnat. Et tidsstempel afrundet til et minut beviser ikke, at en registrering kom før en anden observation inden for dette minut. Bevar den kendte opløsning, og anvend en konservativ regel for medtagelse, når tvetydigheden kan ændre beslutningen.
Revisionshistorikken for data fra Kalshi bør tilføje frem for at overskrive
Gem en ny version, når en observation ændres. Registrer, hvad der ændrede sig, hvornår erstatningen blev tilgængelig, og hvilken tidligere registrering den afløser. Det bevarer en trofast redegørelse for tidligere beslutninger, samtidig med at senere analyse kan bruge rettede oplysninger til de spørgsmål, der kræver dem. Overskrivning af den gamle værdi ødelægger dette skel.
Forestil dig en hypotetisk indikator, der først rapporteres som 51,8 og senere revideres til 52,2. En kontrakt afgjort ud fra første offentliggørelse kan have et andet udfald end en kontrakt afgjort ud fra den senere revision. Selv når kun den første kontrakt undersøges, kan en prognosemodel lække information, hvis dens historiske input stiltiende bruger 52,2 til en beslutning truffet før revisionen.
Der er derfor to revisionsproblemer: Hvilken version afgør kontraktens udbetaling, og hvilken version kunne forskeren observere ved prognosetidspunktet? Løs dem separat. En endelig afregningslabel kan korrekt bruge første offentliggørelse, mens en anden inputvariabel stadig indeholder senere viden. Korrekte labels gør ikke automatisk hver forklarende variabel historisk gyldig.
Hold versionshistorikken læsbar. En reviewer bør kunne hente den registrering, der var tilgængelig på beslutningstidspunktet, og den endelige rettede registrering uden at gætte, hvilken fil der blev omdøbt. Den relaterede vejledning om handelsværktøjer til Polymarket er nyttig ved evaluering af software, som importerer ekstern dokumentation: En poleret grænseflade bør ikke skjule, om den bevarer dette historiske skel.
Byg en sammenkobling ud fra det dengang kendte
En sammenkobling ud fra det dengang kendte vælger kun registreringer, der var tilgængelige ved beslutningsgrænsen. Den matcher også den korrekte kontrakt, begivenhed og kildedefinition. En kobling efter nærmeste tidspunkt kan være forkert, hvis den vælger en senere observation, fordi denne tilfældigvis er tættere på. Tidsbetingelsen bør være udtrykkelig, før nogen afstandsbaseret matchningsregel anvendes.
Antag, at en beslutning finder sted klokken 08:29:55. En kurs modtaget klokken 08:29:54 opfylder kriterierne under en modtagelsestidspolitik; en anden modtaget klokken 08:29:56 gør ikke. Hvis den tidligere kurs er for gammel under researchpolitikken, kan det rette resultat være, at ingen brugbar kurs findes. At låne den senere observation skaber en fuldstændig række på bekostning af en umulig historisk antagelse.
Brug samme princip for metadata. Den aktuelle kontraktbeskrivelse kan indeholde en præcisering, som manglede på beslutningstidspunktet. Bevar den tidligere version til rekonstruktion af, hvad analytikeren forstod, og bevar præciseringen til den endelige fortolkning. En researchrapport bør anerkende, når senere vilkår forklarer en uoverensstemmelse, frem for at foregive, at disse vilkår altid var til stede.
Den ældre artikel om algoritmisk handel på prognosemarkeder udvikler reproducerbarhed som en driftsdisciplin. En sammenkobling ud fra det dengang kendte er en konkret anvendelse: Inputsættet for en historisk beslutning bør kunne genskabes ud fra en dateret regel, ikke fra de registreringer, der tilfældigvis er aktuelle, når backtesten køres igen.
Adskil udfaldslabels fra inputvariable
Endelige afregningsoplysninger hører hjemme i evalueringslaget. De bør ikke indgå i modellens beslutningsinput, blot fordi det er bekvemt at holde alle begivenhedsfelter i én registrering. Felter som endelig status, afregningstid eller et sammendrag efter begivenheden kan afsløre svaret direkte eller indirekte. Selv et filter, der kun vælger hurtigt afregnede markeder, kan skabe en skæv historisk population.
Definer labelen ud fra den faktiske kontraktudbetaling, herunder dokumenteret særbehandling. Et spørgsmål, som ser binært ud, bør ikke tvinges til en label på én eller nul, hvis dets vilkår understøtter et andet resultat. Arkivet bør bevare den autoritative afgørelse og den tilsvarende mængde eller det tilsvarende beløb frem for at udlede begge af en nyhedsoverskrift.
Hold labels utilgængelige for genafspilningen af beslutningen, indtil genafspilningen har produceret sin prognose og foreslåede handling. Denne adskillelse gør utilsigtet lækage lettere at opdage. En reviewer kan undersøge den fastlåste inputregistrering og spørge, om noget felt afhænger af oplysninger, der opstod efter beslutningsgrænsen.
En nyttig negativ test tilføjer bevidst et felt, der kun findes i fremtiden, til en udviklingskopi og kontrollerer, om pipelinen afviser det eller viser dets forbudte tilgængelighedstidspunkt. Formålet er ikke at bevise, at en model kan forudsige, når svaret er leveret. Det er at kontrollere, at researchprocessen kan genkende og blokere dette ugyldige forsøg.
Gør ikke prisbjælker til garanterede udførelser
Aggregerede prisbjælker opsummerer aktivitet over et interval. De bevarer ikke nødvendigvis den sekvens, mængde eller køtilstand, der kræves for at rekonstruere en bestemt ordre. Et intervals laveste pris kan være opstået efter det foreslåede købstidspunkt eller for en mængde, der er for lille til at understøtte den antagne position. En backtest må ikke behandle hele bjælken som samtidig tilgængelig.
For eksempel indeholder et fiktivt minut handler til 0,42 dollar og 0,58 dollar. En model evalueret ved begyndelsen af dette minut kan ikke blot købe til 0,42 dollar, fordi det senere blev den registrerede bund. Hvis det første tilgængelige salgsbud var 0,55 dollar, bør den modellerede omkostning afspejle denne observation eller en udtrykkeligt angivet konservativ tilnærmelse. Den attraktive bund er historisk viden.
Simulering af limitordrer har et relateret problem. En handel til ordrens pris fastslår ikke, at den simulerede ordre ville have fået prioritet. Angiv udførelsesmodellen, og test følsomheden over for forsinket, delvis eller manglende udførelse. En strategi, hvis tilsyneladende fordel forsvinder ved blot lidt mindre gunstige udførelser, kræver en anden konklusion end en, der forbliver robust.
Den ældre diskussion af handelsstrategier for begivenhedskontrakter sammenligner metoder med forskellige fejlmønstre. Historiske datasæt bør bevare den dokumentation, der er relevant for den valgte metode. En undersøgelse af retningsbestemt afregning og en kortvarig likviditetsstrategi bør ikke evalueres med identiske grove udførelsesantagelser, blot fordi de deler en udfaldslabel.
Bevar udelukkelser og fravalg
En beslutningsproces kan afstå fra at handle, fordi en kurs er forældet, en regel er tvetydig, eller modellen mangler tilstrækkelig dokumentation. Gem denne beslutning og dens begrundelse. Disse registreringer hjælper med at skelne en selektiv strategi fra et datasæt, der blot mister ubekvemme tilfælde. De kvantificerer også, hvor meget driftsarbejde der kræves for at opnå én brugbar mulighed.
Antag, at 100 fiktive observationsvinduer producerer 60 beslutninger, der opfylder kriterierne, 25 udelukkelser på grund af forældede data og 15 regelrelaterede udelukkelser. Rapportering af resultater udelukkende for de 60 beslutninger er passende, hvis udvælgelsesreglen var defineret på forhånd, men de øvrige 40 hører stadig hjemme i undersøgelsens dækningsregnskab. De påvirker gennemførlighed og kan afsløre systematiske svagheder omkring vigtige meddelelser.
Evaluer, om udelukkelserne samler sig. Hvis data hovedsageligt mangler under hurtige markedsbevægelser, gælder resultater fra de resterende rolige perioder muligvis ikke i det tilsigtede handelsmiljø. Manglende data kan være relateret til udfaldet eller vanskeligheden ved udførelse. En simpel angivelse af, at ufuldstændige rækker blev slettet, løser ikke dette problem.
Fravalg bør fortsat adskilles fra en negativ prognose. En model, der ikke kan fortolke en kontrakt, har ikke forudsagt, at Ja vil tabe. Sammenblanding af kategorierne kan få kalibreringen til at fremstå bedre eller dårligere af grunde, der ikke vedrører prognoseevnen. Bevar den analytiske begrundelse for tavshed frem for at kode enhver manglende handling som nul.
Fremtidsbias i data fra Kalshi opstår også gennem udvælgelse
At vælge succesrige markeder efter gennemgang af udfaldene er en åbenlys form for lækage, men mere subtile valg kan have samme virkning. Valg af en tidshorisont, gebyrantagelse eller modeltærskel efter undersøgelse af de endelige testresultater gør disse resultater til udviklingsinformation. Det historiske arkiv kan ikke beskytte en undersøgelse mod valg foretaget uden for datapipelinen.
Brug en udviklingsperiode til at vælge metoden, og fastlås derefter de relevante beslutninger før evaluering af en senere periode. Registrer efterfølgende ændringer som nye versioner, og evaluer dem om muligt på reelt senere dokumentation. En kronologisk opdeling hjælper med at tilpasse research til den virkelige opgave med at handle før fremtidige udfald, selv om den ikke fjerner enhver afhængighed mellem relaterede begivenheder.
Hold relaterede kontrakter samlet ved vurdering af usikkerhed. Flere tærskler på samme meddelelse deler væsentlig information og kan afgøres ud fra ét underliggende tal. At behandle dem som uafhængige observationer kan overdrive den effektive stikprøvestørrelse. Hundrede kontraktrækker afledt af ti meddelelser giver ikke nødvendigvis hundrede uafhængige test af dygtighed.
Den relaterede artikel om handelsalgoritmer til Polymarket undersøger sammenligning mellem beslutningsregler. Dens relevans her er metodisk: Arkivet bør understøtte retfærdige sammenligninger under samme historik, der opfylder kriterierne, frem for at lade hver kandidat arve sin egen gunstige delmængde af begivenheder eller en anden udførelsesmodel informeret af bagklogskab.
Kontroller aritmetikken mod et lille fastlåst eksempel
Før en stor undersøgelse køres, skal der oprettes et fiktivt datasæt med ti beslutninger, som en person kan beregne uafhængigt. Antag, at hver beslutning køber én standard-Ja-enhed med éndollarudbetaling til 0,55 dollar og pådrager sig 0,02 dollar i samlede modellerede omkostninger. Den samlede omkostning er 5,70 dollar. Hvis seks positioner vinder, og fire taber, er den samlede udbetaling 6 dollar og nettoresultatet 0,30 dollar under de angivne antagelser.
Resultatet er en realiseret vinderrate på 60 % og cirka 5,26 % på udlægget på 5,70 dollar. Det er ikke dokumentation for et stabilt afkast på 5,26 % i hver fremtidig periode. Hvis kun fem positioner vinder, giver samme omkostning et tab på 0,70 dollar. Eksemplet kontrollerer, om pipelinen adskiller udfaldsantal, kontantresultat og procentnævner.
Ændr nu én anskaffelsespris til 0,65 dollar, mens alt andet holdes fast. Den samlede omkostning stiger med 0,10 dollar til 5,80 dollar, og resultatet med seks vindere falder til 0,20 dollar. Et program, der lader fortjenesten være uændret, bruger måske udfaldsnøjagtighed som erstatning for kontantregnskab. Et program, der ændrer antallet af vindere, har forvekslet pris med udfald.
Disse små test er nyttige, fordi hver antagelse er synlig. De validerer ikke live-resultater og erstatter ikke en fuld gennemgang af datasættet. De fastslår, at researchmaskineriet bevarer den tilsigtede beregning, før et stort arkiv gør samme fejl vanskeligere at opdage.
Før en rettelseslog, der ændrer de rette konklusioner
En datasætrettelse bør identificere, hvilke output der afhænger af den ændrede registrering. Antag, at en dubleret handel overdrev volumen i ét observationsvindue, men ikke påvirkede det gemte bedste salgsbud eller den endelige udbetaling. Volumenvariablen og enhver beslutning om medtagelse baseret på den skal gennemgås. Omskrivning af alle andre udfald uden forbindelse til rettelsen ville skjule rettelsens omfang frem for at forbedre nøjagtigheden.
Registrer det oprindelige resultat, det rettede resultat og begrundelsen for forskellen. Hvis rettelsen ændrer, hvilke begivenheder der opfylder kriterierne, skal de relevante populations- og resultatberegninger køres igen. Hvis den kun ændrer en visningsbetegnelse, skal denne snævrere virkning forklares. Denne tilgang med hensyn til afhængigheder hjælper en reviewer med at skelne en researchkonklusion, der overlevede rettelsen, fra en, som blot endnu ikke er genberegnet.
En rettelseslog modvirker også selektiv vedligeholdelse. Fejl, der forbedrer de tilsyneladende resultater, fortjener samme opmærksomhed som fejl, der forringer dem. Bevar mislykkede forsøg og ugunstige rettede resultater sammen med de succesrige. Arkivet dokumenterer da, hvad researchprocessen lærte, herunder omkostningen ved dens egne fejl, frem for at blive en kurateret historik, hvor hver ændring synes at bekræfte den oprindelige tese.
Pak datasættet sammen med dets begrænsninger
En researchudgivelse bør identificere den dækkede periode, populationsreglen, datakilderne, indsamlingshullerne, revisionspolitikken, priskonventionen, udførelsesantagelserne og labeldefinitionen. Den bør også identificere, hvilke spørgsmål arkivet ikke kan besvare. Et datasæt med kun periodiske kurser kan understøtte bred prognoseanalyse, samtidig med at det mangler de detaljer, som kræves for at påstå udførelsesresultater, der afhænger af køposition.
Gem en kompakt beslutningsregistrering sammen med aggregerede output. For enhver udvalgt række bør en reviewer kunne rekonstruere de tilgængelige input, prognosen, beslutningen om medtagelse, den foreslåede mængde og det senere udfald. Aggregeret nøjagtighed eller fortjeneste er langt mere troværdig, når enkelte eksempler kan spores uden at rekonstruere hele projektet fra hukommelsen.
Vejledningen om handelsterminalen til Polymarket giver en nyttig forbindelse til daglig drift: Grænsefladen brugt til at træffe en beslutning bør efterlade registreringer, som historisk research senere kan fortolke. Bedre arkivdesign begynder ofte før handlen, mens systemet stadig kan bevare præcis, hvad operatøren så og autoriserede.
Data fra Kalshi understøtter ærlig læring, når endelig sandhed og historisk viden fortsat kan skelnes. Bevar begge, dokumenter hullerne mellem dem, og lad hver simuleret beslutning overholde sin informationsgrænse. Denne struktur lader et skuffende resultat lære noget nyttigt og forhindrer et imponerende resultat i at hvile på dokumentation, som strategien aldrig kunne have haft.