Profile
| Club | Shanghai Port |
| Nationality | China |
| Born | Jan 28, 1999 (27 yrs) |
| Height | 175 cm |
| Foot | Both |
| Contract | Until Dec 2026 |
| Market Value | 0M EUR |
| Number | #26 |
Season Summary (50 matches, 2172' played)
4
Goals
7
Assists
6.95
Avg Rating
5.5
xG
0.0
xA
ATTACKING
| Shots | 67 |
| On target | 23 |
| Key passes | 32 |
| Pass accuracy | 75.6% |
DEFENSIVE
| Tackles | 21 |
| Interceptions | 10 |
| Clearances | 23 |
| Recoveries | 90 |
DUELS & DISCIPLINE
| Duels won | 160/308 |
| Aerials won | 46/85 |
| Yellow cards | 3 |
| Red cards | 0 |
Per 90 Minutes
0.17
Goals
0.29
Assists
0.23
xG
0.0
xA
2.78
Shots
1.33
Key Passes
0.87
Tackles
0.41
Interceptions
6.63
Duels Won
Match-by-Match Statistics
| Date | League | Match | Min | Rating | G | A | xG | Shots | KP | Pass% | Tackles | Duels | Cards |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| May 29 | Chinese Sup… | Liaoning Ti… 3-2 Shanghai Po… | 15 | 6.4 | 0 | 0 | - | 0 | 0 | 6/7 | 0 | - | - |
| May 23 | Chinese Sup… | Shanghai Po… 1-1 Tianjin Jin… | 45 | 6.7 | 0 | 0 | - | 0 | 0 | 6/13 | 1 | 5/6 | - |
| May 19 | Chinese Sup… | Chengdu Ron… --1 Shanghai Po… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| May 15 | Chinese Sup… | Shanghai Po… 2-2 Zhejiang | 18 | 6.7 | 0 | 0 | 0.11 | 0 | 1 | 14/17 | 0 | 1/3 | - |
| May 10 | Chinese Sup… | Beijing Guo… 2-2 Shanghai Po… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| May 06 | Chinese Sup… | Shanghai Po… 1-1 Shenzhen Pe… | 61 | 6.4 | 0 | 0 | 0.03 | 1 | 0 | 10/19 | 1 | 3/8 | - |
| May 02 | Chinese Sup… | Qingdao Hai… 3-1 Shanghai Po… | 13 | 6.7 | 0 | 0 | - | 0 | 0 | 14/20 | 0 | 2/3 | - |
| Apr 25 | Chinese Sup… | Shanghai Po… 4-- Wuhan Three… | 24 | 7.1 | 0 | 1 | - | 0 | 1 | 25/30 | 1 | 4/7 | - |
| Apr 21 | Chinese Sup… | Shanghai Po… 1-2 Chongqing T… | 10 | 6.4 | 0 | 0 | 0.04 | 1 | 0 | 6/6 | 0 | 0/2 | - |
| Apr 17 | Chinese Sup… | Shandong Ta… 1-1 Shanghai Po… | 26 | 6.4 | 0 | 0 | 0.21 | 2(2) | 0 | 6/8 | 0 | 1/5 | - |
| Apr 11 | Chinese Sup… | Shanghai Sh… 1-- Shanghai Po… | 21 | 6.7 | 0 | 0 | - | 0 | 0 | 9/11 | 0 | 3/7 | - |
| Apr 04 | Chinese Sup… | Shanghai Po… 2-1 Yunnan Yukun | 16 | 6.5 | 0 | 0 | 0.03 | 1(1) | 0 | 3/4 | 0 | 0/2 | - |
| Oct 31 | Chinese Sup… | Shanghai Po… 3-- Zhejiang | 45 | 6.7 | 0 | 0 | 0.11 | 2 | 0 | 5/8 | 0 | 1/7 | - |
| Oct 26 | Chinese Sup… | Shandong Ta… 3-1 Shanghai Po… | 79 | 6.9 | 0 | 1 | 0.12 | 2(1) | 1 | 15/20 | 0 | 8/16 | - |
| Oct 17 | Chinese Sup… | Qingdao Hai… 3-4 Shanghai Po… | 67 | 7.3 | 0 | 0 | 0.09 | 2(1) | 3 | 17/22 | 0 | 3/4 | - |
| Sep 26 | Chinese Sup… | Shanghai Po… 3-2 Wuhan Three… | 78 | 7.8 | 0 | 1 | 0.34 | 4(1) | 3 | 17/23 | 0 | 7/11 | - |
| Sep 21 | Chinese Sup… | Beijing Guo… 2-3 Shanghai Po… | 67 | 6.6 | 0 | 0 | - | 0 | 0 | 6/7 | 0 | 4/5 | - |
| Sep 12 | Chinese Sup… | Shanghai Po… 4-2 Yunnan Yukun | 77 | 9.4 | 2 | 1 | 1.23 | 4(3) | 2 | 18/22 | 0 | 5/9 | - |
| Aug 30 | Chinese Sup… | Chengdu Ron… 4-1 Shanghai Po… | 71 | 6.4 | 0 | 0 | 0.08 | 2 | 0 | 11/17 | 0 | 1/4 | ■ |
| Aug 24 | Chinese Sup… | Shanghai Po… 1-1 Tianjin Jin… | 74 | 7.2 | 0 | 0 | - | 0 | 0 | 13/18 | 2 | 4/6 | - |
| Aug 15 | Chinese Sup… | Shanghai Po… 4-1 Henan FC | 80 | 7.2 | 0 | 1 | 0.10 | 2 | 2 | 11/17 | 1 | 4/8 | - |
| Aug 09 | Chinese Sup… | Shanghai Sh… 1-2 Shanghai Po… | 61 | 7.1 | 0 | 1 | 0.07 | 2(2) | 2 | 11/15 | 0 | 5/9 | - |
| Aug 02 | Chinese Sup… | Meizhou Hak… 2-4 Shanghai Po… | 67 | 8.5 | 1 | 1 | 0.25 | 2(1) | 3 | 16/20 | 0 | 3/7 | - |
| Jul 26 | Chinese Sup… | Shanghai Po… 2-2 Qingdao Wes… | 67 | 6.8 | 0 | 0 | 0.07 | 2 | 0 | 6/14 | 0 | 4/6 | - |
| Jul 18 | Chinese Sup… | Changchun Y… 1-3 Shanghai Po… | 62 | 7.3 | 0 | 0 | 0.15 | 2(2) | 1 | 16/20 | 0 | 5/8 | - |
| Jun 30 | Chinese Sup… | Shenzhen Pe… 1-2 Shanghai Po… | 28 | 6.9 | 0 | 0 | - | 0 | 0 | 13/14 | 0 | 3/6 | - |
| Jun 26 | Chinese Sup… | Shanghai Po… 3-- Dalian Ying… | 15 | 6.6 | 0 | 0 | 0.08 | 1 | 0 | 2/5 | 0 | 2/4 | - |
| Jun 18 | Chinese Sup… | Henan FC 1-3 Shanghai Po… | 16 | 6.6 | 0 | 0 | - | 0 | 0 | 3/3 | 1 | 1/3 | ■ |
| May 17 | Chinese Sup… | Shanghai Po… 1-1 Shandong Ta… | 45 | 7.2 | 0 | 0 | 0.02 | 1(1) | 1 | 7/10 | 0 | 3/4 | - |
| May 09 | Chinese Sup… | Shanghai Po… 3-1 Qingdao Hai… | 61 | 7.9 | 0 | 0 | 0.32 | 4 | 1 | 7/15 | 2 | 13/16 | - |
| May 05 | Chinese Sup… | Wuhan Three… --2 Shanghai Po… | 45 | 6.8 | 0 | 0 | - | 0 | 0 | 14/15 | 0 | 2/5 | - |
| May 01 | Chinese Sup… | Shanghai Po… 1-2 Beijing Guo… | - | - | 0 | 0 | 0.17 | 0 | 0 | - | 0 | - | - |
| Apr 20 | Chinese Sup… | Shanghai Po… 1-3 Chengdu Ron… | 19 | 6.2 | 0 | 0 | 0.18 | 1(1) | 0 | 5/5 | 0 | - | - |
| Apr 06 | Chinese Sup… | Shanghai Po… 1-1 Shanghai Sh… | 63 | 8.2 | 1 | 0 | 0.27 | 4(2) | 2 | 8/9 | 1 | 4/7 | - |
| Apr 02 | Chinese Sup… | Shanghai Po… 2-1 Meizhou Hak… | 57 | 6.6 | 0 | 0 | 0.27 | 2 | 0 | 10/11 | 0 | 2/8 | - |
| Mar 28 | Chinese Sup… | Qingdao Wes… 3-3 Shanghai Po… | 19 | 6.6 | 0 | 0 | - | 0 | 0 | 5/5 | 1 | 1/5 | - |
| Feb 28 | Chinese Sup… | Shanghai Po… 2-- Changchun Y… | 22 | 6.8 | 0 | 0 | 0.12 | 2 | 1 | 6/10 | 1 | 6/9 | - |
| Sep 29 | Chinese Sup… | Wuhan Three… 1-- Henan FC | 56 | 6.8 | 0 | 0 | 0.12 | 3(1) | 0 | 20/22 | 0 | 3/7 | - |
| Sep 21 | Chinese Sup… | Shandong Ta… --- Wuhan Three… | 77 | 7.2 | 0 | 0 | 0.05 | 3(2) | 0 | 18/25 | 3 | 9/14 | - |
| Sep 15 | Chinese Sup… | Qingdao Hai… 1-1 Wuhan Three… | 89 | 7.5 | 0 | 0 | 0.19 | 3(1) | 2 | 29/35 | 0 | 3/9 | - |
| Aug 16 | Chinese Sup… | Tianjin Jin… 1-- Wuhan Three… | 84 | 7.5 | 0 | 0 | 0.27 | 3 | 1 | 13/16 | 3 | 9/12 | - |
| Aug 10 | Chinese Sup… | Changchun Y… 2-- Wuhan Three… | 27 | 6.7 | 0 | 0 | 0.04 | 1 | 0 | 9/11 | 1 | 3/4 | - |
| Aug 03 | Chinese Sup… | Wuhan Three… 4-1 Shenzhen Pe… | 9 | 6.8 | 0 | 0 | 0.01 | 1(1) | 0 | 2/4 | 0 | 1/1 | - |
| Jul 29 | Chinese Sup… | Wuhan Three… --2 Shanghai Sh… | 33 | 6.8 | 0 | 0 | 0.09 | 2 | 1 | 7/12 | 0 | 3/4 | - |
| Jul 20 | Chinese Sup… | Wuhan Three… 1-1 Chengdu Ron… | 21 | 6.3 | 0 | 0 | - | 0 | 1 | 1/4 | 0 | 2/6 | - |
| Jul 12 | Chinese Sup… | Cangzhou Mi… 1-1 Wuhan Three… | 45 | 6.5 | 0 | 0 | - | 0 | 0 | 9/10 | 0 | 2/7 | - |
| Jul 07 | Chinese Sup… | Beijing Guo… 1-2 Wuhan Three… | - | - | 0 | 0 | - | 0 | 0 | - | 0 | - | - |
| Jun 16 | Chinese Sup… | Qingdao Wes… --1 Wuhan Three… | 45 | 6.6 | 0 | 0 | 0.05 | 1 | 1 | 13/16 | 0 | 2/6 | ■ |
| May 25 | Chinese Sup… | Wuhan Three… --1 Meizhou Hak… | 77 | 6.8 | 0 | 0 | 0.22 | 4 | 1 | 14/17 | 0 | 4/11 | - |
| May 21 | Chinese Sup… | Zhejiang 3-1 Wuhan Three… | 75 | 6.4 | 0 | 0 | - | 0 | 1 | 23/28 | 2 | 9/17 | - |
Get Ruofan Liu's data via the API:
# Player profile (bio, scouting data, market value, contract)
curl -H "Authorization: Token YOUR_API_KEY" \
"https://sports.bzzoiro.com/api/v2/players/47433/"
# Match-by-match stats (30+ metrics per game)
curl -H "Authorization: Token YOUR_API_KEY" \
"https://sports.bzzoiro.com/api/v2/players/47433/stats/"