In this paper, we consider a slow-fading n<inf>t</inf> ×n<inf>r</inf> multiple-input multiple-output (MIMO) channel subjected to block fading. Reliability (in terms of achieved diversity order) and rate (in number of symbols transmitted per channel use) are of interest in such channels. We propose a new precoding scheme which achieves both full diversity (n<inf>t</inf> ×n<inf>r</inf>th order diversity) as well as full rate (n<inf>t</inf> symbols per channel use) using partial channel state information at the transmitter (CSIT). The proposed scheme achieves full diversity and improved coding gain through an optimization over the choice of constellation sets. The optimization maximizes d<sup>2</sup><inf>min</inf> for our precoding scheme subject to an energy constraint. The scheme requires feedback of n<inf>t</inf> – 1 angle parameter values, compared to 2n<inf>t</inf>n<inf>r</inf> real coefficients in case of full CSIT. Further, for the case of n<inf>t</inf> × 1 system, we prove that the capacity achieved by the proposed scheme is same as that achieved with full CSIT. Error rate performance results for n<inf>t</inf> = 3,4,8 show that the proposed scheme performs better than other precoding schemes in the literature; the better performance is due to the choice of the signal sets and the feedback angles in the proposed scheme.