I go Vishy > Amarnath > Vengsarkar.
Vengsarkar is a relatively clear third for me. Great player of swing, but his record is a bit too dependent on home conditions and is a bit of a HTB.
The other 2 are very close for me, and I just place Amarnath second. If he only batted about half as well at home, as he did away, we would have a top 50 candidate of all time. As great as his exploits were in Aus, Wi and Pak he just falls behind Vishy for me, due to his home record. Complete opposite to Vengsarkar btw.
Vishy I feel is a bit harshly criticized these days. His averages don't pop up, but those performances were really important to India in the 70s. WSC meant he was facing full strength attacks but the 2 test wins vs WI in 74-75 were down to him. Again the series win in 78-79 vs WI was down to him. All of these games he makes big tons where no one else scores much in low scoring games, showing the class of the man. And he faced Roberts, Gibbs, Marshall etc in these games.
Similarly vs Aus, in both the wins in Aus in 77-78, Vishy makes crucial fifties in each innings.
Overall, the best player of spin amongst the 3. Will go for Vishy just.