We get 50 new Bitcoins every 10 minutes, 300 per hour, 7200 per day. At current evaluation, this is ~130,000 USD worth of Bitcoins. If miners all sell their new coins, we would need an influx of that much money, every day. Which is a lot.
So, it is actually pretty amazing that we still keep up the current price.
I think only a small portion of mined coins are sold instantly. People who are mining with a single card looking for some quick cash may sell instantly, but they make up a small portion of the overall hashing power. Bigger miners are more likely to be invested in bitcoin for the long term.