Why don't people buy at one exchange and sell at another?
Bitcoinity.org shows that for the past 30 days, bitstamp's price is high at 101.00, low at 77.00, and current price is 98.04. On contrast, mtgox's price for the past 30 days is high at 115.00, low at 86.20, and current price is 110.50.
In other words, someone or anyone can just buy from bitstamp and sell to mtgox to make profit.
What's stopping people from doing so? What's the catch?
It can't be that people aren't aware that they could do it right?
Because of Mt Gox's current withdrawal problems, a dollar at Mt Gox is worth less than a dollar at Bitstamp.
Google "Mt Gox withdrawal" to see various reports of difficulty withdrawing USD and EUR from Gox.
Many people already do this with bitcoin. In finance, this is called arbitrage trading, or simply arbitrage, sometimes even abbreviated arb.
The reason for the price differences are fees for transferring between the bitcoin exchanges (you have to transfer both, bitcoins and fiat currency for a complete cycle) and fees for trading bitcoins against fiat currencies.
Because of the arbitrage traders, who make profits as long as the price difference is big enough, the prices on different exchanges quickly adjust to be right at the border between where the fees eat up the earning and where you make profits.
There is an excellent page, http://bitcoin-analytics.com , which can tell you where there currently are arbitrage oppurtunities. Simply go to the website and click on "Arbitrage".
Do you mean that for one whole month no one bothered to do arbitrage trading even when the spread is 10% (quite high)?
It's not about the spread alone. As explained, a lot of your profits from the spread get taken away from the fees of transfers and trading. Make your own calculations of the fees and I bet you will end up somewhere at 10%. This seems high, but remember that you have to transfer the amount multiple times between exchanges to make a complete roundtrip. So if you have e.g. 2.5% fees for each trade and for each transfer on avergage, this nicely lines up with the 10% total.
Example: transfer fiat to bitstamp, buy at 100, get bitcoin out of bitstamp, transfer bitcoins to mtgox, sell at 110, get fiat out of mtgox. these are 6 steps for a roundtrip. you have utilized the spread of 10% only once, but for more than one of the steps you have to pay a percentage on the full amount. Btw, if you find a nice table with the exact fees outlined for a roundtrip, let me know.
@DanielS. : Normally all these steps add up to much less than 10%. However, right now it's simply virtually impossible to withdraw funds from Mtgox.
When I used to do arbitrage I built such tables for myself. The problem is that such tables are personalized. Your exchange commission is based on your volume and your transfer fees depend on your bank and/or payment system. Also I heard that professional traders include their risks into prices (e.g. "As I make mistakes or there are various delays I need to make at least X% on gox-bitstamp route to have it profitable on average"). So such table cannot exist or at least it will have limited applicability.