Indian stocks opened higher Thursday with the Bombay Stock Exchange benchmark index Sensex opening at 20,351.39 points, 156.99 points or 0.78 percent up from the previous close of 20,194.40.