En ja/nei-handelsbot trenger en entydig registrering av hva den kjøper eller selger. Utfallsside, kontohandling og pris er separate opplysninger. Et program som gjør alt om til én sannsynlighet, kan miste skillet mellom kjøp av Nei, salg av Ja og ren observasjon av en Ja-midtpris. Handlingene kan være økonomisk beslektet i en standard binær modell, men kan kreve ulike kontanter, beholdninger og kontotillatelser.

Boten bør bevare handelsplassens opprinnelige fremstilling og en gjennomgått intern tolkning. Deretter evaluerer den den faktiske prisen som kan gjennomføres, inkluderer gjeldende kostnader og registrerer hvert ordreforsøk frem til avstemming. De oppdiktede eksemplene nedenfor bruker binær utbetaling på én dollar eller null med nøyaktig komplementære utfall der dette er oppgitt. De er eksempler på regnskap og kontroll, ikke påstander om en bestemt handelsplass sine gjeldende gebyrer eller en strategis forventede resultater.

Sidekobling i en ja/nei-handelsbot begynner med identifikatorer

Lagre kontraktsidentifikatoren og hver utfallsidentifikator uttrykkelig. En etikett som Ja har bare mening innenfor en bestemt kontrakt. To tilstøtende markeder kan begge ha et Ja-utfall og samtidig vise til ulike terskler, datoer eller kilder. Koblingen bør knytte strategiens betingelse til det nøyaktige utfallet som utføreren skal sende inn, med en versjonert regelreferanse som forklarer sammenhengen.

Hold kjøp og salg som separate handlingsfelt. Et kjøp øker den valgte posisjonen og bruker de nødvendige kontantene eller sikkerheten etter kontoens faktiske mekanikk. Et salg reduserer eller endrer på annen måte posisjonen etter modellen handelsplassen støtter. Ikke anta ubegrenset shortsalg eller at et økonomisk komplement alltid kan uttrykkes gjennom samme operasjonelle handling.

For eksempel bør en anbefaling om å kjøpe 120 Nei-enheter forbli et Nei-kjøp i instruksregistreringen. Systemet kan også beregne den tilsvarende retningsbestemte eksponeringen mot Ja for risikoanalyse, men denne utledede visningen må ikke erstatte den faktiske ordreidentiteten. Hvis adapteren stille gjør den om til et Ja-salg, kan den skape en instruks kontoen ikke støtter, eller en annen kontantstrøm enn risikokontrollen godkjente.

Den eldre veiledningen om automatisk kjøp av Ja- og Nei-andeler på Polymarket gir bakgrunn for utfallsvalg. En robust koblingstest bør bevisst bruke lignende kontraktsnavn og motsatte sider. Målet er å bevise at boten velger det godkjente utfallet og handlingen, fremfor bare å produsere en tilsynelatende rimelig pris.

Hold observerte og utledede bud adskilt

En handelsplass kan rapportere de to utfallsordrebøkene direkte eller vise en fremstilling som et salgsbud på motsatt side utledes fra. Boten bør dokumentere koblingen og bevare den opprinnelige observasjonen. Et utledet bud bør identifisere kildesiden, prisen, mengden og tidsstempelet som støtter det. Dette lar en leser undersøke omregningen når kontoens faktiske handling virker overraskende.

Kalshis dokumentasjon for ordreboken beskriver lister over Ja- og Nei-kjøpsbud med komplementære forhold til salgsbud. I et standardeksempel på én dollar tilsvarer et Ja-kjøpsbud på $0,33 et Nei-salgsbud på $0,67. Forholdet kan inngå i en beregning av Nei-kjøp, men gjør ikke enhver vist Ja-verdi til egnet inndata. En midtpris eller en gammel siste handel er ikke det samme som gjeldende kjøpsbud på motsatt side.

Bevar dybde sammen med pris. Hvis kildebudet bare støtter 40 enheter, støtter det utledede salgsbudet denne mengden på dette nivået, ikke et ubegrenset kjøp. Ytterligere mengde krever flere nivåer og en ny beregning av gjennomsnittskostnad. En adapter som utleder riktig pris, men knytter feil mengde til den, kan fortsatt skape en unøyaktig anbefaling.

Den beslektede veiledningen om programvare for oddshandel undersøker normaliserte data bredere. Et nyttig internt format bør merke observasjonstype og opphav. Normalisering gjør verdier sammenlignbare bare når den bevarer faktaene som trengs for å tolke dem; å fjerne side- eller tidsstempelinformasjon kan gjøre en ryddig datastruktur mindre sannferdig enn råsvaret.

Bevar presisjon i pris og mengde

Behandle priser og mengder etter den gjeldende handelsplassens dokumenterte enheter og tillatte presisjon. Ikke anta at alle markeder bruker hele cent eller hele kontrakter. En desimalstreng som representerer dollar, bør ikke leses som et heltall i cent, og et mengdefelt bør ikke avrundes bare fordi et brukergrensesnitt viser færre sifre. Adapteren trenger en uttrykkelig omregningsregel med tester ved relevante grenser.

Bruk regning egnet for penger og nødvendig presisjon. Binære flyttallsrepresentasjoner kan gi små avrundingsavvik, så implementasjonen bør bruke en kontrollert desimal- eller fastpunktstilnærming der det passer. Det viktige kravet er deterministisk omregning og avrunding etter handelsplassens faktiske regler. En bestemt programmeringsteknikk er ikke tilstrekkelig med mindre resultatet er kontrollert mot støttede priser og mengder.

Boten bør skille visningsavrunding fra ordreavrunding. Å vise en pris med to desimaler for lesbarhetens skyld gir ikke tillatelse til å sende den avrundede verdien dersom den faktisk tillatte eller tiltenkte grensen er annerledes. Tilsvarende bør en ordremengde som reduseres for å oppfylle et mengdeintervall, gjenspeiles i godkjenningen og eksponeringsberegningen. Stille avrunding kan endre økonomien eller etterlate en uventet restposisjon.

Den eldre gjennomgangen av Kalshis handels-API bidrar til å identifisere behovet for handelsplasspesifikke adaptere. Akseptansetestene bør omfatte verdier nær tillatte intervaller, minstemengder og kontogrenser. En bot som bare virker for kjente runde tall, har ikke vist at den kan bevare hele spekteret av støttede inndata riktig.

Gebyrregnskap i en ja/nei-handelsbot begynner før innsending

Anslå kostnader for den faktiske siden, prisen, mengden og utførelsesrollen som vurderes, med gjeldende markedsspesifikke vilkår. Lagre anslaget separat fra den endelige kostnaden kontoen rapporterer. Anslaget informerer tillatelsen; faktisk kostnad avgjør den endelige registreringen. En gebyrforskjell bør kunne forklares uten å omskrive den opprinnelige anbefalingen som om den hadde perfekt forhåndskunnskap.

Anta at den oppdiktede boten foreslår kjøp av 120 Nei-enheter til et salgsbud på $0,67 som kan gjennomføres. Kjøpskostnaden er $80,40. Anta anslåtte anskaffelseskostnader på $1,60, som gir en samlet forpliktelse på $82. Under den oppgitte vanlige utbetalingen betaler en Nei-seier $120 og gir en gevinst på $38, mens et Nei-tap gir et tap på $82. Tallene bør vises sammen med forutsetningene fremfor som en generisk fortjenesteprosent.

Kontoens godkjenning bør reservere maksimal tillatt kjøpskostnad og et tilstrekkelig tillegg for kostnader. Hvis ordren kan utføres over flere nivåer opp til et pristak, brukes den relevante maksimale forpliktelsen fremfor bare det første observerte salgsbudet. Gebyrer kan også oppføre seg annerledes ved delvise utførelser eller endrede utførelsesroller, så reglene bør ta hensyn til den faktiske gebyrplanen fremfor å anta et universelt beløp per enhet.

Polymarkets gjeldende gebyrdokumentasjon bruker markedsspesifikke parametere. Det er en grunn til å kontrollere den relevante gebyrplanen, ikke til å kopiere én standardverdi inn i hver bot. De hypotetiske $1,60 ovenfor er en opplæringsverdi og beskriver ikke en navngitt handelsplass sin kostnad for denne mengden eller prisen.

En fullstendig ordreregistrering knytter hensikt til dokumentasjon

Ordreregistreringene til en ja/nei-handelsbot bør bevare anbefalingen, godkjenningen, innsendingsforsøket, handelsplassens ordreidentitet og senere utførelser. Anbefalingen forklarer hvorfor handlingen ble vurdert. Godkjenningen avgrenser hva kontoen kan gjøre. Innsendingsregistreringen fastslår hva som ble sendt. Utførelser fastslår hva som endret kontoen. Ved å holde trinnene adskilt blir feil enklere å lokalisere.

Hvert forsøk trenger en varig identitet. Hvis et svar går tapt, kan boten undersøke forsøket fremfor å opprette en ny uforklart ordre. Lagre opprinnelig side, handling, mengde og prisgrense sammen med forsøket. En gjenopprettingsprosess bør ikke måtte rekonstruere dem fra et senere posisjonsøyeblikksbilde eller operatørens minne om en etikett på et kontrollpanel.

Utførelsesregistreringer trenger stabile utførelsesidentifikatorer, faktiske mengder, priser og kostnader. Gjentatt levering av én utførelse bør ikke øke posisjonen to ganger. En delvis utført ordre bør beholde sin uutførte forpliktelse til den er fullført, avslått eller kansellert med tilstrekkelig dokumentasjon. Kontoens risikobilde avhenger av både bekreftede enheter og enheter som fortsatt kan komme.

En handelsbot for binære markeder bruker disse registreringene til å opprettholde avgrenset eksponering og oppgjørsregnskap. Ja/nei-adapteren tilfører et bestemt ansvar: hver registrering må bevare hvilket utfall som ble holdt, og hvilken handling som skapte eller reduserte det. Riktig mengde på feil side gir fortsatt feil mulig utbetaling.

En avslutning må bruke kjøpsbudet for siden som holdes

Fortsett med det oppdiktede Nei-kjøpet som kostet $82 inkludert alt. Anta at kontoen senere vurderer å selge alle 120 Nei-enheter til et kjøpsbud på $0,63 som kan gjennomføres. Brutto salgsinntekt ville være $75,60. Med en antatt avslutningskostnad på $1,20 ville netto salgsinntekt være $74,40, noe som gir et tap på $7,60 mot anskaffelseskostnaden. Beregningen bruker Nei-kjøpsbudet fordi kontoen selger Nei.

Å bruke Ja-salgsbudet direkte som salgspris ville være feil uten riktig gjennomgått omregning. Boten bør hente eller utlede prisen for den faktiske handlingen, kontrollere tilgjengelig mengde og bruke gjeldende kostnadsanslag. En delt hjelpefunksjon kalt «hent pris» er farlig hvis kallere ikke kan angi om de trenger et salgsbud for kjøp, et kjøpsbud for salg eller en referanse som ikke brukes til gjennomføring.

En avslutningsanbefaling bør også oppgi om den lukker hele beholdningen eller bare en del. Salg av 60 av de 120 enhetene etterlater 60 Nei-enheter med betinget utbetaling. Boten bør ikke merke kontrakten som uten posisjon bare fordi avslutningsinstruksen ble akseptert. Bekreftede salgsutførelser avgjør gjenværende mengde, og enhver åpen rest inngår fortsatt i kontoens mulige fremtidige tilstand.

Den beslektede artikkelen om en oddshandelsbot forklarer hvordan budformater kan normaliseres før evaluering. Omregningen erstatter ikke valg av ordrebokside ut fra handlingen. En riktig omregnet pris for å kjøpe en side er fortsatt feil inndata for å beregne hva kontoen ville motta ved å selge den.

Grenser som skiller mellom sider, trenger en scenariotolkning

Risikogrenser kan bruke mengder, kontantforpliktelse eller mulige tap, men koblingen fra beholdninger til scenarioer må respektere kontrakten. For nøyaktig komplementære sider av ett standard binært spørsmål kan like Ja- og Nei-mengder danne en paret utbetaling etter de oppgitte reglene. Ulike mengder etterlater resteksponering. På tvers av forskjellige kontrakter finnes kanskje ingen tilsynelatende Ja/Nei-utligning i det hele tatt.

Anta at en konto holder 120 Nei-enheter og 80 Ja-enheter i samme oppdiktede kontrakt. I den enkle modellen danner 80 enheter par, og 40 Nei-enheter forblir retningsbestemte. Hvis Ja vinner, mottar kontoen $80; hvis Nei vinner, mottar den $120. Anskaffelseskostnader og gebyrer avgjør nettoresultatet i hvert tilfelle. En nettomengde på minus 40 kan oppsummere den retningsbestemte forskjellen, men bør ikke erstatte bruttobeholdninger eller kontanthistorikk.

Bruttomengder er viktige operasjonelt fordi salg eller forvaltning av hver side kan kreve separate handlinger og beholdninger. Et risikokontrollpanel som bare viser nettoeksponering, kan skjule hvor mye kapital som er bundet på begge sider. Det kan også skjule hvilke ordrer som fortsatt er aktive og kan endre balansen. Hold bruttobeholdninger, paret mengde og resteksponering tilgjengelig for gjennomgang.

Den eldre veiledningen om Polymarkets bot-API gir bakgrunn for utfallsspesifikke kontoregistreringer. Boten bør forklare ethvert utledet nettomål med faktiske posisjoner og kontrollerte utbetalingsforhold. En risikomodell blir upålitelig når et praktisk tall med fortegn behandles som bevis for en utligning kontraktsvilkårene ikke støtter.

Ukjente ordrer må beholde sin opprinnelige side

Hvis forespørselen om Nei-kjøp får tidsavbrudd, bør boten bevare den som et usikkert Nei-kjøp med opprinnelig mengde og kostnadsgrense. Den bør ikke svare ved å sende inn et Ja-salg bare fordi handlingene kan være økonomisk beslektet i en forenklet modell. En slik endring innfører en ny kontohandling og kan kreve annen beholdning, andre tillatelser og annen kontantbehandling.

Undersøk det opprinnelige forsøket gjennom støttede ordre- og kontoregistreringer. Hvis det ble delvis utført, tas de bekreftede Nei-enhetene med, og eventuell uavklart rest beholdes. Hvis det ble avslått, frigjøres den relevante ubrukte reservasjonen. Hvis det fortsatt er åpent, avgjøres det etter gjeldende strategi om det skal beholdes eller kanselleres. Beslutningene bør bruke opprinnelig identitet og faktisk kontodokumentasjon.

Et kappløp ved kansellering kan endre sidebalansen. Anta at 50 Nei-enheter er bekreftet når tilbaketrekking etterspørres, og ytterligere 15 utføres før kansellering fullføres. Posisjonen er 65 Nei-enheter, ikke 50. Hvis boten allerede hadde sendt inn en utlignende ordre basert på tidligere mengde, trenger den resulterende porteføljen ny avstemming. Systemet bør ikke tvinge den inn i tiltenkt nettoeksponering ved å redigere et sammendragsfelt.

Test tilfellene med en bevisst asymmetrisk startkonto, for eksempel en liten Ja-beholdning og en større forespørsel om Nei-kjøp. Dette gjør sidefeil enklere å oppdage enn en test som starter med null i alle felt. Forventet resultat bør angi bruttobeholdninger, kontanter og mulig utbetaling, ikke bare en endelig mengde med fortegn.

Ukjente ordrer må beholde sin opprinnelige sideNo purchaseCash decreasesNo units increaseYes exposure changesTRADING FIELD NOTESEDUCATIONAL RESOURCE
En komplementær økonomisk tolkning erstatter ikke den faktiske kontohandlingen eller dens beholdningskrav.

Avstem gebyrer og oppgjør uten å miste revisjonssporet

Etter gjennomføring erstattes anslåtte kostnader i resultatberegninger med faktiske kontokostnader, samtidig som det opprinnelige anslaget beholdes for gjennomgang. Hvis en ytterligere anskaffelseskostnad på $0,20 senere bekreftes i avslutningseksemplet, øker samlet anskaffelseskostnad fra $82 til $82,20. Med samme netto salgsinntekt på $74,40 blir tapet $7,80. Justeringen bør ha en identifiserbar kilde og et tidspunkt.

Ved oppgjør brukes den endelige gjenværende mengden på hver side. En Nei-posisjon som ble solgt helt, har ingen gjenværende Nei-utbetaling, selv om den opprinnelige prognosen senere viser seg riktig. En delvis solgt posisjon får oppgjør bare for beholdte enheter. Den endelige hovedboken bør knytte sammen offisielt utfall, holdte mengder, godskrevne beløp og eventuell ekstraordinær behandling kontrakten angir.

Skill en endret prognose fra en regnskapsrettelse. Et nytt anslag endrer ikke kontantene som allerede er betalt, og en gebyrjustering endrer ikke hvilket utfall kontrakten spør om. Botens registreringer bør la begge endringer representeres uten å ødelegge den andre. Skillet hjelper en leser å forstå hvorfor anslått verdi og endelig resultat er forskjellige.

Hvis kontoen ikke stemmer, bevares avviket, og berørt ny aktivitet begrenses til det er forstått. En uforklart forskjell bør ikke skjules i en diversepost for gevinst eller tap bare for å lukke saken. Små avvik kan avdekke et gjentatt problem med enhetsomregning eller doble utførelser som ville blitt vesentlig ved større størrelse.

Sammenlign anslåtte og faktiske kostnader etter handling

En gebyrgjennomgang bør identifisere om en forskjell kom fra pris, mengde, utførelsesrolle eller feil gebyrplan. Anta at boten anslo en kostnad for et helt umiddelbart kjøp, men at en del av ordren ble liggende før den ble utført. Faktisk behandling avhenger av gjeldende regler for handelsplassen og markedet. Hovedboken bør bevare hvordan hver utførelse ble klassifisert fremfor å tilordne alle enheter samme rolle basert på opprinnelig hensikt.

Sammenligningen trenger også en konsekvent enhet. En kostnad uttrykt som et kontantbeløp bør ikke sammenlignes direkte med en prosent av maksimal utbetaling eller en avsetning per enhet. Omregn hvert mål uttrykkelig og bevar den opprinnelig rapporterte verdien. Dette bidrar til å skille en reell feil i kostnadsmodellen fra en visning som bruker ulike nevnere.

Hvis anslaget var konservativt og faktiske kostnader lavere, frigjøres ubrukt reserve først etter at relevante registreringer støtter beslutningen. Ikke rapporter ubrukt reserve som inntekt. Det var kapasitet holdt tilbake for en mulig kostnad, ikke penger tjent på handel. Skillet hindrer at botens tilsynelatende resultat forbedres bare fordi det opprinnelige anslaget var bevisst forsiktig.

Test adapteren med fire handlinger og to utfall

Et nyttig akseptansesett omfatter kjøp av Ja, salg av Ja, kjøp av Nei og salg av Nei der hver handling er tillatt for den faktiske kontoen. For hver kontrolleres valgt ordrebokside, mengde, kontantvirkning og gjenværende beholdninger. Bruk så begge vanlige avgjørelsesutfall og bekreft den resulterende utbetalingen. Dette dekker mer betydningsfull atferd enn gjentatt demonstrasjon av ett vellykket Ja-kjøp.

Legg til tester for et utledet bud på motsatt side, utilstrekkelig dybde, en gebyrendring og en forsinket utførelse. De forventede registreringene bør bevare råobservasjonen og den normaliserte tolkningen. Hvis en omregning bruker én minus kjøpsbudet på motsatt side, kontrolleres både pris- og mengdekobling. Hvis markedet bruker finere intervaller, inkluderes verdier som ville feile under en forutsetning om hele cent.

Den ferdige boten bør gjøre en enkel erklæring mulig for hver handling: denne kontoen kjøpte eller solgte denne mengden av dette utfallet til disse faktiske prisene, under denne tillatelsen, med disse kostnadene og denne gjenværende utbetalingseksponeringen. Denne klarheten er formålet med automatisering som skiller mellom sidene. Den holder programvarens sannsynlighetsberegninger knyttet til posisjonene og kontantstrømmene kontoen faktisk eier.

Fortsett å lære

Utforsk alle ressurser