Markets closed firm Wednesday with the benchmark index at 19,929 making a gain of 4.69 per cent or 893 points. The 30-share index moved in a range of 19,336-19,987 levels.In the broader markets, Nifty surged 4.26 per cent or 242 points to close at 5,937 levels. Buying was visible in banking, oil & gas, information technology and metals counters.