En liten rutnätsform kopplad med en rak linje till en kugghjulsform som står ensam till höger.

Spelbottar och API: automatisering utan att bli utelåst

Boten kör klockan 03:00. Ditt konto ska fortfarande finnas klockan 09:00. Betfair drar en verklig gräns mellan de två sätten att nå dit, och den är inte den gräns som de flesta forumtrådar beskriver.

En spelbot är varje skript som lägger eller hanterar spel utan att någon rör musen. På Betfair Exchange är det inte ordet ”bot” som avgör om det är tillåtet, utan ordet ”API”. Betfairs villkor behandlar ett spel som läggs på annat automatiserat sätt än att kontoinnehavaren lägger varje spel manuellt som misstänkt aktivitet, och tar sedan API:et rakt ut ur den klausulen: spel som läggs via det är uttryckligen undantagna. En andra regel träffar också API-användare: kontot måste förbli personligt, inte en tjänst som drivs åt någon annan. Innan något av detta spelar roll bör du testa logiken mot Delayed-nyckelns försenade data och bygga utifrån API:ets egna gränser för anrop, samtidiga anrop och inloggningar. Själva nycklarna, vad var och en kostar och vad de fyra brokerna säger om sina egna verktyg finns på en egen sida, länkad nedan.

Vad regeln faktiskt delar upp

Automatisering är en av flera metoder inom den bredare uppsättningen metoder för proffsspel som den här sajten går igenom, och den får en egen sida eftersom reglerna här är mer specifika än ”sharp-spelare använder programvara”. Forumens förkortning behandlar ”bot” som en enda sak: programvara som lägger spel. Betfairs villkor är mer precisa. Klausul 12.1.4 räknar bland den aktivitet som anses misstänkt upp ett spel som läggs ”otherwise than through the Account holder placing each Bet manually”, vilket om man läser det ensamt skulle fånga varje skript som någonsin skrivits. Det läses inte ensamt: samma klausul innehåller sitt eget undantag, uttryckt för tydlighetens skull, att spel som läggs ”via the Application Programming Interface (API)” inte ingår. Sätt ihop de två fragmenten och uppdelningen blir exakt: ett skript som klickar sig fram på den vanliga webbplatsen är det klausulen riktar sig mot, och ett skript som pratar med API:et är det undantag som klausulen själv nämner.

Notera: ”bot” får bära mycket i den meningen, och ordet förekommer faktiskt aldrig i klausulen. Betfairs jurister skrev ”otherwise than through the Account holder placing each Bet manually” i stället, vilket är ett längre sätt att säga samma sak men en mycket svårare mening att citera fel. Hur som helst, tillbaka till vad det betyder för dig.

Regeln är alltså inte ”bottar är förbjudna” och inte ”bottar är okej”. Den är snävare: ett inofficiellt skript som arbetar på webbplatsen som ett par mycket snabba händer hamnar inom en klausul om misstänkt aktivitet, medan samma logik kopplad till det officiella API:et hamnar inom undantaget. Den som handlar prisstegen för hand och ett skript som gör samma sak via API:et behandlas olika av samma dokument, och skillnaden är dörren, inte strategin bakom den.

Gränsen för personligt bruk, och där en bot kan passera den

En andra klausul spelar lika stor roll och läses mycket mer sällan. Betfair kan anse att ett kontos användning är förbjuden ”if we suspect (acting reasonably) that your Account's usage represents 'business usage'”, definierat medvetet brett: ”'business usage' includes any use by a betting operator or any use by an individual or organisation supplying data or services to a betting operator” (klausul 11.2.13). Det har ingenting att göra med API-undantaget ovan. Ett skript kan ligga helt inom undantaget i 12.1.4 och ändå bryta mot 11.2.13 om det i själva verket lägger spel åt någon annan, matar en prenumerationstjänst eller fungerar som motor i en produkt som säljs till andra spelare.

Jag skulle se de två klausulerna som svar på olika frågor. Klausul 12.1.4 frågar hur spelet lades. Klausul 11.2.13 frågar vems pengar och vems beslut det egentligen var. En bot som bara någonsin agerar på en persons eget konto klarar den andra frågan som standard. En bot som hanterar flera personers insatser, eller säljer sina signaler, gör det inte, oavsett vilken dörr den använder för att lägga spelet.

Varje väg in till API:et börjar med ett verifierat konto. Betfairs egen utvecklarhjälp säger det rakt ut: utan ett Betfair-konto ”you cannot proceed with licensing” alls, och de identitetskontroller som verifieringen faktiskt innebär ligger före varje nyckel. Kommersiell automatisering har en egen separat väg via Betfairs affärssida, inte en personlig nyckel med större budget.

API:et är dörren. Ett skript på webbplatsen är det inte.

Vad du bör testa innan en Live-nyckel får pengar

Alla som bygger en bot vill hoppa direkt till att lägga spel. Den ärliga ordningen går åt andra hållet: bevisa logiken mot data som medvetet är långsammare än realtid, med den lägsta insats som börsen tillåter, innan en betald nyckel eller en seriös spelkassa finns i närheten.

Betfairs Delayed-nyckel: hur gamla prisdata kan vara

Källa: Betfairs utvecklardokumentation, FACTS-betfair.md avsnitt 6.

Diagramdata
PostVärde
Snabbaste ögonblicksbilden1
Långsammaste ögonblicksbilden180

Det spannet, en sekund i bästa fall och upp till tre minuter i värsta, är inget avrundningsfel att rycka på axlarna åt. Ett pris som ett skript senast såg som rimligt kan ha rört sig långt förbi det när skriptet agerar, och det finns ingen sandlåda som mildrar det: Betfairs egen dokumentation anger att det inte finns någon testmiljö där någon kan testa utan riktiga pengar. Varje spel en Delayed-nyckel lägger är ett riktigt spel med ett riktigt resultat, och därför är den lägsta insats börsen tillåter det enda rimliga sättet att köra det här steget.

Ett hypotetiskt exempel, där alla siffror är påhittade och bara tjänar räkneexemplet. Säg att ett skript bevakar ett pris på 2,10, bestämmer sig för att backa det och att API:et i exakt det ögonblicket lämnar tillbaka en ögonblicksbild som är 180 sekunder gammal. Ett mål, ett rött kort eller en sen avbokning kan hända på tre minuter, så priset skriptet tror att det backar och priset som faktiskt erbjuds när ordern landar kan vara två olika tal. Ingen smart logik uppströms rättar ett beslut som byggts på inaktuell information; fördröjningen i sig, inte strategin ovanpå den, är det första som är värt att testa.

Börsen är bara halva bilden; den andra halvan är det dataflöde som en bot faktiskt reagerar på, och ett skript som bygger på tunn historik gör fel oavsett vilken nyckel det kör på. Kontrollräkna för hand i en kalkylator innan du litar på skriptets egna siffror, och kom ihåg att börsprovision fortfarande dras på varje vinnande spel; vad den gör med en bots nettosiffror är värt att läsa innan en strategi bedöms som lyckad på pappret.

En rad små mekaniska armar över en spelkupong, alla utom en stillastående mitt i rörelsen.
Det mesta av en bot är väntan. Den del som avfyras är den del som reglerna bryr sig om.

De gränser ett skript måste utformas efter

Inget av detta handlar om huruvida automatisering är tillåten. Det handlar om det tak som API:et självt sätter för hur ett skript får bete sig, angivet i tydliga siffror i stället för att lämnas åt gissningar. Fyra av dem betyder mest när ett skript fortfarande ligger på ritbordet, och tillsammans med Delayed-nyckelns egna fördröjningsfönster ovan är de siffror som Betfair kan ändra; kontrollera de aktuella villkoren innan du utformar produktionskod efter någon av dem.

  • Ett tak på 200 poäng för förfrågningar om marknadsdata. Kostnaden läggs ihop över marknaderna och typen av data som efterfrågas; går du över totalen returneras ett fel i stället för data.
  • Ett tak på 3 samtidiga anrop för order och positioner. Att kontrollera aktuella ordrar, vinst och förlust eller avgjorda ordrar fler än tre gånger samtidigt, medan tidigare anrop fortfarande pågår, avvisas i stället för att köas.
  • Ett tak på 1 000 instruktioner per sekund för att lägga, avbryta, uppdatera eller ersätta ordrar. Det gäller hela kontot över varje öppen anslutning, inte ett skript för sig.
  • En utelåsning på 20 minuter efter för många misslyckade inloggningar. Varje ytterligare inloggningsförsök avvisas automatiskt under den perioden, oavsett vad som orsakade de tidigare misslyckandena.

Ett andra hypotetiskt exempel, och det som faktiskt fångar folk. Ett skript vars inloggningshantering har en bugg förnyar inte sin session i tid och försöker om i en tät slinga i stället för att backa. Tjugo minuter är ungefär en fotbollshalvlek; utlös utelåsningen vid avspark och skriptet missar mer av matchen än det någonsin hann fånga. Lösningen är tråkigare än historien: håll sessionen vid liv och behandla en misslyckad inloggning som en anledning att stanna, inte att försöka om direkt.

Där en brokers egna villkor lägger till ett lager

Allt ovan är Betfairs eget regelverk, och det gäller bara ett Betfair-konto som hålls direkt. En brokers börsverktyg är en annan produkt, öppnad hos brokern och inte hos Betfair, så Betfairs API-klausuler följer inte automatiskt med dit. Det som räknas i stället är varje brokers egna villkor, och de säger inte samma sak om skript: vissa publicerar ett eget API, andra förbjuder automatiserad åtkomst helt. Se en brokers klausul mot scraping som dess egen husregel att respektera och rapportera om den ändras, aldrig som något att ta sig förbi. Vad varje broker redan säger om bottar har detaljerna broker för broker, vid sidan av vad nycklarna kostar; den här sidan upprepar det inte.

Om det inte är att bygga och underhålla ett skript som du egentligen vill ha, paketerar brokerna redan en del av detta: en brokers inbyggda automatisering i stället går igenom det som kommer färdigt, utan kod. Ett konto som flaggats för misstänkt aktivitet enligt klausul 12.1.4, automatiserat eller inte, förbigås inte heller i tysthet; hur en kontobegränsning faktiskt ser ut tar upp den sidan av saken.

Jag skulle inte bygga något innan jag läst den aktuella brokerns specifika villkor, inte en forumsammanfattning. De fyra brokernas villkor jämförda sida vid sida är det snabbaste sättet att se var automatisering är välkommen, var villkoren tiger och var den är helt förbjuden.

Frågor som många ställer

Strider det mot reglerna att använda en spelbot på Betfair Exchange?

Inte automatiskt. Betfairs villkor behandlar ett spel som läggs på annat automatiserat sätt än att kontoinnehavaren lägger varje spel manuellt som misstänkt aktivitet, och undantar sedan uttryckligen spel som läggs via det officiella API:et från samma klausul. Ett skript som arbetar via API:et ligger inom undantaget; ett som arbetar på den vanliga webbplatsen som mycket snabba händer gör det inte.

Kan en spelbot köras åt någon annan, eller som ett företag?

Då passerar du en separat gräns. Betfair kan anse att ett konto är förbjudet om de rimligen misstänker att användningen räknas som affärsmässig användning, definierad så att den omfattar användning av en speloperatör eller av den som levererar data eller tjänster till en. Ett personligt konto är till för innehavarens eget spelande, automatiserat eller inte.

Vad är den faktiska skillnaden mellan en spelbot och Betfairs API?

”Bot” är en förkortning för programvaran; API:et är den specifika, godkända kanal som Betfair byggt för automatiserad åtkomst. Villkoren bedömer inte programvara efter etiketten, bara efter vilken kanal som lade spelet.

Går det att testa en spelbot utan att riskera riktiga pengar?

Inte på Delayed-nyckeln, det kostnadsfria utvecklingsalternativet: Betfair säger att det inte finns någon testmiljö där någon kan testa utan riktiga pengar, så varje spel den lägger är ett riktigt spel med ett riktigt resultat, bäst hållet till den lägsta insatsen medan logiken fortfarande bevisas.

Hur snabbt kan en spelbot lägga ordrar innan API:et stryper den?

De tak Betfair anger är ett tak på 200 poäng för hur mycket marknadsdata en enskild förfrågan får efterfråga, en gräns på 3 samtidiga anrop för order och positioner och ett tak på 1 000 orderinstruktioner över kontot under en enda sekund. För många misslyckade inloggningar ger dessutom en utelåsning på 20 minuter. Kontrollera den aktuella dokumentationen innan du förlitar dig på något av dessa för produktionskod.

Tillåter spelbrokerna på den här sajten spelbottar?

Det varierar mellan brokerna, och den här sidan upprepar inte detaljerna; sidan som går igenom varje brokers egen hållning till API och automatisering har det broker för broker, vid sidan av vad Betfair-nycklarna kostar.