One of the criticisms that I often hear about Modern Portfolio Theory (MPT) is that it doesn't work as well as it did in the 90's. That is not true, MPT works just as well as it did at any time in history, which is not at all.
The main idea behind MPT is that there is an optimum portfolio where the combination of non correlated assets creates an overall mix that can have a better risk/reward profile than the individual asset classes on their own. From an academic standpoint MPT is very interesting because the optimum portfolio mix does exist. The problem is that I can tell you what it was yesterday but I have no idea what it will be tomorrow, and that is where MPT becomes useless in real life.
In order to decide how much to allocate to each asset class you need to predict:
1. The future returns of each asset class
2. The future volatility of each asset class
3. The future correlation of each asset class
If you could accurately predict all three of those things then MPT would work great. You would have predicted the crash in stocks in 2008 and the rise in bonds, along with the lack of correlation. An MPT portfolio would then have 100% bonds and investors would have been protected. Unfortunately, you can't predict any of these variables, making MPT interesting to study but of no practical use.
So why did MPT appear to work in the 90's? Because anything that told an investor to buy stocks would have worked, I could have had a monkey throwing darts at an asset allocation chart and I would have made money. That doesn't make it a valid strategy.