I wrote a triangular arbitrage bot for cryptocurrencies on Binance, and made like 0.01 ETH with ~0.3 ETH. I think that was just luck though, because all three trades would never go through right away because the price anomaly that caused the arbitrage opportunity would be gone before I could make all three trades. So I ended up holding some sketchy coins that happened to go up relative to ETH before I sold them back.
I used Python and ccxt.