Thursday, October 17, 2013

Methodology and WEEK 7 PROJECTIONS!

Before I set out making a perfect lineup I had to figure a couple things out. First, what site was I going to use? I was watching TV, saw an ad for DraftKings and like a sucker decided to use it for my testing purposes. The idea behind the site itself is pretty basic: you start with $50,000 and need to pick a lineup. Different players are priced according to some hidden combination of demand and perceived or projected talent. It seems relatively accurate, and there aren't too many obvious "sleeper" picks right off the bat.

Additionally, the scoring in DraftKings is fairly standard as well. The only things that might differ from your own league are 4 points per passing touchdown (my league scores them as 6) and there is 1 point-per-reception (DraftKing is full-PPR style, FanDuel does half-PPR).

Now, are we going to use this information to make an informed optimization model? In order to optimize a fantasy football lineup under these conditions we need a few pieces of information. We need the salaries of the players and the total cap we're working with. DraftKings gives us this right away. We also need rankings projected point values for each player so that we can min-max our team. This is where things get more complicated.

Any person can come up with their own personal rankings of fantasy football players on any given week, but it will be based entirely upon opinion. The rise of fantasy football in America has brought with it the rise of fantasy football "experts". People paid to totally immerse their professional lives in fantasy football and use that specific knowledge and insight to come up with weekly rankings for the rest of us. Matthew Berry is one of the more well known analysts working full time on fantasy football at ESPN. His celebrity-like status has even earned him cameos on shows like The League.



Anyway, how does this help us? No one person is every 100% correct, even if he or she is a certified "fantasy guru". Even the best of these experts are rarely right more than two-thirds of the time. This is where another site, FantasyPros, comes in to help us. While each individual expert may not be always right all the time, it is possible through aggregation to come up with a much more accurate set of rankings. One real world example of this predictive aggregation is found in Las Vegas. Currently the most accurate predictor of real-world sporting event outcomes is the collective odds in Vegas. When thousands of people place bets on who they think will win given the initial odds you end up with a very, very accurate predictor.

The idea of FantasyPros is similar. They take the personal rankings of over 70 fantasy football experts and essentially use a weighted average to aggregate them all. Experts who have traditionally been more accurate are weighted more heavily than those who are perpetually off bit a larger margin. The site also allows you to pick and chose which experts you want to display in their aggregation. For my purposes, I chose all experts that had updated their rankings within the past day (as injuries and other things move very fast in fantasy football, and outdated information can kill you).

So this is a great start. We have access to the consensus opinion of the aggregated community of fantasy football experts. However, an ordinal ranking of players doesn't actually help us as much as we might think. Sure we can use these rankings to see that Pierre Garcon is expected to score fewer points than Justin Blackmon, but by how many? If Garcon demands a substantially lower fantasy salary it might make sense to draft him even if his projected point total is lower.

Here's where I implemented my own modeling design (that may or may not work perfectly, we'll see going forward). What I did was divide all the players into their respective positional categories (QB, RB, WR, TE, FLEX, K, D/ST). For each category I took the average points per game from all of the players and ordered them smallest to largest. The largest average point total I "gave" to the highest ranking player for the week, the 2nd largest I applied to the 2nd ranked player, etc. Basically we had an ordering, but needed to come up with a projected point curve to attach to that ordering. The curve I ended up using was the average points per game of the top 25 players in their respective categories.

In the running back example above, Jamaal Charles and Matt Forte had the 1st and 5th highest average points per game at 25.8 and 20.1 respectively. Thus, the 1st ranked player in the consensus rankings would be projected at 25.8 (this happens to be Jamaal Charles) and the 5th ranked player (Reggie Bush) would projected to earn the 5th highest average of 20.1. This would go down, so the Xth ranked player would be given the Xth highest average point per game for his projection.

While this methodology isn't perfect, it's a fairly good way to apply projected point totals to the ordinal ranking that we get from FantasyPros. Additionally, while these average rankings will likely be much lower than the highest values achieved each year, explosive games and huge point totals are not something that you can plan on. The higher averages simply mean that, on average, we expect the 1st ranked running back to score about 25.8-20.1 = 5.7 points more than the 5th ranked running back at the end of the week.

What do the final running back projections look like? Well, the top 25 are all projected between 25.8 and 10.9 fantasy points.
No we have all the data and information we need to make informed optimization decisions. The first step to maximizing fantasy points under a salary cap constraint is to look at the cost of projected fantasy points in salary dollars. This is done by dividing the salary of each player by their projected points and gives us a Dollar/Point value. In this situation the lower the number the more optimal a player is. Additionally, we need to keep an eye on the total salary of our entire team, so we want to put a premium on players with low total salaries and low $\$$/Pt values. To do this we multiply the $\$$/Pt by their total salary. Players with low values of this $\$*\$$/Pt metric are those that represent the best value given their salary.
The table above shows the top 5 wide receiving options sorted by $/Pt. As you can see the salary values in DraftKings has not quite caught up to some of the hype and projected talent in sleeper picks like Keenan Allen. I expect this discrepancy to fix itself in the next week or so, but as you can see Keenan Allen is a must draft receiver in this format, especially with an extremely favorable match-up against Jacksonville this week. This was something I was interested in seeing during the drafting process: would low value sleeper picks from traditional fantasy football still maintain value in these weekly competitions? Absolutely. I have a feeling if we did this same process last week we would have seen Justin Blackmon topping the charts by a significant amount as well, as his salary has only recently caught up to his skill level and fantasy football potential. The result: snatch up San Diego's rookie receiver from Cal while he's still priced favorably, especially given how well Phillip Rivers is playing. And it's Jacksonville. Enough said.

Some studs like Dez will show up, but very careful as an $\$$8,800 salary is very hard to fit into a $\$$50,000 roster. You can see that while Dez has the highest point total with the second best $\$$/Pt value he doesn't look so hot when you consider his price tag as he has the highest value of $\$*\$$/Pt of any of the top 5 options.

The Optimization

Now that we have all our data and valuations made we can begin to make the optimized lineup. This is an iterative process, as I don't know any algorithms that can solve something this complicated in one step.

The first step is to select the top picks at each position based purely on $/Pt and see where we land. After this first run through we end up with the following lineup:
One surprise here but be the inclusion of Brandon Jacobs. However, with a price tag of only 3,900 he's the clear number one choice in value, especially considering the fact that every other RB in New York is currently either injured or terrible. However, with a price tag like that Jacobs is similar to Allen in that he's someone you can't quite pass up. Joseph Randle would be another under-valued option, but with a price tag of 4,800 he's almost 25% more expensive than Jacobs with very similar projections.

As you can see we're 2,400 over our 50,000 salary. The first step is to remove the player with the least value based on $\$*\$$/Pt and replace him with the next highest value player at the position. This results in replacing Dez Bryant (8,800) with Victor Cruz (7,100). However, at this point we're still 700 short. We could remove Jamaal Charles now, as he's the next player on the chopping block based on value, but replacing him would bring us far below the salary cap, which isn't necessarily what we want to do. Additionally, I have a lot of faith in Jamaal Charles going up against the struggling Texans this week, especially given the PPR aspect of our league as Charles is Alex Smiths favorite target in Kansas City.


At this point the final tweaks and optimizations are fairly subjective in nature. As much as I love Jordan Cameron (answer: A LOT) I personally think Brandon Weeden is an absolutely worthless shitter, so my first step was to replace Jordan Cameron with his next cheapest alternative, Jermichael Finely. Finley's stock has only been rising in Green Bay of late as the season-ending injury to Randall Cobb could actually result in Finley lining up out wide more often, letting him score like a wide-receiver. Couple this with the fact that the only healthy receiver in Green Bay, Jordy Nelson, will be shadowed by Cleveland's shut-down corner Joe Haden you've got yourself a perfect storm of opportunity and talent in Finely to come through with a big game.

At this point we're still a few dollars over our cap, so we need to make one more minor change. Rather than replacing Jamaal or Foles (who I think is currently under-projected by the consensus rankings), I want to make a small adjustment at Flex and replace Knowshon Moreno with Reggie Wayne. Moreno just came off the best few weeks of his career, and as such probably has a slightly inflated value. Additionally, many of these daily leagues have dozens of competitors. Putting a WR in your flex spot generally is viewed as a higher-risk higher-reward play. Considering the Colts are playing the Broncos and the atrocious state of the Denver secondary I feel like this could be a very, very keen move as Wayne should have a higher ceiling than Moreno. Also, this puts us just underneath the $50,000 salary cap and leaves us with a very nice lineup.

So there we have it, our very first DraftKings lineup for Week 7. I'll continue to update the model and projections each week, so stay tuned for the results of these projections as well as optimized lineups going forward. The beauty of this is that it combines some basic math but still allows us to make some subjective and gut-feeling tweaks and changes to get under the hard salary cap.

A second lineup that can be achieved by taking advantage of the relatively low salaries at the tight end position can be achieved by placing another tight end at Flex, which allows more money to be spent at the other positions. Be careful, however, as the boom-and-bust nature of tight ends makes this strategy slightly more risky:

For full rankings by position check the following links:

No comments:

Post a Comment