Límite de la API de Bitfinex

Actualmente hay un límite de API de 60 solicitudes por minuto en Bitfinex .

La pregunta es si este límite está relacionado con:

  • 1) dirección IP única ,

Si es así, ¿puedo tener más direcciones IP vinculadas a una cuenta, cada una de las cuales tiene el límite de 60 solicitudes por minuto?

  • 2) cuenta de usuario ,

Si es así, ¿puedo tener más cuentas con la misma dirección IP?

  • 3) clave API única

Si es así, ¿puedo tener más claves para una cuenta, cada una de las cuales tiene un límite de solicitud separado?

Respuestas (3)

Les envié un correo electrónico sobre esto:

El límite se mide por dirección IP y por cuenta . Entonces, para una cuenta (independientemente de la cantidad de pares clave/secreto), se pueden realizar 60 solicitudes por minuto a través de nuestra API. Cuando utiliza varias conexiones (direcciones IP), la suma combinada de todas las solicitudes de la cuenta en cuestión se utilizará para determinar si está por debajo del límite de 60/minuto.

Esperamos que esta respuesta haya respondido suficientemente a sus preguntas.

¿Cómo se mide la cantidad de solicitudes? ¿Lo hace cada minuto o comienza un minuto y cálculo solo cuando llega la nueva solicitud después de un retraso? ¿Puedo por ej. hacer una solicitud cada segundo durante un minuto y luego hacer 60 solicitudes a la vez durante el primer segundo del segundo minuto?
@Roces Presumiblemente, lo hacen incrementando un contador cada vez que llega una solicitud. ¿O estoy malinterpretando su pregunta?
@NickODell lo siento, actualicé mi pregunta. Presiona enter demasiado pronto.
¿Qué pasa con la tecnología WebSocket de Binance? ¿Hay algún límite de tarifa?

Mi hallazgo para el límite de velocidad de bitfinex es este: 1 segundo se divide en milisegundos. 60 solicitudes deben abarcar todo el segundo.

Por ejemplo, si tiene un bucle foreach, obtendrá un error de límite de tasa en menos de 15 solicitudes, porque está consultando demasiado rápido. Así que agregue usleep (suspensión de microsegundos en PHP) para abarcar sus solicitudes durante todo el segundo o tenga múltiples IP asignadas a su VPS o caja dedicada y use esta opción curl.

  <?php
  $ips = array('1.1.1.1','1.1.1.2','1.1.1.3');

  curl_setopt($ch, CURLOPT_INTERFACE, $ips[array_rand($ips)]);

Traté de comentar sobre la otra respuesta, pero mi representante no es lo suficientemente alto. Quería señalar que la presunción de Nick sobre el uso del contador tiene sentido, pero no responde a la pregunta que, suponiendo que su presunción sea correcta, deja esto sin respuesta: ¿Cuándo se reinicia el contador?

Lo implementaría de esta manera y (para estar seguro) supondría que así es como lo hicieron: en cada solicitud, si la cantidad de solicitudes que coinciden con su cuenta o su IP (o ambas) en los últimos 60 segundos es superior a 60 , entonces la solicitud es denegada. Esto significa que una de las "60 solicitudes a la vez durante el primer segundo del segundo minuto" sería respondida y el resto fallaría. No habría contador, sino un registro de todas las solicitudes (IP, cuenta, marca de tiempo) que se elimina de los registros de más de un minuto con la frecuencia necesaria para mantener el servidor en buen estado.