The price is determined by those who are buying/selling in there, each exchange has it's own rates, and it changes everytime that there are big whales selling or buying. And people is using "arbitrage" in order to make profit from that.
You're also right at some point. But we're talking about cex.io here. User's cant choose their buy and sell price on cex.io, as it doesn't work the same way with other exchanges like Bitfinex, Binance, Bittrex, etc. The buy and sell prices are set by cex.io themselves:
Screenshots:
https://i.gyazo.com/350ebaba5622a2aa76082a518dbca702.png
https://i.gyazo.com/f703a4612b8392ac6bf42c03302d5bb1.png