Rupee recovers 18 paisa against US dollar