How do cryptocurrency exchanges execute trade without paying gas fees?
For example, in Binance, every user has their own wallet address for each coin they owned. Let's say I just traded 1 BTC for 1 ETH. If I were to go in my wallet info, I would see it's been immediately reflected. Now, this can easily be done by exchanges doing their internal data handling things on their own, not necessarily having to associate with actual blockchain. That part I understand.
What I can't seem to figure out is that when user wants to actually withdraw the funds, they actually let us withdraw that much amount of coin and if I check in blockchain explorer I can see my exchange wallet address as a sender.
So, if trading within exchange and wallet balance immediately being reflected upon it were to be achieved by inner data handling, it must mean I don't actually own that coin on my exchange address because it's just an exchange showing me the number. But then if so, how is it possible that I can just withdraw my funds to another wallet (say like metamask).
How are they achieving two things at once?