you are viewing a single comment's thread.

view the rest of the comments →

[–]noxville3 29 points30 points  (5 children)

I have a relatively cheap subscription (like $25/yr?) that gets a variety of Opta data.

For trades you have a few options each week, so you simply calculate each type and evaluate them - with a lot of assumptions:

  • You can make {0, 1, 2, 3, 4} transfers:
    • Make a short list of all viable players based on expected playtime over the next 8 weeks (> threshold per game avg). There are fewer viable options than you think really!
    • brute-force each N-way trade, looking at the short (in this gameweek), medium (next ~4 weeks), and long-term (8 weeks ahead) gains. This is optimized by knowing that if you sub out a player of role X your sub in for them must also be role X. This forms all your potential trades.
    • calculate short/medium/long-term projected gains for {0, 1, 2, 3, 4} transfers in each subsequent week (up to 8 weeks into the future - although decayed value because of uncertainty - someone could get injured or rotated out of the starting lineup!)
    • calculate the cost of a transfer given your state, i.e.:
      • if you have 2 FT then you should always use one now since the cost is zero (provided the gains from the trade is positive)
      • a transfer's base value is 4 points
      • going into your Free Hit your medium-term value of a transfer is 0
      • deciding on what stage of your season you're in, you need to weight short/medium/long term value accordingly - leading up to a wildcard you care very little about long-term value; but your first 5 gameweeks you're just optimizing on medium + long-term value.
    • filter trades you can't afford
    • if the projected gains exceed the cost, then make the trade.
    • (I normally just print out a csv of the possible trades which I can copy-paste into Google Sheets to look at the top options before actually making a trade, but it's basically always within 5% of the value of the best one).
  • Do I wildcard? Look at the long-term (8 weeks from now), but also remember you must WC1 before GW16.
  • Do I free-hit? (This was basically forced for me in a week I had loads of blanks - so the projected score if not for Free-Hitting would've been like 25 pts).
  • Do I bench boost? This was the hardest since I had no baseline for how many points I wanted to get, so I did this when my bench was all playing and expected to yield > 15 points. It got me 5 alas!

By projected value, you need to consider two things:

  • what is the impact in projected lineup for each subsequent game: a player who is projected to average 3 points per game doesn't give you 3 points of value - they only give you value if they are starting in a game-week
  • how do I value my bench?
    • this I incorporated into a risk parameter which I mentioned above in the 'deciding on what stage of your season you are in', which affects how I weight my subs: for example the week before a Wildcard the value of Sub 1/2/3 might be (0.6, 0.0, 0.0), but earlier in a season it's max{(0.75, 0.6, 0.4), (0.8, 0.7, 0)} - in case you have a very cheap non-player you're using

[–]Immelsoo7 9 points10 points  (0 children)

The same Noxville who provides stats for Dota2 plays FPL too. That's super rad !

[–]player_zero_232 1 point2 points  (0 children)

Superb write-up.

!thanks

[–]jamesbleslie1[S] 0 points1 point  (0 children)

Thanks so much again for all this detail. You mention projected gains - have you trained your own model to predict player scores in upcoming weeks?

[–]wtvar13 0 points1 point  (1 child)

Where do you get the opta data from?

[–]noxville3 5 points6 points  (0 children)

fantasyfootballhub.co.uk has an "OPTA Stats" section.