I'm checking up different exchanges and about to make my first purchase. Then I noticed there are so many different exchanges, and each has quite different liquidity and bid/ask spread. Why is it so? Why is there no arbitrager to trade between exchanges?
There are several reasons, but one key one is simply that the assets traded are not perfectly equivalent. For example, a dollar at Bitstamp is not precisely equal to a dollar to Bitfinex. They have different banking connections, different withdrawal and deposit fees, and different risks of failing to permit a withdrawal due to insolvency, theft, regulatory pressure, or the like.
Another reason is that exchanges tend to permit fairly fast trading and having to synchronize with other exchanges would be slow and unreliable. This would be solvable if two exchanges want to perform such a thing, but rapidly become untenable if you tried to scale it. You can't reserve liquidity without freezing an order book or offers can execute out of order, angering traders.