My strategy is not to put cryptocurrencies in the exchange's wallet!
Put the cryptocurrency in your local wallet and wait until you need to trade to go to the exchange's wallet!
I agree with you, I also do what you do, even though I lose a little on transaction fees, I think that is the safest way besides using Ledger Nano S wallet, Trezor etc.