When will bear market end? In 6 months and S&P 500 at 3000, Bank of America says | Fortune