Showing posts with label fantasy. Show all posts
Showing posts with label fantasy. Show all posts

Monday, September 21, 2009

You Should Listen to Me: I Placed First in a Private Make-Believe World

So all my waiver-wiring and managing risk and whatnot landed me a league title in one of the two leagues I cared about (and I came in second in the other one). Booya!

Mostly though, I'm excited that fantasy baseball season is over so I can focus on (fantasy) football, as well as the baseball playoffs. Fantasy sports really enhance my spectator experience, but it's also nice to watch a game and not worry about every at-bat and how it will affect me. Here's hoping the Yankees go deep into October baseball!

Tuesday, September 9, 2008

Looking At Value From All Sides

One of the things I love about fantasy sports is trading players. I just love the back and forth negotiation that goes into it. And of course I love it when my trades work out. But I can't guarantee that when I trade Johnny Gomes after he hits 10 HR in April that he'll fall off the face of the earth. You have to make the right trade at the right time, and in order to do that, you really need to understand player value.

As I see it, there are three different aspects of player value:

  • Current value: How well the player is doing right now. You might look at last week's or month's stats to see this. Michael Turner's current value is sky high. Troy Tulowitzki, not so much. Before the season this would be last season's stats.
  • Projected value: How good a player is perceived to be. Albert Pujols's projected value is always near the top. Despite Hank Baskett's awesome performance this weekend, his projected value is still low.
  • Perceived value: A subjective measure of how good a player is. For example, I think Jericho Cotchery is awesome. And I hate Melky Cabrera.
There are also two implied aspects:
  • Potential value: The difference between current and projected value. Tulowitzki has a high projected value, but a low current value, so he has a high potential value.
  • Estimated value: A combination of current and projected value. You would use this to compare a journeyman-type player (similar current and projected values) to a rookie (low current, high projected value) in player evaluations.
When people talk about "buy low, sell high", they're usually refering to the potential value; Baskett is a sell high candidate, Peyton Manning a buy-low. Most people are aware of this phenomenon, so buy-low and sell-high opportunities can be hard to move on (no one is likely to dump Peyton based on his week 1 performance). But you can exploit an owner's perceived value of a player if that value differs from your estimation of that player's value.

How do you determine an owner's perceived value of a player? You can look at several things:
  • Did the owner draft the player higher than average?
  • Does the owner start the player over other players?
  • Did the owner list the player on his trading block?
  • Is the player's name part of the owner's team name?
  • When you proposed a trade for this player, did he counter-offered with another?
  • When you proposed a trade for a different player, did he counter-offered with the player?
If you can figure out an owner's perceived value of players, you can possibly make a trade that leans towards you.

Now, I just finished writing this post and I can't remember what I really wanted to say. This seems obvious, but I know I had a better idea when I started. Oh well, maybe it will come to me later.

Wednesday, March 12, 2008

Walrus Mark, uh, Zero

The Romans never had a symbol for zero because they were that awesome.

I got some good work done on Walrus tonight (ok yeah, I had Baseball Mogul open in the background... and Comedy Central on the TV). Mostly a lot of groundwork for getting the One True List into the app. I now know how to load data from Excel files. I'm going to hardcode everything for Rotoworld for now (following the "hardcode first, hardcode second, generalize third" rule), but it should be easy to import any set. Hot.

A few more features I'd like to add:

  • Must-draft options: Add the ability for a user to set a draft round for a player that if the player drops to that round the user "must" draft him. The system would highlight the player somehow.
  • Notes: Both a text note and possibly a "+/-/=" rating (for gut feelings). I could have players with notes brought to the forefront (maybe use tooltips?).
  • Fantasy replacement level by postion: Set the replacement level for each position (that is, the point after which you either don't draft a player or pick only sleepers).

Fun times!

Friday, March 7, 2008

Fantasy Baseball Draft App - Walrus!

I've been playing fantasy baseball for a few years, and as I've said before, the draft is my weakest link. I've tried giving myself a cheat sheet with a clear one-value system for evaluating players. I've also tried providing myself with tons of information. Yet I always fall too far to one side of the information-overload/lack of info problem.

Enter Fantasy Baseball Draft App, codenamed Walrus (I just made up that code name because I didn't want to call it "Fantasy Baseball Draft App" or "FBDA"). I've started writing a windows application (in C#.NET w/ VS 2005) to help me with my draft. Basically I want a way to display to me "The One True List" (whatever ranking list you have) but with all/any set of analysis that I want as needed. For example, I could provide information about position scarcity compared to all teams' rosters (let's say there are only four tier three shortstops left, but only three teams don't have a SS already; that's valuable information). Or I could show fantasy-team-average stats compared to what I (or my opponents) have already drafted (and how a given player would impact them). These are just a few of the things I want to do.

Here's a basic feature list:

  • Import projections/rankings from Excel files. This is tricky; first of all, importing from Excel is never straightforward. Secondly, what formats do I support? ESPN, Rotoworld, Rotowire, Baseball Prospectus? Likely I'll start with one format and go from there.
  • Format projections to match league settings. Depends on how I set league settings...
  • Set league settings. Yeah, I know.
  • Set stat goals. Obvious and simple.
  • Display "The One True List" with sorting and filter options. Easy.
  • Display my roster and other rosters. Pretty simple.
  • Allow a player to be drafted to my team or another team with a button click. This part requires some design decisions; do I have 1 or 2 buttons? How do I correct mistakes?
  • Input total roster count and draft order. Simple.
  • Provide a variety of calculations: ADP, position scarcity, etc. Depends on what I actually do.

That's just off the top of my head. I'll see how far I get with "Walrus Mark I".

Monday, March 3, 2008

Just Jumping

We had our draft for our fantasy baseball work league this weekend. I wanted to try out a particular draft strategy of simply drafting the highest value player on the board. I did this for about 6 rounds before I had to abandon it, as my rankings told me to draft about 6 closers AFTER I'd already drafted J.J. Putz and Jonathan Papelbon. So I struggled for a few rounds until Jon gave me an idea... he was drafting only fat baseball players and suggested I get a gimmick.

So I looked at my roster and saw 11 players, four whose first names started with J. The next guy I was planning to draft was Jim Thome. So I decided to draft only players whose first name started with J. So I proceded to draft Jim Thome, James Loney, Joakim Soria, Jarrod Saltalamacchia, Jeff Francis, Jeremy Guthrie, Jason Giambi, Jeremy Bonderman, Jack Cust, Joey Votto, Jason Bartlett, Jon Lester, John Buck,  and Jay Bruce. Combine that with Jimmy Rollins, J.J. Putz, Jonathan Papelbon, and Justin Verlander, I had 18 out of 25 roster spots filled with Js. 

All rights reserved. Take that!