Nifty snaps 4-day losing streak, closes above 23,400 amid analyst warnings