I wouldn't write off HSBC. I'm not into trading but for the big one time transfers, I ended up doing them within HSBC. Their spread is variable depending on the day but I got almost exactly 1% from the mid-market rate, with no other fees. I couldn't find anywhere else that could match that for one time transfers.
I didn't do the pure currency account thing (because withdrawals from it are costly) but it didn't cost me anything to set up a US account while I was there, link it with my Aus account online in 'global view', do the one time transfer, and use my new US debit card for transactions and withdrawals over there like I would here. And now it is set up, I can use it every time I'm there without having to deal with exchange rates, etc. It also has the added benefit of working everywhere else where US Dollars are accepted (an astonishing amount of places), which was a handy unforeseen advantage.
I'm going to do the same thing for Euros in Spain next time I'm there.