
Bots de apuestas y API: automatizar sin que te bloqueen la cuenta
El bot funciona a las 3 de la madrugada. Tu cuenta debería seguir ahí a las 9. Betfair traza una línea real entre las dos formas de lograrlo, y no es la línea que describen la mayoría de los hilos de los foros.
Un bot de apuestas es cualquier script que coloca o gestiona apuestas sin un dedo sobre el ratón. En Betfair Exchange, la palabra que decide si eso está permitido no es «bot», es «API». Las condiciones de Betfair tratan como actividad sospechosa una apuesta colocada por otros medios automatizados, distintos de que el titular coloque cada apuesta manualmente, y luego sacan la API de esa cláusula: las apuestas hechas a través de ella quedan excluidas. Una segunda regla afecta también a quienes usan la API: la cuenta tiene que seguir siendo personal. Antes de nada, prueba la lógica con los datos retrasados de la clave Delayed y diseña en torno a los límites de la API en solicitudes, concurrencia e inicios de sesión. Las claves, su coste y lo que dicen los cuatro brokers están en una página aparte, enlazada más abajo.
Lo que la regla separa realmente
La automatización es una línea más dentro de el conjunto más amplio de métodos de apuestas profesionales que recoge esta web, y tiene su propia página porque las reglas aquí son más concretas que «los apostantes sharp usan software». El argot de los foros trata «bot» como una sola cosa: un software que coloca apuestas. Las condiciones de Betfair son más precisas. La cláusula 12.1.4 enumera, entre las actividades que trata como sospechosas, una apuesta colocada «otherwise than through the Account holder placing each Bet manually» (por un medio distinto de que el titular de la cuenta coloque cada apuesta manualmente, traducción nuestra), que leída sola atraparía a todos los scripts que se han escrito jamás. No se lee sola: la misma cláusula lleva su propia excepción, dicha para evitar dudas, de que las apuestas colocadas «via the Application Programming Interface (API)» (a través de la interfaz de programación de aplicaciones) no están incluidas. Junta los dos fragmentos y la división es exacta: un script que recorre la web ordinaria es a lo que apunta la cláusula, y un script que habla con la API es la excepción que la propia cláusula nombra.
Un apunte: «bot» carga con mucho en esa frase, y la palabra no aparece nunca en la cláusula. Los abogados de Betfair escribieron «otherwise than through the Account holder placing each Bet manually», que es una forma más larga de decir lo mismo pero una frase mucho más difícil de citar mal. En fin, volvamos a lo que significa para ti.
Así que la regla no es «los bots están prohibidos» ni «los bots están bien». Es más estrecha: un script no oficial que trabaja la web como unas manos muy rápidas cae dentro de una cláusula sobre actividad sospechosa, mientras que la misma lógica conectada a la API oficial cae dentro de la excepción. Quien hace trading en la escalera a mano y un script que hace lo mismo a través de la API reciben un trato distinto del mismo documento, y la diferencia es la puerta, no la estrategia que hay detrás.
La línea del uso personal y dónde puede cruzarla un bot
Una segunda cláusula importa tanto y se lee mucho menos. Betfair puede tratar el uso de una cuenta como prohibido «if we suspect (acting reasonably) that your Account's usage represents 'business usage'» (si sospechamos, actuando con razonabilidad, que el uso de tu cuenta representa «uso comercial»), definido deliberadamente en sentido amplio: «'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» (el «uso comercial» incluye cualquier uso por parte de un operador de apuestas o de una persona u organización que suministre datos o servicios a un operador de apuestas; cláusula 11.2.13, traducción nuestra). Eso no tiene nada que ver con la excepción de la API de arriba. Un script puede estar de lleno dentro de la excepción de la 12.1.4 y aun así infringir la 11.2.13 si en realidad gestiona apuestas para otra persona, alimenta un servicio de suscriptores o hace de motor de un producto vendido a otros apostantes.
Yo trataría las dos cláusulas como respuestas a preguntas distintas. La cláusula 12.1.4 pregunta cómo se colocó la apuesta. La cláusula 11.2.13 pregunta de quién era realmente el dinero y de quién la decisión. Un bot que solo actúa en la cuenta propia de una persona supera la segunda pregunta por defecto. Un bot que gestiona los importes de varias personas, o que vende sus señales, no la supera, sea cual sea la puerta por la que coloque la apuesta.
Todo camino hacia la API parte de una cuenta verificada. La propia ayuda para desarrolladores de Betfair lo dice sin rodeos: sin una cuenta de Betfair, «you cannot proceed with licensing» (no puedes seguir con la licencia) en absoluto, y las comprobaciones de identidad que implica la verificación van por delante de cualquier clave. La automatización comercial tiene su propia vía separada por el lado de negocio de Betfair, no una clave personal con más presupuesto.
La API es la puerta. Un script en la web, no.
Qué probar antes de poner fondos en una clave Live
Todo el que construye un bot quiere pasar directamente a colocar apuestas. El orden honesto va al revés: prueba la lógica con datos deliberadamente más lentos que el tiempo real, con el importe más pequeño que admita la casa, antes de que una clave de pago o un bankroll serio estén cerca.
Ese rango, de un segundo en el mejor caso a tres minutos en el peor, no es un error de redondeo que se pueda despachar con un encogimiento de hombros. Una cuota que un script vio por última vez como razonable puede haberse movido mucho más allá cuando el script actúa, y no hay un entorno de pruebas que lo suavice: la propia documentación de Betfair afirma que no existe un banco de pruebas que permita probar sin usar fondos reales. Cada apuesta que coloca una clave Delayed es una apuesta real con un resultado real, y por eso el importe más pequeño que admita la casa es la única forma sensata de hacer esta fase.
Una hipótesis, con todas las cifras inventadas solo para la aritmética. Supón que un script vigila una cuota de 2,10, decide hacer back y la API le devuelve en ese preciso momento una instantánea de 180 segundos de antigüedad. En tres minutos puede ocurrir un gol, una tarjeta roja o una baja de última hora, así que la cuota que el script cree estar respaldando y la cuota que realmente se ofrece cuando llega la orden pueden ser dos números distintos. Ninguna lógica ingeniosa aguas arriba arregla una decisión construida sobre información desfasada; el propio retraso, y no la estrategia que va encima, es lo primero que conviene probar.
La casa es solo la mitad del cuadro; la otra mitad es los datos a los que reacciona de verdad un bot, y un script construido sobre un historial pobre fallará con cualquier clave. Comprueba la aritmética a mano en una calculadora antes de fiarte de las cifras del propio script, y recuerda que la comisión del exchange se descuenta igualmente de cualquier apuesta ganadora; lo que le hace a las cifras netas de un bot merece una lectura antes de dar por bueno sobre el papel el éxito de una estrategia.
Los límites en torno a los que hay que diseñar un script
Nada de esto trata de si la automatización está permitida. Trata del techo que la propia API pone a cómo se comporta un script, expuesto en cifras claras en lugar de dejarlo a la conjetura. Cuatro de ellos importan más cuando un script todavía está en el papel y, junto con la ventana de retraso de la clave Delayed de arriba, son cifras que Betfair puede revisar; consulta las condiciones vigentes antes de diseñar código de producción en torno a cualquiera de ellas.
- Un tope de 200 puntos en las solicitudes de datos de mercado. El coste se suma entre los mercados y el tipo de datos que se piden; pasarse del total devuelve un error en lugar de los datos.
- Un límite de 3 solicitudes simultáneas en las llamadas de órdenes y posiciones. Consultar órdenes actuales, pérdidas y ganancias u órdenes liquidadas más de tres veces a la vez, mientras siguen en curso las llamadas anteriores, se rechaza en lugar de ponerse en cola.
- Un límite de 1.000 instrucciones por segundo para colocar, cancelar, actualizar o reemplazar órdenes. Cubre toda la cuenta a través de todas las conexiones abiertas, no un script aislado.
- Un bloqueo de 20 minutos tras demasiados inicios de sesión fallidos. Todo nuevo intento de inicio de sesión se rechaza automáticamente durante ese periodo, sea cual sea la causa de los fallos anteriores.
Una segunda hipótesis, y la que de verdad pilla a la gente. Un script cuyo manejo del inicio de sesión tiene un error no renueva su sesión a tiempo y reintenta en bucle cerrado en lugar de esperar. Veinte minutos son más o menos una parte de un partido de fútbol; si activas el bloqueo en el saque inicial, el script se pierde más partido del que llegó a captar. La solución es más aburrida que la historia: mantén la sesión y trata un inicio de sesión fallido como motivo para parar, no para reintentar de inmediato.
Dónde las condiciones de un broker añaden otra capa
Todo lo anterior es el reglamento propio de Betfair, y solo se aplica a una cuenta de Betfair mantenida directamente. La herramienta de exchange de un broker es otro producto, abierto con el broker y no con Betfair, así que las cláusulas de API de Betfair no se trasladan automáticamente allí. Lo que importa entonces son las condiciones de cada broker, y no todos dicen lo mismo sobre los scripts: algunos publican una API propia, otros prohíben el acceso automatizado sin más. Trata la cláusula antiscraping de un broker como una norma de la casa que respetar y comunicar si cambia, nunca como algo que sortear. Lo que cada broker dice ya sobre los bots tiene el detalle broker por broker, junto con lo que cuestan las claves; esta página no lo repetirá.
Si construir y mantener un script no es el proyecto que de verdad se quiere, los brokers ya empaquetan parte de esto: la automatización integrada de un broker en su lugar explica lo que viene ya hecho, sin escribir código. Una cuenta señalada por actividad sospechosa bajo la cláusula 12.1.4, automatizada o no, tampoco se ignora sin más; cómo es en realidad una restricción de cuenta trata ese lado del asunto.
Yo no construiría nada antes de leer las condiciones vigentes del broker concreto, no un resumen de un foro. Las condiciones de los cuatro brokers comparadas lado a lado es la forma más rápida de ver dónde se acoge la automatización, dónde se calla y dónde se prohíbe sin más.
Preguntas frecuentes
¿Usar un bot de apuestas en Betfair Exchange va contra las reglas?
No automáticamente. Las condiciones de Betfair tratan como actividad sospechosa una apuesta colocada por otros medios automatizados, fuera de que el titular de la cuenta coloque cada apuesta manualmente, y luego excluyen expresamente de esa misma cláusula las apuestas colocadas a través de la API oficial. Un script que trabaja con la API está en la excepción; uno que trabaja la web ordinaria como unas manos muy rápidas, no.
¿Se puede usar un bot de apuestas para otra persona, o como negocio?
Eso cruza otra línea distinta. Betfair puede tratar una cuenta como prohibida si sospecha razonablemente que el uso cuenta como uso comercial, definido para incluir el uso por parte de un operador de apuestas o de cualquiera que le suministre datos o servicios. Una cuenta personal es para las apuestas propias del titular, automatizadas o no.
¿Cuál es la diferencia real entre un bot de apuestas y la API de Betfair?
«Bot» es la abreviatura del software; la API es el canal concreto y autorizado que Betfair construyó para el acceso automatizado. Las condiciones no juzgan el software por la etiqueta que lleva, solo por el canal por el que se colocó la apuesta.
¿Se puede probar un bot de apuestas sin arriesgar dinero real?
No con la clave Delayed, la opción gratuita de desarrollo: Betfair dice que no existe un banco de pruebas que permita probar sin usar fondos reales, así que cada apuesta que coloca es una apuesta real con un resultado real, y conviene mantenerla en el importe más pequeño mientras se demuestra la lógica.
¿Con qué rapidez puede colocar órdenes un bot antes de que la API lo frene?
Los techos que fija Betfair son un tope de 200 puntos en cuánto dato de mercado puede pedir una solicitud, un límite de 3 solicitudes simultáneas en las llamadas de órdenes y posiciones y un tope de 1.000 instrucciones de orden en toda la cuenta en un solo segundo. Demasiados inicios de sesión fallidos añaden además un bloqueo de 20 minutos. Consulta la documentación vigente antes de apoyarte en cualquiera de ellos para código de producción.
¿Los brokers de apuestas deportivas de esta web permiten bots de apuestas?
Depende del broker, y esta página no repetirá el detalle; la página que recoge la postura de cada broker sobre las API y la automatización lo tiene broker por broker, junto con el coste de las claves de Betfair.