Bill traded up to pick 7 to get QB Josh Allen.

Josh Allen Trade
Buffalo Bills Buccaneers Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
7 32 12 35
53 22
56 19
Total 32 Total 76
44 2.38

The Cards moved up to pick 10 to draft Josh Rosen

Josh Rosen Trade
Cardinals Raiders Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
10 41 15 28
79 18
152 9
Total 41 Total 55
14 1.34

Saints move up to get Marcus Davenport, DE

Marcus Davenport Trade
Saints Packers Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
14 29 27 25
147 8
(25) 24
Total 29 Total 57
28 1.97

Bills go up to get Tremaine Edmunds

Tremaine Edmunds Trade
Bills Ravens Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
16 32 22 27
154 12 65 21
Total 44 Total 48
4 1.09

Packers trade again to get Jaire Alexander

Jaire Alexander Trade
Packers Seahawks Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
18 29 27 25
248 5 76 17
188 5
Total 34 Total 47
13 1.38

Titans trade up for Rashaan Evans

Jaire Alexander Trade
Packers Seahawks Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
18 29 27 25
248 5 76 17
188 5
Total 34 Total 47
13 1.38

Ravens trade 2019 assets to get their QB

Lamar Jackson Trade
Ravens Eagles Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
32 23 52 22
132 11 125 15
(48) 25
Total 34 Total 62
28 1.82

There are a number of ways to analyze a draft trade. You can do it by comparing the actual players selected (though that takes time), you can do it by trade value, as measured by a trade chart, or you can do it by using the Pro Football Reference statistic approximate value. There are charts of approximate value per draft choice and those charts can be used to calculate trade values and risk immediately.

The recent blockbuster trade by the Jets involves substantially more risk than the last five major trade ups in the NFL (here, here and here). To make these calculations I assume the Jet’s pick next year will be the 10th pick in the second round, hence the 42nd pick.

Trade for 3rd Pick
Jets Colts Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
3 45 6 39
37 28
49 20
42 25
Total 45 Total 112
67 2.49


With a risk ratio of 2.7 2,5, the risk incurred by the Jets is a bit less to what Washington put up with in the RGIII trade. It’s also comparable to the Earl Campbell trade. The last two trades were high risk – never paid back kinds of trades (though with Earl Campbell, the team’s competitiveness during his peak years may have been enough emotionally for the Oilers).

Update: recalculated risk, which now stands at 2.5 instead of 2.7.

I’m doing a brief review of Python again, as it relates to things that draft fans might like, and note that the random and statistics modules all seem pretty useful.

So, the design goal here is: can we make a good enough simulation to tell us something about draft strategy. Can we learn something about BPA versus need by using Python code? Right now I don’t have an answer, but I can show you some of the approach so far.

One thing I’ve found if you’re moving from another language into Python, that you can eliminate a lot of scope issues if you’ll do certain substantial bits of work in a Python class. The scope of self variables is easy to measure and then you’re not wondering whether the common variable in Python has exactly the same scope, as say, a lexical in Perl.

So for now, we present the Playa class, a “draftable” object.

import random
from statistics import mean
from pprint import pprint


class Playa:
    def __init__(self, oldid=0):
        self.value = random.randrange(1,101)
        self.pos = self.getposition() = oldid + 1
        self.drafted = False
        self.meanshift = -1000.0

    def __repr__(self):
        return "Playa id:{0:3d} pos:{1:s} val:{2:3d}".format(, self.pos, self.value )

    def out(self):
        return "id:{0:3d} pos:{1:s} val:{2:3d}".format(, self.pos, self.value )

    def getposition(self):
        poslist = ["QB","RB","WR","FL","SR","TE","LT","LG","RT","RG","OC"]
        return poslist[random.randrange(0,11)]

    def draft(self):
        self.drafted = True

This object will allow us to generate players and then associate them with teams. Players can be identified by their id, a draft value can be derived from their real value (1-100), and a logical variable shows whether they are drafted or not.

I’m only using offensive positions in this simulation. And since more and more teams use a slot receiver as opposed to a fullback, we have “SR” in our position charts.

If with 32 teams, you generate 320 players per draft, then the values of 1 to 100 break nicely, as real value of 91 to 100 are first round talent, 81 to 90 are second round talent, and so on.

This would have been done earlier, but Pro Football Reference dropped its very handy chart of draft position versus AV. I started missing it more and more, and using the Wayback Machine I found it here.

The three major QB trades of 2017 were the trade for Mitch Trubisky, Patrick Mahomes, and Deshaun Watson. We will analyze them in sequence.

Mitchell Trubisky Trade
Chicago Bears 49ers Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
2 46 3 45
67 19
111 12
(71) 21
Total 46 Total 97
51 2.11


The Bears have a trade risk comparable to a typical trade for a #1 draft choice and a quarterback at that. The trade has less fundamental risk than Goff or Wentz. The comparable that comes to mind is Eli Manning. By contrast, the delta AV of the other two trades are substantially less.

Patrick Mahomes Trade
Chiefs Bills Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
10 41 27 25
91 17
(25) 24
Total 41 Total 66
25 1.61

Mahomes merely has to give six seven good years, and the trade ends up warranted. The issue in the case of Deshaun Watson is keeping him upright. A fistful of whole years almost as good as his freshman year in the NFL and he would end up bordering on Hall of Fame numbers.

Deshaun Watson Trade
Texans Browns Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
12 35 25 24
4 44
Total 35 Total 68
33 1.94


So here is wishing Deshaun Watson a healthy career from now on.

I didn’t expect another trade of this magnitude, and so quickly. But let’s crunch the numbers on this trade, and compare them to the 2016 Titans-Rams trade.

The Browns received from the Eagles, the #8, #77 and #100 picks in this draft. In 2017 they receive the Eagles first round pick. In 2018 they receive the Eagles 2nd round pick. The Eagles have received the #2 pick in this draft, and the Browns 4th round pick in 2017.

For the purposes of this calculation, we assume the Eagles will pick 20th in 2017 and 2018, and that the Brown in 2017 will rise from 2nd to 10th.


The AV costs of the 2016 Eagles Browns trade.
Eagles Browns Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
2 46 8 40
(138) 8 77 12
100 17
(20) 29
(52) 22
Total 54 Total 120
66 2.22


The Delta AV for both trades are the same, but since the Eagles received a lot less AV, the relative ratio of AV given to AV received is higher. The trade cost is the same, but the purchase is more highly leveraged.

Determining how to assess draft trades in the NFL is not hard (see here, here, and here). Ever since Pro Football Reference went through the trouble of determining what average AV can be assigned to a draft slot, it’s merely a matter of counting. The technique has some variance, as the draft slot of a future pick is not known. Even so, with a bit of conservative extrapolation, you can still get a feel for the overall cost of a trade.


First, the numbers:


The AV costs of the 2016 Rams Titans trade.
Rams Titans Results
Pick Average AV Pick Average AV Delta AV Risk Ratio
1 51 15 28
113 14 43 24
177 5 45 25
76 17
(20) 29
(84) 13
Total 70 Total 136
66 1.94


In the data above, we assume that the Rams will improve 5 slots in draft placement, so that the first and third they sent to the Titans would be picks 20 and 84. If the Titans end up 18th or 23rd, it’s notable that the difference in value at this point is less than the point-to-point deviation, so that kind of change won’t affect the calculation much. Pro Football Reference’s raw data are moderately noisy.

The Rams total investment is 136 AV, roughly equal to the career value of John Elway. That’s not entirely accurate, as the Rams actually received three picks in return, and if the other two return 19, then the player they pick at #1, to return the value of the investment, only has to yield 117 AV.Now, 117 points is about mid in between Phillip Rivers and Aaron Rogers in value.

Update: Johnny Unitas, at 114, is a closer comparable.

In terms of risk, the trade is riskier than the Eli Manning trade, and less risky than the RG III trade or the Earl Campbell trade. For 9 more AV than the RG III trade, they received 24 more AV in return.

Best of luck to the Rams. I hope their picks work out well for them.

The NFL draft is a kind of auction, with auction-like dynamics. It’s also akin to a marriage. It only takes one, not a crowd, to get married and the opinion of the one outweigh the many. When analyzing the draft, I’ve been known to say things like between three players of the same true value, the one that gets drafted is the one whose value is most overestimated (1). I’ve also said things like one scouting opinion isn’t important, but the envelope of opinions is. The distribution of those opinions is crucial to knowing when a player can be drafted (2).

The distribution of player rankings can affect the possible draft positions of a player.

The distribution of player rankings can affect the possible draft positions of a player. Hand drawn curves on a brand new pen tablet, so they’re not perfect curves. Imagine the purple curve with more extensive tails.

In the diagram above, there are three distributions, with different peaks, means and spreads. Player A, in black, has a tight distribution of values and barring any issues with uniqueness of position, there is a consensus where he will be drafted. Player B, in red, has a broader distribution, but is unlikely to suffer more than half a round of variance in draft position. Player C, in purple, has an envelope encompassing two whole rounds of the draft. It’s the player C types that create a lot of controversy.


Travis Frederick and ZZ Top: Separated at birth?

The player the Dallas Cowboys drafted in the first round, Travis Frederick, is exactly one of those types. He was highly ranked before the combine, but suffered because of his bad 40 time. People like Gil Brandt, who had him ranked 27th best at the time, dropped him because of his 40 time. Perusing various links, such as this one, you see rankings ranging from 31 (Gary Horton) into the 90s. Now please note that draft pundits really don’t count, NFL teams do. But for the sake of argument, we’re using media scouts as an estimator of the envelope of NFL opinions. And that envelope of values encompass two whole rounds of variance.

So, what happens when you must have a player whose valuation envelope is a broad distribution? This player must be taken pretty far from the mean, in the tails of the “high value” side, or else you risk losing him (3). What is guaranteed though, is that the pundits on the other side of the mean from you will undoubtedly scream bloody murder. That’s because a draft pundit’s opinion is his life’s blood, and they make their money validating and defending that opinion, usually in print, and sometimes on television. That it’s one of many doesn’t matter if that’s how you make your living. So of course pundits will scream.

2013 was a draft with few good players. If estimates are valid that there were only 16 or so players truly worth a first round pick, then by default you’re overdrafting your quality by a half round by the middle of the first round. If the span of Frederick’s valuations really ran from, say, mid second to the beginning of the fourth, then the so-called overdraft is not, it’s entirely the function of three things: first, the perceived need for the player and second, such a broad valuation envelope that Dallas had to draft him in the tails of the distribution. Third factor, the lack of talent overall in the draft that led to overdrafting in general.


1. Jonathan Bales, before he became a New York Times contributor, favored this comment (common sense, IMO) and used it to help validate a pet drafting theory of his. I never saw enough rigor in his theory to separate it from the notions of BPA or need, as it was more a collective efficiency concept. IMO the notion hardly led to the invalidation of BPA or needs based drafting.

2. In the early 2000s, I wrote a Monte Carlo simulator of the draft, which explicitly used those distributions to estimate where players would be drafted. More discussion of that code, released as a Sourceforge project, is here.

3. Let me note that in “must have” situations, teams whose draft record no one complains about .. New England say .. will draft players above their worth. Belichick’s rationale, given in the link, is instructive. An excerpt is:

Now, the question is always, “How much do they like him and where are they willing to buy?’ I’m sure for some teams it was the fourth round. For some teams it was the third round. But we just said, ‘Look we really want this guy. This is too high to pick him, but if we wait we might not get him, so we’re going to step up and take him.’

PS – tskyler, a Cowboys Zone forum contributor, has a very nuanced fan analysis of the Frederick draft here, one worth reading.