The Nifty has opened at 4,570, up 46 points. The Sensex meanwhile is up 96 points at 15,327, in opening trades.