Arbitrage.
Difference in prices between exchanges can be used to turn a profit; buy on the exchange where stuff is cheaper and sell them on another where prices are higher.
So it's caused by traders (and bots).
I think bots play a major role here,earlier we used to get the price difference and will have the chance to do arbitrage,but now a days it is really impossible,one thing is that the amount of time it takes to send coins to one exchange to the other and the other issue is bots are playing a major role here.
Bot, do you think every exchange site using a bot? I think one tries to make the rate was same with another exchange site. There is no a lot of different in the volumes, and that's not a manipulation by the traders.
There is a little gab between them.