Transferring bitcoins is usually free. You just need to wait around 1 hour for confirmations from the network.
Transferring USD is fairly easy if the exchanges support Bitinstant (currently it is only available at MtGox, TradeHill and CryptoXchange). Bitinstant transfers usually takes less than a minute and cost around 1%. If the exchange doesn't support Bitinstant, you will probably have to wait at least a few hours. It all depends on the available deposit/withdrawal methods. If everything else fails, you can always buy bitcoins at one exchange, send them to the other and sell them there.
In terms of automated trading for arbitrage, speed and fees are really important. I suggest that you analyse the arbitrage opportunities at the exchanges of your preference to see how big they are and how long they stay open.
For example, currently at TradeHill/MtGox most arbitrage opportunities are below 1% and are only available for a few minutes. This makes it almost impossible to move money around in order to profit from these opportunities.