Rubriques tendance
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Comment nous avons perdu 25 000 $ à cause d'une particularité de l'API d'un DEX perpétuel
Nous tradons beaucoup sur un DEX perpétuel (top 10 des détenteurs de points, top 5 par volume). Il s'avère que leur point de terminaison API cancel_order() est... spécial. Il renvoie toujours 200 OK.
Vous pouvez appeler cancel_order() avec :
• Un ID de commande valide (13295238234991)
• Un ID de commande client valide
• Un ID de commande ou un ID de commande client invalide
• Un ID de commande qui a déjà été annulé
• Un ID de commande datant de 6 mois
• Un sandwich au jambon
• Votre mère
→ Toujours 200 OK.
C'est acceptable si vous savez que cela se produit et que vous codez en conséquence. Nous ne le savions pas.
Le véritable problème :
• Parfois, les pics de RTT de create_order() atteignent 50 ms ou plus pendant les périodes de forte activité.
• Nous lançions une commande, puis l'annulions par ID de commande client avant que la commande n'ait réellement été exécutée.
• L'annulation renvoie 200 OK, donc nous supposons que la commande est morte et l'enlevons de nos livres.
• Quelques secondes plus tard, elle se remplit.
→ Nous nous faisons prendre pour 10 à 20 bps par incident.
Le coup de grâce ? Ces remplissages étaient mélangés avec des remplissages normaux, donc il était difficile de les repérer.
Nous avions également des boucles d'arrière-plan de commandes obsolètes en cours d'exécution, mais elles sont périodiques et ne capturaient pas toujours ces incidents avant le remplissage.
Solution :
• Pour ce DEX, nous exigeons désormais des confirmations d'annulation par websocket ou nous continuons à spammer l'annulation jusqu'à ce que notre limite de tentatives maximale soit atteinte.
Dommages :
• Perte estimée : 20 000 $ - 30 000 $.
Leçon :
• Chaque API a ses particularités. Elles ne sont généralement pas logiques, parfois même pas visibles, et souvent coûteuses.
• Vérifiez toujours que le succès signifie réellement succès, ne faites confiance à aucun 200.
Oui, nous exécutons également des stratégies de preneur d'arbitrage sur ce lieu et nous étions probablement aussi en train de "nous retirer". Mais c'est une course contre tous les MM et nos seuils de preneur pour les DEXs de perpétuels sont généralement plus élevés, donc souvent nous manquerions ou ne toucherions pas le seuil de preneur avant d'essayer.
l'autre chose un peu foireuse, c'est que maintenant je suis incité à ne pas dire au lieu de l'événement cela, car cela est devenu un avantage pour moi.
@0xKeef

27 juil. 2025
l'autre chose un peu foireuse, c'est que maintenant je suis incité à ne pas dire au lieu de l'événement cela, car cela est devenu un avantage pour moi.
42,63K
Meilleurs
Classement
Favoris