Om Kalshi-transacties automatisch uit te voeren, heeft een programma meer nodig dan een signaal en toestemming om aanvragen te verzenden. Het heeft uitvoeringsregels nodig die bepalen welk contract wordt verhandeld, hoeveel blootstelling is toegestaan, welke prijzen aanvaardbaar zijn en wat er moet gebeuren wanneer de accountuitkomst afwijkt van het oorspronkelijke plan.
De kwaliteit van de uitvoering gaat deels over het verkrijgen van een aanvaardbare prijs, maar ook over weten wat er is gebeurd. Een goedkope uitvoering kan toch operationele problemen veroorzaken als de bot deze na een time-out dupliceert of een nog actief restant niet opmerkt.
Deze gids volgt een goedgekeurde beslissing over een gebeurteniscontract op een voorspellingsmarkt door de controles, indiening en reconstructie heen. Andere producttypen van Kalshi vallen erbuiten. De rekenvoorbeelden zijn illustratief en het actuele API-gedrag moet altijd worden gecontroleerd aan de hand van de relevante officiële documentatie.
Definieer de instructie voordat je Kalshi-transacties automatisch uitvoert
De instructie moet een economische bedoeling uitdrukken die losstaat van een bepaald aanvraagformaat. Leg het contract, de gewenste richting, de maximale extra hoeveelheid, de prijsgrens en de reden waarom de handeling nog geldig is vast. Vermeld ook wanneer die autorisatie vervalt.
Een richtingsaanduiding zoals kopen is onvolledig zonder een uitkomst en accountcontext. De implementatie moet de beoogde blootstelling vertalen naar de actuele representatie van het handelsplatform en daarna controleren of de vertaalde handeling het bedoelde economische effect heeft.
De maximale extra hoeveelheid verschilt van een beoogde eindpositie. Als het account al tien contracten bezit en het doel 80 is, overschrijdt de aankoop van nog eens 80 dat doel. Een instructie op basis van een doelpositie moet geverifieerde bestaande posities aftrekken en rekening houden met relevante nog actieve orders.
Houd de identiteit van de beslissing stabiel, ook als het systeem meerdere technische pogingen doet om haar uit te voeren. Nieuwe pogingen, wijzigingen en annuleringspogingen moeten herleidbaar blijven tot de economische autorisatie die ze rechtvaardigde.
De gids over algoritmische handel op voorspellingsmarkten scheidt strategieregels van implementatie. Een uitvoeringsinstructie vormt de brug daartussen: specifiek genoeg om een handeling te begrenzen en duidelijk genoeg om een beoordelaar inzicht te geven zonder een netwerkpayload te hoeven ontcijferen.
Controleer de marktstatus bij automatische Kalshi-transacties
Voer Kalshi-transacties automatisch uit met marktstatuscontroles die onderscheid maken tussen het gekozen contract en de beurs als geheel. Een werkende verbinding bewijst niet dat de specifieke markt de beoogde handeling momenteel accepteert.
Controleer de actuele handelstoestand van de markt, het relevante sluitingstijdstip en elke voorwaarde die de autorisatie van de strategie ongeldig maakt. Een contract kan nog herkenbaar en uitleesbaar zijn nadat de normale handelsmogelijkheid is geëindigd. Het contract vinden is op zichzelf geen toestemming om een aanvraag in te dienen.
Ook de beurs als geheel kan beperkingen opleggen. De documentatie van Kalshi over onderhoud en pauzes onderscheidt verschillende onderbrekingstoestanden. De uitvoeringslogica moet de actuele mogelijkheden van de relevante toestand volgen, in plaats van één ongedifferentieerde aanduiding dat de beurs online is te gebruiken.
De controle is een recente waarneming en zet toekomstig gedrag niet vast. De markttoestand kan tussen validatie en indiening veranderen. De uitkomst van de aanvraag moet daarom ook worden geïnterpreteerd wanneer de voorafgaande controles zijn geslaagd.
Sla op waarom een voorstel lokaal is afgewezen. Verouderde informatie, een gesloten markt en onvoldoende middelen vragen om verschillende vervolgacties. Een duidelijke afwijzingsregistratie helpt de eigenaar te begrijpen waarom de automatisering niet handelde, zonder blinde herhalingen op een onbeschikbare markt aan te moedigen.
Gebruik prijslimieten voor automatische Kalshi-transacties
Voer Kalshi-transacties automatisch uit met prijslimieten die de maximaal aanvaardbare aankoopprijs of minimaal aanvaardbare verkoopprijs voor de beoogde blootstelling beschrijven. Een prijsgrens beschermt één aspect van de aanvraag; zij garandeert geen uitvoering of gunstig resultaat.
Gebruik prijzen die beschikbaar zijn voor de gewenste transactie. Het hoogste koopbod is een aanbod om te kopen, niet automatisch een prijs waartegen een andere koper dezelfde uitkomst kan verwerven. Een middenprijs kan in sommige analyses een nuttige samenvatting zijn, maar is niet noodzakelijk uitvoerbaar.
Neem een hypothetische aankoopinstructie voor maximaal 80 contracten met een maximumprijs van 43 cent. De zichtbare verkoopaanbiedingen omvatten 25 contracten tegen 41 cent, 35 tegen 42 cent en nog eens 20 tegen 44 cent. Alleen de eerste 60 voldoen aan de prijsgrens.
Het gezamenlijke aankoopbedrag daarvan zou 10 dollar en 25 cent plus 14 dollar en 70 cent zijn, oftewel 24 dollar en 95 cent vóór kosten. De overige 20 zijn niet aanvaardbaar alleen omdat de strategie oorspronkelijk 80 contracten wilde.
De strategiegids voor handel op voorspellingsmarkten legt uit waarom waarde afhangt van prijs en kosten. De uitvoeringslaag bewaart dat oordeel door te weigeren de goedgekeurde grens op te rekken enkel om een volledig uitgevoerde hoeveelheid te kunnen rapporteren.
Bepaal wat er met een niet-uitgevoerd restant moet gebeuren
De geldigheidsduur van een order en de daarbij behorende uitvoeringsvoorwaarden bepalen of een niet-uitgevoerde hoeveelheid actief kan blijven of onder de gekozen voorwaarde moet vervallen. Die beslissing hoort vóór indiening in de regels te staan, omdat zij bepaalt hoelang het account blootgesteld blijft aan toekomstige uitvoeringen.
Een rustende order kan op liquiditeit wachten, maar kan worden uitgevoerd wanneer de oorspronkelijke informatie minder bruikbaar is geworden. Regels voor onmiddellijke uitvoering kunnen een langdurig actief restant vermijden, terwijl ze accepteren dat slechts een deel of niets van de gewenste hoeveelheid wordt verworven.
Een alles-of-nietsvoorwaarde heeft een ander doel: zij kan vereisen dat de volledige gevraagde hoeveelheid of het volledige gevraagde bedrag volgens de orderregels beschikbaar is. Ze belooft niet dat aan de voorwaarde wordt voldaan en maakt een latere onafhankelijke order niet tot onderdeel van dezelfde transactie.
Lees de momenteel ondersteunde keuzes in de referentie voor het aanmaken van gebeurtenisorders. Bekende aanduidingen van een andere beurs of een oudere client mogen niet worden overgenomen zonder hun exacte betekenis en geldige combinaties te controleren.
Voor het voorbeeld met 80 contracten maakt dit verschil. De ene regel kan eindigen met 60 uitgevoerde contracten en geen actief restant; een andere kan 20 contracten achterlaten die later nog kunnen worden uitgevoerd. Beide kunnen de prijslimiet van 43 cent naleven, maar ze scheppen verschillende doorlopende verplichtingen.
Reserveer middelen voor de volledige geautoriseerde aanvraag
Houd vóór indiening rekening met de middelen die de aanvraag kan verbruiken als zij volledig binnen haar grenzen wordt uitgevoerd. Alleen de goedkoopste zichtbare contracten meetellen kan de verplichting onderschatten die een actieve order later mag veroorzaken.
Bij de illustratieve aanvraag voor 80 contracten met een maximumprijs van 43 cent is het maximale aankoopbedrag vóór uitgaven 34 dollar en 40 cent. Met een veronderstelde kostenruimte van 60 cent zou volgens de regels 35 dollar worden gereserveerd. Dit zijn educatieve aannames, geen actuele tariefvoorwaarden.
De zichtbare mogelijkheid voor 60 contracten kan minder kosten, maar een resterende order kan nog steeds van belang zijn. Middelen die voor die mogelijkheid zijn gereserveerd mogen niet tegelijk een andere strategie toestemming geven hetzelfde bedrag uit te geven.
Maak onderscheid tussen beschikbare accountmiddelen en een lokale verwachting van beschikbaarheid. Een andere order, handmatige handeling of accountupdate kan veranderen wat nog bruikbaar is. De reserveringslogica moet geverifieerd accountbewijs combineren met de nog openstaande verplichtingen van het programma.
Een afgewezen aanvraag mag haar lokale reservering pas vrijgeven wanneer de uitkomst voldoende duidelijk is. Een onzekere time-out kan nog steeds bij een geaccepteerde order horen. Het volledige budget onmiddellijk aan de beschikbare middelen teruggeven kan er daarom toe leiden dat de volgende instructie te veel middelen van het account vastlegt.
Controleer op conflicterende nog actieve orders
Een account kan meerdere strategieën of handmatige orders voor hetzelfde contract bevatten. Een nieuwe aanvraag moet tegen die bestaande verplichtingen worden afgewogen, in plaats van te worden behandeld alsof zij de enige activiteit op het handelsplatform is.
Tegengestelde orders kunnen onbedoeld tegen elkaar worden uitgevoerd of capaciteit verbruiken op een manier die de strategie niet verwachtte. Orders in dezelfde richting kunnen blootstelling opstapelen boven een schijnbare limiet per order. De relevante vraag is wat het account kan bezitten nadat alle toegestane orders hebben gewerkt.
Gebruik waar passend de ondersteunde maatregelen van het handelsplatform om handel met jezelf te voorkomen, maar beschouw die niet als vervanging voor coördinatie. Een platformmaatregel kan het uitvoeringsgedrag veranderen zonder te bepalen welke van twee strategieën over het beschikbare risicobudget mag beschikken.
De eigenaar moet bepalen of strategieën om hetzelfde contract mogen concurreren, een centrale middelenverdeler delen of exclusieve controle nodig hebben. Die keuze over de aansturing beïnvloedt hoe de uitvoeringslaag een nieuwe instructie goedkeurt en conflicten oplost.
Een nuttig beoordelingsdossier vermeldt welke actieve orders zijn meegewogen toen de aanvraag werd goedgekeurd. Als het account later een verwachte blootstelling overschrijdt, helpt dat bewijs onderscheid te maken tussen een verouderde waarneming en een toewijzingsregel die nooit met de gezamenlijke verplichtingen rekening hield.
Dien een herkenbare bedoeling in, geen anonieme poging
Leg de goedgekeurde bedoeling duurzaam vast voordat de aanvraag wordt verzonden. De identificatie moet de beslissing, de technische aanvraag en eventueel resulterend orderbewijs met elkaar verbinden. Anders kan een procesonderbreking een actieve order achterlaten zonder duurzame verklaring waarom die bestaat.
Gebruik het gedocumenteerde mechanisme voor clientorderidentificatie consequent. Het exacte gedrag ervan moet uit de API-documentatie volgen. Het mag niet worden beschreven als een universele garantie dat willekeurige herhaalde aanvragen nooit dubbele economische activiteit kunnen veroorzaken.
Een beslissing om opnieuw te proberen moet onderscheid maken tussen een poging die zeker bij de validatie is mislukt en een poging waarvan het resultaat onbekend is. Het eerste kan een gecorrigeerde aanvraag binnen dezelfde economische regels toelaten. Het tweede vraagt om reconciliatie voordat een nieuwe handeling wordt geautoriseerd.
Leg voldoende context vast om de poging te reconstrueren, waaronder de accountscope, het contract, de beoogde hoeveelheid en de prijsgrens. Gevoelige toegangsgegevens horen niet in gewone activiteitenlogboeken, ook wanneer diagnostische gegevens van de aanvraag nuttig zijn.
De gids over bot-API's voor voorspellingsmarkten beschrijft hoe een clientinterface die betekenissen kan behouden. Het belangrijke resultaat is een duurzame koppeling van de autorisatie van de eigenaar naar iedere poging die namens die eigenaar wordt gedaan.
Interpreteer het antwoord zonder de betekenis ervan uit te breiden
Een succesvol antwoord levert volgens de gedocumenteerde structuur van het endpoint bewijs over de aanvraag. Het mag niet worden verheven tot de bewering dat de volledige gewenste positie is verworven, tenzij de gerapporteerde feiten dat resultaat aantonen.
Actuele antwoordvelden kunnen identificaties, uitgevoerde hoeveelheden of bedragen en een resterende hoeveelheid of een resterend bedrag bevatten zonder elk gegeven te leveren dat voor het accountgrootboek nodig is. De client moet het antwoord bewaren en het aanvullende bewijs verzamelen dat nodig is om de latere ordertoestand te verklaren.
Bij een onmiddellijke afwijzing moet de oorzaak bewaard blijven. Een verkeerd opgebouwde aanvraag, een middelenprobleem en een onbeschikbare markt zijn verschillende fouten. Een ongewijzigde aanvraag herhaald verzenden kan capaciteit verspillen en het probleem verhullen zonder de kans op een geldig resultaat te verbeteren.
Een transportfout is weer iets anders. De bot weet mogelijk niet of het handelsplatform de aanvraag heeft verwerkt. De interne toestand moet onbekend aangeven in plaats van afgewezen of uitgevoerd, totdat aanvullend bewijs de onduidelijkheid oplost.
De uitvoeringsregels moeten bepalen welke feiten uit het antwoord elke volgende handeling toestaan. Dat voorkomt dat een algemene routine voor succesvolle antwoorden budget vrijgeeft, een nieuwe order start of de strategie voltooid verklaart voordat de werkelijke accountgevolgen bekend zijn.
Reconcilieer uitvoeringen bij automatische Kalshi-transacties
Voer Kalshi-transacties automatisch uit met reconciliatie van uitvoeringen die kan reconstrueren wat werkelijk is verhandeld. Elke unieke uitvoering draagt hoeveelheid en geldelijke effecten bij, terwijl ordersamenvattingen aanvullend bewijs leveren over cumulatieve uitvoering en resterende verplichtingen.
Tel herhaalde cumulatieve totalen niet op alsof het nieuwe uitvoeringen zijn. Als een waarneming 25 uitgevoerde contracten laat zien en een latere waarneming 60, is het totaal 60 en niet 85. Incrementele gebeurtenissen en cumulatieve momentopnamen hebben verschillende bijwerkregels nodig.
Ontdubbel incrementele gebeurtenissen aan de hand van hun gedocumenteerde identificaties en behoud hun relaties met orders. Na opnieuw verbinden kan eerder ontvangen informatie nogmaals worden geleverd. Die tweemaal verwerken zou een onjuiste positie scheppen en het schijnbare geldelijke resultaat vertekenen.
In het doorlopende voorbeeld leveren 25 contracten tegen 41 cent en 35 tegen 42 cent in totaal 60 verworven contracten op, met vóór uitgaven een gemiddelde prijs van ongeveer 41,58 cent. Veronderstelde werkelijk gemaakte kosten van 30 cent brengen de totale kosten op 25 dollar en 25 cent.
Als het account begon met tien contracten in dezelfde richting en er geen andere activiteit was, bezit het er nu 70. Dat positieresultaat verschilt zowel van de gevraagde 80 extra contracten als van de 60 contracten die door deze specifieke instructie zijn uitgevoerd.
Gebruik tijdstempels om schijnbaar tegenstrijdig bewijs te verklaren
Een orderantwoord, een stroom uitvoeringsgegevens en een accountmomentopname kunnen verschillende momenten beschrijven. Een verschil betekent niet automatisch dat één bron onjuist is, maar mag ook niet worden genegeerd alleen omdat de gegevens naar verwachting uiteindelijk consistent worden.
Bewaar de tijdstempels en de reikwijdte van elke waarneming. Een saldomomentopname van vóór een nieuwe uitvoering kan die uitvoering niet weerleggen. Een later cumulatief orderdossier kan activiteit bevatten die de lokale gegevensstroom nog niet heeft geleverd.
Kalshi documenteert een endpoint voor de tijdstempel van gebruikersgegevens om de actualiteit van bepaalde accountgegevens te helpen vaststellen. Dat bewijs kan reconciliatie ondersteunen, maar verandert afzonderlijk opgehaalde antwoorden niet allemaal in één atomaire accountmomentopname.
Kies een uitdrukkelijke herstelmethode voor hiaten. Het programma kan de actuele ordertoestand, relevante uitvoeringen en een nieuwe uitlezing van de positie nodig hebben, waarbij paginering of de historische reikwijdte waar nodig correct wordt behandeld. Eén lege pagina mag niet automatisch een lege geschiedenis bewijzen.
Laat onopgeloste verschillen zichtbaar en beperk afhankelijke handelingen wanneer dat nodig is. Het doel is een verklaarbare accounttoestand, geen weergave die de nieuwste waarnemingen altijd tot overeenstemming dwingt door onwelgevallig bewijs weg te gooien.
Een bredere gids over het automatiseren van Kalshi-gebeurteniscontracten onderscheidt accountobservatietijden eveneens van publicatieschema's, handelsdeadlines en mijlpalen bij de vaststelling van de uitkomst.
Annuleer een restant zonder de uitvoeringen uit te wissen
Een annuleringsaanvraag betreft het niet-uitgevoerde deel van een order op het moment dat de annulering van kracht wordt. Zij draait een reeds voltooide transactie niet terug, en de resterende hoeveelheid kan veranderen terwijl de aanvraag onderweg is.
Stel dat de illustratieve order 60 uitgevoerde contracten en 20 nog actieve contracten heeft wanneer annulering wordt aangevraagd. Als er nog vijf worden uitgevoerd voordat de annulering slaagt, kan het eindresultaat 65 uitgevoerde en 15 geannuleerde contracten zijn. Het account moet die vijf extra uitvoeringen behouden.
De positie zou dan 75 contracten bedragen als het account met tien begon en er geen andere activiteit was. Een rapport dat de eerdere positie van 70 contracten bleef weergeven zou de blootstelling onderschatten, ook al is de annulering zelf geslaagd.
Als annulering niet kan worden bevestigd, houd het mogelijke restant dan in de risicoregistratie. Een lokale knop die van actief naar gestopt verandert, bewijst niet dat het handelsplatform de order heeft verwijderd. De interface moet onderscheid maken tussen de aangevraagde handeling en het geverifieerde resultaat ervan.
Reconcilieer na een bevestigde annulering de uiteindelijke uitgevoerde hoeveelheid en elke resterende accountverplichting. Daarmee sluit de orderlevenscyclus, terwijl de positielevenscyclus behouden blijft. Die kan tot een latere verkoop of afwikkeling doorlopen.
Valideer opnieuw voordat je een order vervangt of de prijs verbetert
Een niet-uitgevoerde order kan het programma verleiden de markt te achtervolgen door de prijs herhaald te verbeteren. Dat gedrag verandert de economische grondslag van de oorspronkelijke beslissing en moet uitdrukkelijke regels vereisen, in plaats van uit een herhaallus voort te komen.
Beoordeel vóór elke vervanging de verwachting, actuele marktinformatie, resterende hoeveelheid en accountblootstelling opnieuw. Een eerder aanvaardbare prijs kan na nieuwe informatie onaantrekkelijk zijn, zelfs als daarmee eindelijk een uitvoering zou worden verkregen.
Ook wijzigingen in hoeveelheid vragen om een precieze betekenis. Een orderwijziging kan een herzien totaal aan toegestane uitvoeringen beschrijven, terwijl een vermindering op het nog actieve restant kan slaan. De client moet de definitie van de actuele bewerking gebruiken, in plaats van één algemeen omvangveld voor alle handelingen te delen.
Een reeks van annuleren en vervangen kan een periode omvatten waarin de uitkomst van de oude order onzeker is. De vervangende order indienen voordat die onzekerheid is opgelost, kan ertoe leiden dat beide nog uitvoeringen kunnen opleveren. De regels moeten rekening houden met de gezamenlijke mogelijke blootstelling.
Leg de reden vast voor elke economische wijziging. Een vervanging wegens een nieuwe verwachting verschilt van een vervanging uit ongeduld over een niet-uitgevoerde order. Dat onderscheid helpt vaststellen of het waargenomen handelsgedrag werkelijk de goedgekeurde strategie volgt.
Behoud kennis over orders tijdens een pauze of herstart
Een lokale herstart mag de economische werkelijkheid niet opnieuw laten beginnen. Orders die het handelsplatform al heeft geaccepteerd en posities die al worden aangehouden, kunnen het proces dat ze heeft gecreëerd overleven. Herstel begint met het reconstrueren van die verplichtingen.
Laad de dossiers van onopgeloste bedoelingen, onderzoek actueel accountbewijs en identificeer eventuele hiaten voordat nieuwe indieningen worden ingeschakeld. Een lege lijst in het geheugen bewijst alleen dat het proces zojuist is gestart, niet dat het account geen actieve orders heeft.
Een marktpauze vraagt om vergelijkbare discipline. Bepaal welke posities nog worden aangehouden, welke ordereffecten bekend zijn en welke handelingen momenteel beschikbaar zijn. Beoordeel bij hervatting het oorspronkelijke signaal opnieuw, in plaats van elke eerder uitgestelde aanvraag automatisch opnieuw af te spelen.
De gids over handelsautomatisering op voorspellingsmarkten behandelt waarneming en herstel als doorlopende verantwoordelijkheden. Uitvoeringsbeheersing profiteert van dezelfde benadering: de bot moet zijn verplichtingen kunnen blijven verklaren, ook wanneer hij geen nieuwe mag scheppen.
Het herstellen van de verbinding kan een noodzakelijke herstelstap zijn, maar geeft op zichzelf onvoldoende autorisatie om te handelen. Het accountdossier, de actuele marktomstandigheden en de uitvoeringsregels moeten overeenstemmen voordat een nieuwe instructie verder mag.
Beoordeel de uitvoering zonder ongewenste uitvoeringen te belonen
Een beoordeling van de uitvoering moet vragen of de bot de goedgekeurde grenzen heeft gevolgd en het resultaat nauwkeurig heeft gerapporteerd. Alleen een hoog uitvoeringspercentage kan gedrag belonen dat te veel betaalt, te lang wacht of meer blootstelling opbouwt dan bedoeld.
Vergelijk de werkelijke hoeveelheid en het gemiddelde verwervingsbedrag met de toegestane prijzen die op het beslismoment beschikbaar waren, met erkenning van de beperkingen van historische reconstructie van het orderboek. Een weergegeven prijsopgave bewijst niet dat dezelfde liquiditeit voor elke hypothetische order beschikbaar zou zijn gebleven.
Meet naast prijsuitkomsten ook onopgeloste aanvragen, verouderde waarnemingen, races tussen annulering en uitvoering en de verwerking van dubbele gebeurtenissen. Deze operationele feiten kunnen verklaren waarom de gerapporteerde positie van een strategie afweek van de beoogde positie, ook als de verwachting zelf redelijk was.
Beoordeel ook beslissingen die terecht niet tot een transactie leidden. Een verlopen signaal of een order buiten de prijsgrens afwijzen kan geslaagde uitvoeringsbeheersing zijn. Alle inactiviteit als falen behandelen zet het systeem onder druk om de eigen beperkingen te omzeilen.
Het vermogen om Kalshi-transacties automatisch uit te voeren wordt daarom het best aangetoond met een volledige uitleg: wat was geautoriseerd, wat is geprobeerd, wat is uitgevoerd, wat bleef over en hoe is de uiteindelijke accounttoestand geverifieerd? Die uitleg maakt de automatisering beoordeelbaar zonder snelle indiening te verwarren met een beheerst economisch resultaat.
Verwante gidsen en uitgewerkte voorbeelden
- Geautomatiseerde bot voor Kalshi-voorspellingsmarkten: duidelijke toelatingscontroles — Verbind controles op toelating met het volledige geautomatiseerde voorspellingsproces.
- Geautomatiseerde handel op Kalshi: voer de dagelijkse cyclus uit — Verbind marktgegevens, dagelijkse werkzaamheden, orderregistraties en uiteindelijke afwikkeling.