Benchmark indices have closed marginally positive amid volatile trading session, led by buying among capital goods major BHEL and L&T.The 30-share Sensex ended up 20 points at 18,539 and the 50-share Nifty ended down 1 points at 5,470 levels.