In most all cases you do get better rates here in Thailand than outside.. There are a few exceptions-- the SGD being a good example, but for most it's better to do here and not oversees.
As to the question of bringing USD's over INR's.. I'd say that IF you can get USD's but without incurring an additional cost-- be that exchange fees/commissions/spread from exchanging your INRs to USD's in India, the that might be a little better as the USD, like the EUR and GBP is one of the most common currencies traded here, and as such the buy-versus-sell spreads for it tend to be tight. It's also one of a few currencies that offers rates that are slightly better if you happen to have larger denominated notes over smaller denominated ones.
As to your question of "I will be taking OnArrival Visa so must have Thai currency also in pocket?"
The actual wording of this statue doesn't technically define what specific form it must be in-- be that cash, travelers checks or the like.. it only states the amount that must be presented upon demand.. However, one can reasonably interpret that IF asked to show it, that there's some assumption it would need to be in a form that can be 'proven' to to the Immigration officer, such as in hard cash currency form or properly endorsed traveler's checks.