I think people are discussing two different topics here: holding cash for liquidity reasons and holding cash so that you can take advantage of opportunities when stocks get cheaper, e.g. 2009.
Holding cash for liquidity reasons obviously makes sense. But I don't understand the argument of holding cash because things may get cheaper tomorrow. If I see a stock with 50% upside, it's a buy. If tomorrow everything is down by 50%, I will have a stock with a 200% upside. If some other stocks offer 300% upside now, I can rebalance into those. In any case I should be able to get out of the crash well ahead. Sure, if I could time my buying perfectly, waiting till tomorrow is better. But how would I know? And if I did, why would I hold 10% cash instead of 100%?