Я долго думал над решением данной проблемы и много анализировал поведение биржи при возникновении треугольников.
Что я заметил:
Для проведения сделки необходимо иметь сразу три монеты на счёту, чтобы в раз отправить три ордера.
Необходимо иметь основной запас в usdt, и немного в двух оставшихся валютах - в размере одной сделки. Также вовремя не забывать закупаться bnb.
Например btc и eth в эквиваленте 10-12 долларов.
Большинство треугольников с конверсией выше единицы просто висит в истории, потому что торгуемые пары очень тонкие, цены очень низкие, ликвидности нет и часто цены растут и снижаются без совершения сделок. Поэтому бот синусит.
Единственное решение - мониторить bid и ask по нтересуемым трём парам. Биржа бинанс не даёт возможности мониторить bid и ask сразу всех пар, приходится выбирать пары и мониторить.
Другой момент использовать две транзакции одновременно, а третью растянуть во времени. Например если у вас третья транзакция usdc/usdt, то можно дождаться когда конверсия по ней будет выше.