Monday, September 1, 2014

DFS Strategy Overview

DFS is a big multiplayer game. You enter a lineup into a contest with the goal of winning money. You make this lineup based on player projections, gut feel, or whatever sport-specific knowledge you can leverage to give yourself an edge over the competition. However, beyond improving your player projections or getting a new gut that can feel better, how else can you give yourself an edge in DFS contests? To answer this let me first describe a few basic concepts.

  • Cash Games

Contests in which ~50% of the field ~doubles their initial buy-in are referred to as cash games among the DFS community. These games are primarily head-to-head contests and larger-field 50/50s and double-ups. Basically, you need to beat 50-55% of the field (or one person in a heads-up game) and you get 180-200% of your initial buy-in if you do so.

  • GPPs

A GPP (Guaranteed Prize Pool) is the name used to describe a large-field contest with a top-heavy payout structure. Typically these contests only payout the top 10-20% of the entire field, with a very top-heavy distribution of winning prizes. First place wins generally 5-20% of the total prize pool, with decreased winnings for progressively worse finishers.

  • Overlay
Overlay is when a contest brings in fewer dollars in entry fees than it is paying out prizes. To understand why this would ever happen, it's a legal requirement of the industry to advertise total prizes and payouts in GPPs up front. For example, when DraftKings runs a $\$$100 buy-in contest with $\$$10,000 of total prizes, we'll set the maximum number of entrants at 110. If this contest fills (110 people enter it) we will gross $\$$11,000 in contest revenue, and will then payout $\$$10,000 in prizes at the conclusion of the contest, netting us $\$$1,000 in net contest revenue. This 10% rake figure is fairly standard across the industry.


However, because GPP prize totals are guaranteed (thus the name), such a contest will payout $\$$10,000 no matter how many entries it receives. In the case when the contest fills, you're paying $\$$100 for essentially $\$$10,000/110 entries, or $\$$90.91 in expected prizes if you are an exactly average-skilled player. When the contest exactly breaks even (100 total entrants) your $\$$100 entry fee has a $\$$100 expected value. However, when such a contest has fewer total entrants than prizes, the expected value on a bet becomes positive assuming your even just an average player! If only 90 people enter the contest, only $\$$9,000 of revenue is being generated and turned into $\$$10,000 in prizes. In such a situation, your $\$$100 entry fee has an expected value of $\$$111.11! If you think your even an average-skilled player, you should always look for and enter overlaying contests, as the expected value of your bets becomes positive via the guaranteed nature of the total prizes. If you think you are a positive EV player even in full rake contests, seeing overlay is very exciting as your existing edge over the average player can help boost that EV even further. This is how it's possible to generate 10-20% ROI over an entire season while only being a slightly above-average player.

Game Theory in DFS

As mentioned earlier, DFS is a multiplayer game. As such we can think about it from a game theory perspective to better understand how we should optimally build lineups in the various contest types.

Let's consider cash games for a second. As a player you don't care whether you come in the 1st percentile or 49th percentile. As long as you finish in the top half you're going to double your initial buy-in. When you build a lineup for a cash game rather than trying to build a lineup with the highest point potential you want to build a lineup with the lowest chance of doing terribly. The fewer busts you field the better chance you have of finishing in the top half.

Thus the game becomes much, much more about fielding a consistent lineup of efficiently priced players with high floors. A high floor essentially means that a player will never perform horribly. More rigorously this means that the standard deviation of expected fantasy point production is going to be smaller while the total expected point value might be higher.

Obviously this is a very, very rough diagram, but consider this distribution of expected fantasy point production of two players. Player B has an average expected point value of 12.0, while Player A has an average expectation of 11.0 points. Assuming these players have similar salaries on a DFS site, we'd want to pick player B in cash games as his average expected point value is higher, even though player A has a higher chance of scoring 15+ points.

My 'optimal lineups' and player projections from last year were a good example of how one should go about building a cash lineup: look to maximize expected fantasy point performance by finding under-priced players and maximize expected fantasy point production.

GPP Strategy

While cash games have elements of strategy, they're not multiplayer games that would necessitate game theoretic thinking. You're essentially playing against a static salary cap in an effort to find efficiently priced players via a model or intuition. Regardless of your opponents' decisions, you will likely pick the same cash game lineup. The same is not true for GPPs.

Consider the distribution of prizes for the $200 buy-in Sunday Millions contest for week 1. Most GPPs follow a similar curve, with somewhere in the neighborhood of 5-20% of total payouts going to first  place and 10-20% of the total field getting paid. This specific contest pays out 20% of the field, with 10% going to first.

Because of this ridiculously top-heavy payout structure it is incredibly important to finish in the very top if you want to make decent money. Finishing in the 33rd percentile every week is fantastic if you're a cash game player, but consistently finishing above average means nothing in GPPs. If you're not finishing in the top 5-10% every once and a while you're likely not going to be profitable in this format.

This is where things get interesting. The optimal strategy shifts from consistent value plays to players with big play potential. Typically these players are slightly devalued in traditional fantasy because of their boom & bust nature. One week they'll put up 25+ fantasy points proceeded by 5 the following week. T.Y. Hilton fits into this category: over the first 7 weeks last year he scored 1.3, 2.0, 2.7, 4.3, 5.1, 12.4 and 26.0 fantasy points in standard scoring. In a cash game this isn't exactly the type of performance you get excited about, but as a GPP player you're looking at that 26.0 point performance and hoping it happens every once and a while. You don't need to cash every lineup you play, you just need to hit it big every once and a while.

However, in GPP games it's also very important to think about the game theory involved. Because you're trying to win big some of the time (rather than doing pretty well all of the time) you  need to think about the strategies your opponents are employing. Let's consider Jeremy Maclin for a second - he's the defacto deep threat in the Chip  Kelly's high powered offense, which means he has the potential to have a monster game any given week. This is exactly the type of player you want to roster in a GPP. Unfortunately, FanDuel made the mistake of pricing Jeremy Maclin at $\$$5,000, which is just barely above the minimum salary for a WR on their site.

Most people would see a mispriced player like this and immediately snap him up, rostering him across the board, freeing up salary cap space for an extra stud like Demaryius Thomas. However, in a GPP you need to think about how many people are going to identify Maclin as a value play. I would bet money that Jeremy Maclin is one of the 2 or 3 most-owned players in week 1 - I am definitely not the only person who noticed his price tag.

This puts us in quite a predicament. Let's consider the scenario in which Maclin goes beast and puts up 20+ points against the hapless Jaguars of Jacksonville next weekend. Awesome! If you rostered Maclin your lineup is now doing great... but so is everyone else's lineup who had Maclin rostered. If Maclin is owned by 50% of the field, that really doesn't help you at all. On the other hand, when Maclin throws up a dud and scores fewer than 5 points (not unlikely given the inconsistent nature of deep receivers), those who opted to "fade" Maclin (not roster an obvious pick) will have a huge leg-up over 50% of the field!

Fading players who you think will be highly owned or over-owned is one of the best ways to give yourself an edge and make money in GPPs. Just as important as the performance projections (which everyone does in their own way whether it's a model, research or intuition), very few players think about player ownership in this way. In large-field GPPs with very top-heavy payouts you want to play the contrarian strategy and look for players you think will have low ownership percentages.

For me, this means taking a hard look at guys like Geno Smith in week 1. The unglamorous players who still have the potential to put up big numbers against weaker competition, in this case Oakland.

Correlated Variance

Another way to increase the boom & bust potential of your lineup is to find ways to correlated the variance among your picks. To explain this I'll start with a common concept in Baseball GPP strategy: stacking a team.

"Stacking" in MLB DFS refers to choosing several players from the same team in your lineup, typically players who are near one another on their team's batting order. The reason is quite simple: when one player gets a hit, the likelihood of the following player getting either a hit or RBI is substantially increased. Importantly you also receive fantasy points for RBIs and runs that your players score, so if one of your players bats in another you are effectively getting double the points for that one run. Finally, when a team does well and scores runs, they move through the batting order more quickly. In 9 innings of play each player will receive more at bats in a game that is a blow out. More at bats = more opportunities for fantasy points.

Stacking in this manner correlates the variance associated with each pick. Instead of banking on one player doing well, you are banking on the whole team doing well. When one player does well, it's more likely they all will. And when one does poorly, it's more likely they all do poorly. In a cash game this is an awful strategy - you are trying to minimize risk, minimize variance, and minimize the times your lineups perform poorly. In GPPs this is exactly what you want. Most of the time it won't work, but when it does work, it works well for your whole lineup! This is the kind of boom & bust play you look for in GPPs, and it's a very common strategy in MLB DFS.

The NFL equivalent of stacking follows the same reasoning, except instead of fielding positing players from the same team you want to try and pair your QB with his top receiver. When a QB does well in fantasy it typically means that they threw for several touchdowns. That means several touchdowns were caught by the various players on that team. Rostering the top WR from the team of your QB is a great idea in GPPs as it greatly increases the chances of one of your WRs doing well in the situation when your QB does well. Since you want all or most of your players to do well to win big cash, this is very helpful. In cash games, this isn't necessarily advised, but isn't something you should actively look to avoid.

That's more than enough for this post. In the next few days I'll get down and dirty in the FanDuel and DraftKings salaries and look for some value plays as well as potential players to fade in GPPs.

Saturday, August 30, 2014

What is DFS?

I didn't know what DFS was at this time last year. After much research, some fortuitous timing, and a little luck I now work at one of the biggest companies in this rapidly growing industry.

Daily Fantasy Sports (DFS) represents this weird microcosm of year-long fantasy sports and sports-betting, offering a vehicle for fans to leverage their (fantasy) sports knowledge against others for cash. Unlike the online poker boom of a decade ago DFS has seen huge support from the major professional support leagues. Leagues know that the more time fans and spectators spend thinking about and researching sports the more their own industries will grow and flourish. DFS enhances the way fans experience spectator sports, which is very much in line with the motivations of the individual leagues and sports entertainment industry as a whole.


I learned about the industry last fall when I saw a few ads for various sites while watching TV and while doing fantasy football research for a league with my buddies. I thought it was neat, partly because I had a ton of free time on my hands (I had just leftNorthBridge, my first post-college job) and partly because I love statistics and making unnecessary models for everything.

The concept behind DFS contests is very simple. Each week in the NFL, for example, real players are assigned DFS salaries based on their projected fantasy performance. As a contestant you effectively playing the role of GM or Head Coach. You are given a salary cap and your goal is to build a lineup (given certain roster requirements) of players that will score the most combined fantasy points in that week’s contests.

It’s a big optimization problem

On the surface DFS is a very simple optimization problem: maximizing fantasy point output under salary and roster position constraints. As such, if you have accurate fantasy point projections for each player, you can create a simple linear optimization model that will create the ideal lineup for you under the various constraints.

This is what I set out to do last fall, and it was quite fun. The point projection model was very simplistic – fantasy ‘expert’ opinions were aggregated (truth in the masses) and average projections were used for each player to determine a baseline level of expected fantasy output. These were then plugged into a linear optimization model in which player projections were matched up with player salaries from various DFS sites, and an optimal lineup was created. This optimal lineup represented the ideal combination of inexpensive value players and high-profile superstars that would be expected to maximize total fantasy point production. Awesome.
 
Player salary vs. projected rank with trend line.
Blue dots above the orange line represent players who are priced higher than their projected performance. Dots below the trend line represent under-priced players who are projected to out-perform their salary.
Unfortunately, when I entered these lineups into the big contests on a few different sites, I never seemed to win much of anything. This is where my simplistic modeling and projection from last year was sub-optimal – there’s a huge amount of game theory involved in DFS, and I wasn't thinking about that aspect in the slightest. More important than an optimization model is a coherent strategy with sound reasoning tailored to the specific contest you are entering. My next post will overview the different types of contests in the DFS world and how to approach them each strategically.