"Free" money simply doesn't happen...
the market is much too efficient.
It is theoretically possible that the banks ONLY PAY 17.50 for euros (they wouldn't have any customers), but it is a safe bet that they will not sell them for less than the market price of 23.42 or whatever (plus a markup of course).
I've only once seen a situation like the one described by Ken. It was on a small scale, involving only 1 bank, and was available only to its own account holders, for 1 day, and for only $50 to exchange. The rate they could get would be only 10% above market. In other words, if everyone took the offer, which few did because they had better things to do, they would only have made $5. Maybe the bank had a guilty conscience already and figured that they owed $5 to everybody but couldn't quite bring themselves to simply give it back to them.
Thanks for the info Ken and Golo - I always welcome information. If you really believe what you say is true, you should be flying back and forth right now doing it - and don't tell anybody else.
The free market is incredibly smart.