because no one is holding your coins - the coins are just locked up in algorithmic contracts. Therefore, you never have to send your money to an exchange in order to exchange it. Your money essentially stays in your wallet until the contract is filled, and then the transaction is sent.
(did I get this right?)
Yep, that's correct

More details about the contract protocol are here:
https://en.bitcoin.it/wiki/Atomic_cross-chain_trading