Saturday, August 5, 2017

Fantasy Football - 9: Three at the Back vs. Value for Money

( Code hosted on the Github repo)

There has been a lot of talk about defenders being better value for money than midfielders and forwards. I'd written a post about the optimal team configuration a long time ago and since it was only one season of data, I thought I'd just check it again.

Assumptions 1:
  • I removed Chelsea and Leicester from 15/16 because of how unlikely both their performances were. Sure, there are swings in the table but those two teams in that season was a little too much. I feel the results are more representative without them.
  • Points per match is probably a better metric than total points but the historic data doesn't have a mention of matches started so we'll have to make do with total points. To minimise the effect, I have taken players that played at least 1710 minutes (19 matches of 90 minutes) and hope that the patterns observed also extend to all the players put together.
  • The data exposed is only for players active in the current season. This means that players who played in earlier seasons but have since left the EPL are not considered in the analysis for their
  • respective seasons.
  • Players get their positions changed over seasons. This is too small in number to worry about.


Value for money by position





If you force a linear relation between price and total points, goalkeepers, midfielders and forwards seem pretty tight together at about 15 points per pound, 15 points per pound, and 12 points per pound respectively. Defense, interestingly, seems to be rising every year with the last two years being well clear of the other positions. However the r-square values seem to be much better for midfielders and forwards indicating that the trend is more reliable for them than defenders or goalkepers.

In the last season, considering defenders offered much better value per pound of starting cost than the other positions, it seems it would make sense to pick expensive defenders and then pick cheaper players in the other positions. But since the trend in the value per pound is unreliable, maybe it is safer to pick more midfielders and forwards?

You can poke around in the following charts which offer a more detailed view into the data. The trends are drawn without the Chelsea and Leicester players from 15/16 even though they appear on the charts.






Assumptions 2:
  • Picking one static team at the start of the season which stays throughout the year.
  • No captaincy concept.
  • 18m set aside for substitutes, which means I can select a team costing 82m at most.
  • Players get their positions changed over seasons but for my convenience, I'm going to ignore that this happens.


Optimal team configs

What we care about eventually though is the points total so I tried to find the best team I could have picked. I then removed all the players who figure in the best team from the dataset, and picked the next best team. I picked a total of 5 teams like this.

Itern DEF FWD GKP MID
1 Kyle Walker (26 ppp @ 5.5),
Gary Cahill (30 ppp @ 6),
Marcos Alonso (30 ppp @ 6)
Romelu Lukaku (25 ppp @ 9),
Joshua King (32 ppp @ 5.5)
Tom Heaton (33 ppp @ 4.5) Alexis Sánchez (24 ppp @ 11),
Gylfi Sigurdsson (24 ppp @ 7.5),
Christian Eriksen (26 ppp @ 8.5),
Bamidele Alli (26 ppp @ 8.5),
Eden Hazard (22 ppp @ 10)
2 Gareth McAuley (29 ppp @ 4.5),
César Azpilicueta (28 ppp @ 6),
Leighton Baines (25 ppp @ 5.5)
Roberto Firmino (21 ppp @ 8.5),
Harry Kane (20 ppp @ 11),
Diego Da Silva Costa (21 ppp @ 9.5)
Hugo Lloris (26 ppp @ 5.5) Philippe Coutinho (21 ppp @ 8),
Kevin De Bruyne (19 ppp @ 10.5),
Heung-Min Son (23 ppp @ 7.5),
Wilfried Zaha (27 ppp @ 5.5)
3 James Milner (21 ppp @ 6.5),
Charlie Daniels (27 ppp @ 5),
Seamus Coleman (24 ppp @ 5.5)
Sergio Agüero (13 ppp @ 13),
Fernando Llorente (22 ppp @ 6.5),
Jermain Defoe (24 ppp @ 7)
Thibaut Courtois (26 ppp @ 5.5) Mesut Özil (18 ppp @ 9.5),
Georginio Wijnaldum (19 ppp @ 8),
Raheem Sterling (19 ppp @ 8),
Pedro Rodríguez Ledesma (22 ppp @ 7.5)
4 Nathaniel Clyne (23 ppp @ 5.5),
David Luiz Moreira Marinho (22 ppp @ 6),
Ashley Williams (25 ppp @ 5)
Christian Benteke (18 ppp @ 7.5),
Jamie Vardy (16 ppp @ 10)
David de Gea (25 ppp @ 5.5) Adam Lallana (20 ppp @ 7),
Sadio Mané (17 ppp @ 9),
Robert Snodgrass (24 ppp @ 5.5),
Manuel Lanzini (20 ppp @ 6.5),
Ross Barkley (19 ppp @ 7.5)
5 Laurent Koscielny (20 ppp @ 6),
Ryan Bertrand (22 ppp @ 5.5),
Jan Vertonghen (23 ppp @ 5.5)
Troy Deeney (19 ppp @ 7),
Sam Vokes (20 ppp @ 6)
Fraser Forster (27 ppp @ 5) Theo Walcott (16 ppp @ 7.5),
David Silva (14 ppp @ 9),
Nathan Redmond (21 ppp @ 6),
Etienne Capoue (29 ppp @ 4.5),
Michail Antonio (19 ppp @ 7)

Itern start cost total points DEF avg cost FWD avg cost GKP avg cost MID avg cost DEF count FWD count GKP count MID count
1 82 2157 5.8 7.2 4.5 9.1 3 2 1 5
2 82 1872 5.3 9.7 5.5 7.9 3 3 1 4
3 82 1661 5.7 8.8 5.5 8.2 3 3 1 4
4 75 1526 5.5 8.8 5.5 7.1 3 2 1 5
5 69 1396 5.7 6.5 5 6.8 3 2 1 5

All the teams had 3 at the back but the combination seems to consist of premium defenders and at least one of the midfielders or forwards being a mid/low-budget option who is punching above his weight. It isn't easy to spot these low cost - high points players so being realistic, what if we remove some of the exceptional performers? I pick exceptional players as players at least 30 points per pound above what the earlier linear regression predicts for them.

Itern DEF FWD GKP MID
1 James Milner (21 ppp @ 6.5),
Leighton Baines (25 ppp @ 5.5),
Seamus Coleman (24 ppp @ 5.5)
Roberto Firmino (21 ppp @ 8.5),
Jermain Defoe (24 ppp @ 7),
Diego Da Silva Costa (21 ppp @ 9.5)
Hugo Lloris (26 ppp @ 5.5) Philippe Coutinho (21 ppp @ 8),
Raheem Sterling (19 ppp @ 8),
Kevin De Bruyne (19 ppp @ 10.5),
Pedro Rodríguez Ledesma (22 ppp @ 7.5)
2 Nathaniel Clyne (23 ppp @ 5.5),
Jan Vertonghen (23 ppp @ 5.5),
David Luiz Moreira Marinho (22 ppp @ 6)
Sergio Agüero (13 ppp @ 13),
Fernando Llorente (22 ppp @ 6.5)
Thibaut Courtois (26 ppp @ 5.5) Mesut Özil (18 ppp @ 9.5),
Sadio Mané (17 ppp @ 9),
Georginio Wijnaldum (19 ppp @ 8),
Nathan Redmond (21 ppp @ 6),
Ross Barkley (19 ppp @ 7.5)
3 Laurent Koscielny (20 ppp @ 6),
Ryan Bertrand (22 ppp @ 5.5),
Toby Alderweireld (18 ppp @ 6.5)
Troy Deeney (19 ppp @ 7),
Christian Benteke (18 ppp @ 7.5),
Jamie Vardy (16 ppp @ 10)
David de Gea (25 ppp @ 5.5) Adam Lallana (20 ppp @ 7),
David Silva (14 ppp @ 9),
Manuel Lanzini (20 ppp @ 6.5),
Michail Antonio (19 ppp @ 7)
4 Héctor Bellerín (18 ppp @ 6.5),
Nacho Monreal (19 ppp @ 6),
Antonio Valencia (22 ppp @ 5.5)
Salomón Rondón (18 ppp @ 6.5),
Sam Vokes (20 ppp @ 6)
Fraser Forster (27 ppp @ 5) Theo Walcott (16 ppp @ 7.5),
Marko Arnautovic (16 ppp @ 7.5),
Cesc Fàbregas (16 ppp @ 7.5),
Kevin Mirallas (18 ppp @ 6.5),
Riyad Mahrez (13 ppp @ 9.5)
5 Dejan Lovren (21 ppp @ 5),
Steve Cook (22 ppp @ 5),
Michael Keane (23 ppp @ 5)
Olivier Giroud (13 ppp @ 9),
Andre Gray (17 ppp @ 6.5)
Petr Cech (24 ppp @ 5.5) Paul Pogba (14 ppp @ 8.5),
Nacer Chadli (17 ppp @ 6.5),
Matt Phillips (21 ppp @ 5.5),
Willian Borges Da Silva (15 ppp @ 7.5),
Andros Townsend (18 ppp @ 6.5)

Itern start cost total points DEF avg cost FWD avg cost GKP avg cost MID avg cost DEF count FWD count GKP count MID count
1 82 1773 5.8 8.3 5.5 8.5 3 3 1 4
2 82 1591 5.7 9.8 5.5 8 3 2 1 5
3 77.5 1461 6 8.2 5.5 7.4 3 3 1 4
4 74 1326 6 6.2 5 7.7 3 2 1 5
5 70.5 1259 5 7.8 5.5 6.9 3 2 1 5

It's still 3 at the back except the defenders seem to be the more expensive ones. Note that quite a few of the premium players have also gotten omitted suggesting that the winning teams comprise of exceptional performers at all price brackets and not just the mid and low price brackets.

Conclusion

Even if defenders offer better value for money, it still makes sense to go for 3 at the back.

2 comments:

  1. why haven't you tried any combinations with 4 defenders before concluding that 3 at the back is the most optimal? Maybe a mix of some McAuley type players (useful and cheap) and then allowing for only premium midfielders and forwards?

    ReplyDelete
    Replies
    1. I'm not 'trying' combinations. I ran an optimisation and these are the combinations it spat out.

      Delete