Most Popular This Month

Sunday, August 2, 2020

2020 Fantasy Football - How to Make a Projection

I was going to publish a new set of rankings but with the opt outs coming hot and heavy and no set date for the cut off alongside camps starting I’m going to hold off on a finalized 2nd set of rankings. Which means you get something I’ve been thinking about doing but wasn’t quite sure if it was too inside baseball. This is a deep dive/explainer of how I get to my projections, or as some of you might call it… “How a Guesser, Guesses!”

 

The first step just seems logical, look at where each leader of an offense has worked over the past three seasons. For most teams this will be their offensive coordinator except in places where the head coach is well established as an offensive minded coach. Think, Reid in KC.

OC or HC

19Tm

18Tm

17Tm

Kingsbury

ARI

-

-

D. Koetter

ATL

TB

TB

G. Roman

BAL

BUF'16

BUF'15

Daboll

BUF

BUF

NE'16

J. Brady

-

NO

NO

Nagy

CHI

CHI

KC

Taylor/Callahan

CIN

LAR

LAR

Van Pelt

MIN

MIN

MIN

K. Moore

DAL

DAL

DAL

P. Shurmur

NYG

NYG

MIN

D. Bevell

DET

SEA'17

SEA'16

LaFleur

GB

TEN

LAR

B. O'Brien

HOU

HOU

HOU

Reich

IND

IND

PHI

Marrone/DeFilippo

JAC

MIN

JAC

A. Reid

KC

KC

KC

A. Lynn

LAC

LAC

LAC

S. McVay

LAR

LAR

LAR

C. Gailey

NYJ '16

NYJ '15

-

G. Kubiak

MIN

DEN

DEN

J. McDaniels

NE

NE

NE

S. Payton

NO

NO

NO

J. Garrett

DAL

DAL

DAL

A. Gase

NYJ

MIA

MIA

G. Olson

LVR

LAR

JAC

D. Pederson

PHI

PHI

PHI

Fichtner

PIT

PIT

PIT

B. Schottenheimer

SEA

SEA

LAR'14

K. Shanahan

SF

SF

SF

Arians

TB

ARI'17

ARI'16

A. Smith

TEN

TEN

TEN

Turner

CAR

CAR

MIN'16

 

That’s pretty straight forward, except where there are gaps in their CVs or young coaches or guys coming from college. In those cases, the next step gets slightly more messy but pretty straight forward. The next step is to look at three pieces of data: Passes, rushes, and Pythagorean win% for each of the three previous seasons. Passes and rushes are pretty simple they’re just the number of each type of play the team ran that season. Pythagorean expected wins is a bit more complex. This is a concept popularized by Bill James’ work in baseball. He found that if you take a team runs scored and square them and divide by runs scored squared and runs allowed squared. That it was a solid predictor of wins expected for that team. On a simple level if a team scores as much as they allow, you’d expect them to be right around .500. The coefficient can be adjusted for each sport so for football the best fit has been found at 2.37. So, the Py columns are what we would expect the teams winning percentages to be based on points scored and points allowed to give us an idea of how good each team was. Something that will get factored in in our next table.

 

Note: Where there isn’t a history or data I just put in the league averages for passes and rushes.

 

OC or HC

Tm

19Pa

19Ru

19Py

18Pa

18Ru

18Py

17Pa

17Ru

17Py

Kingsbury

ARI

554

396

0.382

548

430

0.555

548

448

0.608

D. Koetter

ATL

684

362

0.473

625

389

0.407

605

390

0.423

G. Roman

BAL

440

596

0.818

474

492

0.532

465

509

0.532

Daboll

BUF

513

465

0.612

499

468

0.314

550

482

0.793

J. Brady

CAR

559

427

0.521

519

471

0.699

536

444

0.680

Nagy

CHI

580

395

0.463

512

468

0.719

543

405

0.618

Taylor/Callahan

CIN

616

385

0.275

568

459

0.679

518

454

0.708

Van Pelt

CLE

466

476

0.668

606

357

0.532

527

501

0.728

K. Moore

DAL

597

449

0.671

527

439

0.527

493

480

0.538

P. Shurmur

DEN

607

362

0.340

583

354

0.435

527

501

0.728

D. Bevell

DET

571

407

0.375

555

409

0.558

567

403

0.789

LaFleur

GB

573

411

0.607

437

456

0.514

518

454

0.708

B. O'Brien

HOU

534

434

0.489

506

472

0.639

525

448

0.354

Reich

IND

513

471

0.481

644

408

0.633

564

473

0.738

Marrone/DeFilippo

JAC

589

389

0.340

606

357

0.532

527

527

0.740

A. Reid

KC

576

375

0.712

565

421

0.668

543

450

0.618

A. Lynn

LAC

597

366

0.486

512

399

0.651

583

419

0.653

S. McVay

LAR

632

401

0.547

568

459

0.679

518

454

0.708

C. Gailey

MIA

550

418

0.281

604

448

0.621

548

448

0.608

G. Kubiak

MIN

466

476

0.668

588

393

0.465

566

457

0.340

J. McDaniels

NE

620

447

0.814

574

478

0.667

587

448

0.738

S. Payton

NO

581

405

0.668

519

471

0.699

536

444

0.680

J. Garrett

NYG

597

449

0.671

527

439

0.527

493

480

0.538

A. Gase

NYJ

521

383

0.349

455

371

0.326

602

360

0.311

G. Olson

LVR

523

437

0.334

568

459

0.679

527

527

0.740

D. Pederson

PHI

613

454

0.550

599

398

0.531

564

473

0.738

Fichtner

PIT

510

395

0.472

689

345

0.601

590

437

0.658

B. Schottenheimer

SEA

517

481

0.510

427

534

0.622

515

395

0.448

K. Shanahan

SF

478

498

0.737

532

423

0.361

607

408

0.414

Arians

TB

630

409

0.512

598

410

0.383

646

399

0.584

A. Smith

TEN

448

445

0.613

437

456

0.514

496

443

0.462

Turner

WAS

633

386

0.238

563

416

0.491

588

380

0.537

59.334

48.151

0.521

60.786

44.427

0.555

38.978

41.042

0.608

0.156

0.113

0.136

 

So now we have a stack of raw data for coaching “tendencies”, I scare quote that because players, and situations affect these numbers to some extent so we can see general trends but there is still more work to do. My next step is to adjust for the season. Did a team have a lot of rushes or passes, why was that? Did they run a lot because they grossly outscored opponents? Did they pass a lot because they were always behind? Or did they go against trend and pass a lot while winning a lot (looking at you Josh McDaniels). So that’s what this next step is trying to normalize the numbers for each team to add context about who is actually pass happy or run heavy outside of situation.

 

OC or HC

Tm

Plays

Ave

STDev19

Pa

Ru

STDev18

Pa

Ru

STDev17

Pa

Ru

Kingsbury

ARI

974

-0.893

501

439

0.000

548

430

0.000

548

448

D. Koetter

ATL

1018

-0.312

666

377

-1.311

545

447

-1.364

552

446

G. Roman

BAL

992

1.905

553

504

-0.204

462

501

-0.560

443

532

Daboll

BUF

992

0.585

548

437

-2.137

369

563

1.362

603

426

J. Brady

CAR

985

0.000

559

427

1.280

597

414

0.528

557

422

Nagy

CHI

968

-0.373

558

413

1.458

601

403

0.069

546

402

Taylor/Callahan

CIN

1000

-1.582

522

461

1.102

635

410

0.734

547

424

Van Pelt

CLE

978

0.944

522

431

-0.204

594

366

0.883

561

465

K. Moore

DAL

995

0.966

654

402

-0.250

512

450

-0.517

473

501

P. Shurmur

DEN

978

-1.164

538

418

-1.064

518

401

0.883

561

465

D. Bevell

DET

971

-0.939

515

452

0.022

556

408

1.331

619

348

LaFleur

GB

950

0.552

606

384

-0.368

415

472

0.734

547

424

B. O'Brien

HOU

973

-0.206

522

444

0.744

551

439

-1.873

452

525

Reich

IND

1024

-0.260

498

484

0.692

686

377

0.957

601

434

Marrone/DeFilippo

JAC

998

-1.166

520

445

-0.204

594

366

0.972

565

487

A. Reid

KC

977

1.225

649

316

0.998

626

377

0.069

546

447

A. Lynn

LAC

959

-0.225

584

377

0.851

564

361

0.328

596

406

S. McVay

LAR

1011

0.165

642

393

1.102

635

410

0.734

547

424

C. Gailey

MIA

1005

-1.545

458

492

0.588

640

422

0.000

548

448

G. Kubiak

MIN

982

0.944

522

431

-0.798

540

428

-1.970

489

538

J. McDaniels

NE

1051

1.885

732

356

0.996

635

434

0.953

624

409

S. Payton

NO

985

0.944

637

360

1.280

597

414

0.528

557

422

J. Garrett

NYG

995

0.966

654

402

-0.250

512

450

-0.517

473

501

A. Gase

NYJ

897

-1.106

455

436

-2.027

332

461

-2.186

517

450

G. Olson

LVR

1014

-1.205

452

495

1.102

635

410

0.972

565

487

D. Pederson

PHI

1034

0.183

624

445

-0.209

586

407

0.957

601

434

Fichtner

PIT

989

-0.316

491

410

0.409

714

327

0.367

604

422

B. Schottenheimer

SEA

956

-0.070

513

484

0.592

463

508

-1.181

469

443

K. Shanahan

SF

982

1.389

560

431

-1.719

428

499

-1.426

551

467

Arians

TB

1031

-0.060

626

412

-1.529

505

478

-0.175

639

406

A. Smith

TEN

908

0.591

483

417

-0.368

415

472

-1.074

454

487

Turner

WAS

989

-1.823

525

474

-0.571

528

441

-0.521

568

401

 

Which brings us to the part that actually ends up in my projections. The team specific totals. I start off with 2019 being weight 50% more than 2018, which is weighted 100% more than 2017 to weight towards more recent data for each coach. And then adjust rushing and passing totals based on the Vegas win totals to try and best represent situations for context. Then this becomes much more art then science. Any adjustments based on standard deviations (which I prefer) are going to adjust too far at times because we’re dealing with a sample size of 32 teams, and as I’ve said specific situations, injuries, and talent are going to skew year by year so I take those raw numbers and work them a bit more based both on my own opinions of teams and rosters and as I make my full blown projections based on what I’m seeing with individual players and position groups. For example, I had Arizona with a greater run/pass split but with that split I couldn’t get Drake to the number of rushes I wanted so I skewed them a little more towards the run, which Kingsbury has actually skewed a little more heavily towards both in his first year in Arizona, but also at Texas Tech where he wasn’t quite as Pass happy as his mentor Mike Leach.

 

OC or HC

Tm

20Pa

20Ru

20Tot

VegW

VegL

Kingsbury

ARI

587

424

1011

7.5

8.5

D. Koetter

ATL

638

392

1030

7.5

8.5

G. Roman

BAL

523

487

1010

11.5

4.5

Daboll

BUF

529

455

984

9

7

J. Brady

CAR

648

383

1031

5.5

10.5

Nagy

CHI

558

416

973

8.5

7.5

Taylor/Callahan

CIN

612

398

1010

5.5

10.5

Van Pelt

CLE

557

419

976

8.5

7.5

K. Moore

DAL

572

451

1023

9.5

6.5

P. Shurmur

DEN

579

421

1000

7.5

8.5

D. Bevell

DET

592

401

993

6.5

9.5

LaFleur

GB

548

462

1010

9.5

6.5

B. O'Brien

HOU

530

450

979

8

8

Reich

IND

565

448

1013

8.5

7.5

Marrone/DeFilippo

JAC

609

366

975

5.5

10.5

A. Reid

KC

571

418

989

11.5

4.5

A. Lynn

LAC

599

364

963

7.5

8.5

S. McVay

LAR

597

421

1018

9

7

C. Gailey

MIA

587

425

1012

6

10

G. Kubiak

MIN

536

421

957

9

7

J. McDaniels

NE

588

451

1039

9

7

S. Payton

NO

548

434

982

10

6

J. Garrett

NYG

559

417

976

6.5

9.5

A. Gase

NYJ

501

402

903

7

9

G. Olson

LVR

563

445

1009

7.5

8.5

D. Pederson

PHI

597

436

1033

9.5

6.5

Fichtner

PIT

622

405

1027

9.5

6.5

B. Schottenheimer

SEA

507

471

978

9

7

K. Shanahan

SF

512

463

975

10.5

5.5

Arians

TB

592

425

1017

9

7

A. Smith

TEN

468

430

898

8.5

7.5

Turner

WAS

582

418

1000

5.5

10.5

 

Then it’s a relatively straight forward process I look at rush and target shares from last season, try and adjust for injuries, players that came in or left the team and give each role on  each team a share of the offense. Below I have the QB breakdowns for each team as an example.

 

Tm

QB1%

QB2%

QB3%

QB1Ru%

QB2Ru%

QB3Ru%

ARI

0.975

0.020

0.005

0.235

0.010

0.005

ATL

0.950

0.045

0.005

0.090

0.010

0.005

BAL

0.925

0.070

0.005

0.295

0.035

0.005

BUF

0.915

0.080

0.005

0.225

0.005

0.005

CAR

0.950

0.045

0.005

0.100

0.010

0.005

CHI

0.700

0.295

0.005

0.095

0.035

0.005

CIN

0.900

0.085

0.015

0.100

0.010

0.015

CLE

0.990

0.005

0.005

0.070

0.005

0.005

DAL

0.995

0.005

-

0.115

0.005

-

DEN

0.980

0.015

0.005

0.125

0.010

0.005

DET

0.980

0.015

0.005

0.100

0.015

0.005

GB

0.990

0.005

0.005

0.105

0.015

0.005

HOU

0.960

0.035

0.005

0.200

0.010

0.005

IND

0.975

0.020

0.005

0.035

0.015

0.005

JAC

0.950

0.045

0.005

0.175

0.010

0.005

KC

0.950

0.045

0.005

0.135

0.015

0.005

LAC

0.645

0.350

0.005

0.105

0.060

0.005

LAR

0.990

0.005

0.005

0.075

0.005

0.005

MIA

0.600

0.395

0.005

0.115

0.085

0.005

MIN

0.955

0.045

-

0.065

0.005

-

NE

0.900

0.095

0.005

0.120

0.010

0.005

NO

0.920

0.070

0.010

0.030

0.055

0.065

NYG

0.950

0.045

0.005

0.150

0.010

0.005

NYJ

0.925

0.070

0.005

0.100

0.010

0.005

LVR

0.845

0.150

0.005

0.050

0.015

0.005

PHI

0.975

0.020

0.005

0.130

0.010

0.005

PIT

0.975

0.020

0.005

0.075

0.005

0.005

SEA

0.995

0.005

-

0.150

0.005

-

SF

0.990

0.005

0.005

0.090

0.005

0.005

TB

0.995

0.005

-

0.025

0.005

-

TEN

0.950

0.045

0.005

0.125

0.015

0.005

WAS

0.950

0.045

0.005

0.115

0.025

0.005

 

From there I compile INT:TD ratios for QBs, Yards per rush attempt data for QBs/RBs/WRs (with enough data), Yards per target data for RBs/WRs/TEs and crudely adjusted college data for rookies and young players with no meaningful pro data. I go through each team tweaking and adjusting yards per a bit, looking for touchdown outliers, and anything that may be a bit off, and finally… You got yourselves a set of projections. This current set of which was done before players started opting out.


Hope you've enjoyed this look into my damaged fantasy football psyche. Who are we kidding just  a look into the way my brain works. I'm sorry, and have fun picking this apart.

No comments:

Post a Comment