US stock markets have their best week since November