Modeling Formula One: Generating DFS Lineups for Tournament Contests
It's all about the narrative. And the payout structure.
Oftentimes, when folks talk with me about DFS, there’s one question that anchors the entire discussion:
“Who should I include in my lineup?”
It’s an obvious question. After all, lineups win contests, and individual players (or drivers) make up lineups. You can’t enter a DFS contest without clicking on some number of individual players.1
And yet, I find myself internally disagreeing with the question itself. Individual players really don’t matter all that much in DFS. Yes, they’re the building blocks of a lineup, but only in the rarest of circumstances does a single on-field player generate a DFS contest win. Rather, it’s the combination of players, the lineup as a whole, that succeeds or fails. Sure, some players will outscore others. But knowing how to fit the building blocks together to maximize the chance of a top 0.0001% outcome—that’s the skill that’s actually at the heart of DFS.
That might seem like a bit of a bold take. Established DFS players, however, will tell you the same thing. While accurate projections for individual players matter, contest-winning edge comes from processes that optimize lineup building, not marginal gains on projection accuracy.
Formula One DFS is no different. It’s actually the perfect sport to showcase the importance of lineup construction. While Formula One is far more random than most give it credit for—it’s not as if the whole field has a fair crack at P1. Most fans know who’s in the running for the podium, and they’re rarely that surprised at its composition. Given that there’s not as much obvious edge to be had in knowing that Lewis Hamilton is typically a better performer than Lance Stroll, knowing how to assemble a quality lineup becomes a premium asset.
By the way, if you’re not yet familiar with how Formula One DFS works, I’ve got an overview available at the start of this article.
Basic Principles of Lineup Construction
A medley of factors goes into quality lineup construction. But two principles dominate: playing to your payout structure, and maintaining narrative consistency
Playing to Your Payout Structure
All this means is building a lineup mindful of the conditions under which your lineup wins (“cashes”). The two most basic structures are 50-50 (often more like 45-65) payouts and tournament payouts. 50-50s double your entry for finishing in the top half. Since the provider has to make some profit from running the game, you’ll either only receive a little less than double your entry, or need to finish just north of the top 50%. In tournament payout structures, you need to finish anywhere from the top 25% to first overall in order to get a return on your entry. But, the rewards are larger for better finishers. Notice in that 50-50 format—even if you create a top 0.001% lineup— you still only get double your entry paid back to you.
Good lineups look different for both of those contest types. For 50-50s, a lineup that stands little chance of underperforming is golden. In tournaments, you need to swing to make it to the top of the dogpile. You’re more willing to accept risk in order to create a chance at outscoring 99 out of 100 players.
Maintaining Narrative Consistency
This principle skirts close to advice about which players to select. By maintaining narrative consistency, I mean making sure that the outcomes your lineup needs are not mutually exclusive. In Formula One terms, this means if both Lando Norris and Max Verstappen have to win the Grand Prix to generate sufficient fantasy value at their respective prices—you can’t reasonably roster them both. You can’t insert the pair of them and say “this lineup excels if Max takes P1”, because you also need Lando to win. Now, if you only need Lando to podium, that’s a different matter altogether. There’s perfect narrative consistency in saying “this lineup excels if Max wins and Lando podiums.”
Importantly, the narratives I give as examples are quite small. Max winning isn’t so much a narrative as a singular prediction. A full blown narrative, to my thinking, looks a bit more like this:
The race will have no safety cars or major stoppages
The leaders will mostly hold position through the first turn
Team XYZ is probably slower than their qualifying results indicate, meaning they’ll gradually lose two-to-three spots each to the field
Driver XYZ is likely faster than his qualifying times indicate, and he’ll move up through the field and past his teammate
The top five will, more or less, finish where they started. The bottom five, except for the driver with an equipment penalty, will also finish where it started
Driver ABC will pass his teammate for the second place on the podium
The kind of narrative you’re trying to capture and maintain shifts, depending on the payout structure. For example, it might be perfectly reasonable to take both Max Verstappen and Lando Norris in a 50-50 game while sticking to the following narrative: “either Max or Lando will take P1, and the other will probably podium.” One of the pair might end up overpriced in that situation, but likely not by loads. So if your objective is to minimize underperformance, a narrative with existent-but-limited downside isn’t the worst kind to maintain.
Using Simulations to Execute the Construction
So—how does all of this tie into the work we’ve been doing to forecast Grands Prix? Everything! Because we did the heavy lifting of thinking through the importance distributions, we’ve arrived at this point with a system that provides us with a set of possible race outcomes. In that set of outcomes, likelier outcomes take up the majority of slots and unlikelier outcomes gain membership only occasionally.
In essence, we have the perfect tool for enforcing narrative consistency! Using our system, we can take a particular simulation, and generate the optimal lineup given that simulated result. If in simulation 1, Max Verstappen wins, perhaps he’s the optimal captain. But if in simulation 37, Max wins and Lance Stroll podiums, perhaps Lance is the optimal captain, and Max consumes the biggest chunk of your remaining salary. Both lineups will be completely narrative consistent. Instead of you guessing at the best way to keep everything straight, you have an optimizer parsing the complexity for potentially thousands of possible outcomes.
And that’s something to consider as well—the number of narratives you should try to maintain. Each lineup should be narrative-consistent, but how many lineups and narratives do you try to synthesize? Ideally—as many as your contest host will let you! It’s a fools errand to believe that any one or handful of narratives stands meaningful odds of coming to fruition every race weekend. In addition to scaling easily to these demands, the simulation-to-optimized lineup approach automatically biases your basket of lineups towards the most likely narratives.
It’s important to note, at this point, that the first principle of lineup construction is in danger of slipping off the radar. By selecting a lineup that perfectly matches a single predicted result, there’s a chance that we’re creating big underperformance risk. If a given simulation has Valtteri Bottas finishing in the top-five—rostering the Kick Sauber constructor makes it very possible your lineup completely flops. And if we’re playing a 50-50 style game, we’re not playing to our payout structure. Yes, the simulation-to-optimized lineup approach does a good job of maintaining the straightforward narratives but isn’t so helpful for the nuanced narratives discussed regarding 50-50 games. After all, a single race simulation is going to have a definitive result. Max wins, or he doesn’t. That simulation, in isolation, won’t do too much to help you build “either Max or Lando will take P1” lineups.
The first principle requires that the process of using simulations to build lineups only be deployed for tournament-type contests—when you need to take a swing and beat the whole field. There, you care far more about building the best possible narrative and maintaining it. Or as established earlier, building the best set of possible narratives and maintaining them.
In a future article, we’ll discuss how we can use simulations to hone our lineups for 50-50 type games.
Conclusion
As noted earlier—playing DFS involves a whole mess of considerations. Payout structure and narrative are just two of the big ones. We didn’t even touch on how to tackle the biggest antagonist in DFS: the thousands of other folks generating lineups. You don’t win because you did a good job, you win because you did a better job than everyone else. But that’ll all come in good time. For now, thanks for reading, and enjoy Monza!
Actually, you totally can enter a blank lineup. I’ve done it by reserving entries and then blissfully beginning a dinner date that ran through the start of the slate. It’s heartbreaking, and I don’t recommend it.