Cheng Yuan began his football career in 2011 when he was promoted to Shandong Youth's squad for the 2011 China League Two campaign.
He spent two season in Shandong Youth, scoring nines goals in thirty-two appearances.
[1] On 23 October 2013, he made his debut for Covilhã in a league match against Sporting CP B where he coming on as a substitute for Tiago Lopes in the 86th minute.
[2] Cheng returned to Shandong and was promoted to first team squad by Cuca in the summer of 2014.
[5] He was demoted to the reserve squad in July 2016 after Felix Magath became the manager of the club.