The downlink transmission performance of the massive MIMO Time Division Duplex (TDD) system is bottlenecked by the channel reciprocity errors called antenna reciprocity errors. Antenna reciprocity errors are hard to be calibrated completely in practical systems. In order to avoid the performance degradation of the downlink transmission, a linear robust precoding algorithm is proposed, which can maximize each users average Signal to Leakage and Noise Ratio (SLNR) by using the statistical characteristics of the antenna reciprocity errors. To further reduce the equivalent noise power of users, the linear robust precoding algorithm is improved into nonlinear robust precoding algorithm by vector perturbation. Lattice reduction aid is also used to reduce the complexity of the perturbation vector search, and make the nonlinear robust precoding algorithm be available for the massive MIMO. Simulation results show that the proposed linear and nonlinear robust precoding algorithms can achieve better performance than the traditional Zero Forcing (ZF) and SLNR precoding algorithms when antenna reciprocity errors exist.