W latach 1996 i 1998 dwukrotnie zdobył tytuły wicemistrza świata juniorów do lat 20, w 2000 r. zdobył srebrny medal indywidualnych mistrzostw Azji, natomiast w 2001 i 2003 triumfował w indywidualnych mistrzostwach Chin. Na mistrzostwach świata FIDE w 2001 roku w Moskwie awansował do III rundy, w której przegrał z Weselinem Topałowem. W 2002 r. zdobył w Ułan Bator tytuł akademickiego mistrza świata. W 2003 r. podzielił (wspólnie z Xu Junem) I miejsce w Szanghaju oraz zwyciężył w grupie B turnieju "Corus" w Wijk aan Zee. Dzięki temu wynikowi zakwalifikował się do elitarnego turnieju czołówki światowej w Wijk aan Zee w 2004 roku, który ukończył na XII miejscu. W tym samym roku po raz drugi wystąpił w mistrzostwach świata systemem pucharowym, w I rundzie przegrywając z Rafaelem Leitao. W 2005 zdobył tytuł indywidualnego mistrza Azji oraz wystąpił w Pucharze Świata, w II rundzie przegrywając z Ivanem Sokolovem. Kolejne sukcesy odniósł w roku 2007, dzieląc I miejsca na Filipinach (wspólnie z Wang Yue i Ni Hua) oraz w Singapurze (wspólnie z Zurabem Azmaiparaszwilim). W 2008 r. podzielił I m. (wspólnie z Zhao Zong-Yuanem, Surya Gangulym i Gawainem Jonesem) w Sydney.