Stocks to buy in 2026 for long term: Tata Capital, Tata Motors among 5 stocks that could give 10-20% return