Introducing RV Current

Today I’m introducing a new projections source, which I’m calling RV Current. The idea is to use the same basic projection model I use in the preseason, but also include current year data in the model. The goal is a current “true talent” estimate for each player.

So in addition to taking up to 3 years past data, I also add in current year’s stats. I give the current year weight based on the portion of the season we’ve played, such that after 81 games, I’d count this year’s stats as heavily as last year’s, and by the end of the season this year would count twice as much.

After doing the raw projections, I still make playing time adjustments based on depth charts and injury status. When a player is on an injury report with an estimated return timeframe, I’ll pick a date in the middle as a projected return date. When showing future statistics, I’ll use those dates to adjust projected playing time for players. The depth chart checks try to ensure starters get some minimum projected playing time, while bench players are capped (unless they’re on an injury report). Finally, I check a team’s projected totals to ensure they’re reasonable, both at the overall team level and at a per-position level.

Continue reading

Posted in Fantasy Strategy, Major League Baseball, Projections, RotoValue, Sabermetrics | Comments Off on Introducing RV Current

Hedging Your Bets on the Nets?

On Monday, Nate Silver looked at the odds of winning a second-round playoff series after going 7 games to win the first round, and found that your chances to win go down:

 Original SRS odds: Miami 88 percent to win the series.

Modified SRS odds: Miami 95 percent to win the series.

Miami swept its opening-round series, while Brooklyn needed seven games to beat the Toronto Raptors. Hence, the Nets have gone from really big underdogs to really, really big underdogs.

Today, FiveThirtyEight writer Benjamin Morris notes that the Nets beat the Heat in all four regular-season games between the two:

Brooklyn mainly has one thing going for it: The team swept its regular-season series against Miami, winning all four games.

Morris plugs this information into a model, and he summarizes his findings:

  • For teams of even strength, the home team is a 66 percent favorite if it was 4-0 against its opponent in the regular season, but a 45 percent underdog if it was 0-4.

  • The shift in odds for a two-game advantage (usually because of a 3-1 or 2-0 head-to-head record) is approximately the same as the value of having home-court advantage for the series(!).

  • While moderately impressive, this gets us nowhere close to making Brooklyn a favorite against Miami by virtue of its 4-0 record alone (though if this were all the information in the world, the 72 percent odds of Miami winning here would be much worse than the 85 percent predicted by the market).

I’ve been a Nets fan since they took University of Maryland teamates Buck Williams and Albert King together in the first round of the 1981 draft, so I hope Morris’s take carries more weight than his boss’s!

And initially, that seems to be the case: Silver estimated their chances of winning dropped about 7% because of going 7 games, while Morris’s finding about the regular-season sweep implies improving their chances by about twice that.

No matter who wins, one of these stories will make it look like these guys really know something!

Posted in NBA Basketball, Sabermetrics | Comments Off on Hedging Your Bets on the Nets?

Improving Future Statistics

While we can’t know the future, we can make educated guesses and projections about it. RotoValue does this by displaying projected stats (both my own projections, and for baseball, projections contributed from outside sources, Steamer, Marcel, and MORPS), and also by letting you choose prorated stats for the current year or the previous year.

When I first implemented prorated numbers, I simply divided a player’s current stats by the number of games his team had played, and then multiplied by the number of games in the season. If you were showing stats for less than the full season, I’d prorate to the number of games his team had scheduled over that time. That was a decent first-cut, but for players who missed much of the season so far, their prorated future numbers were too low. So, for example, Clayton Kershaw won his first start, pitching very well, but then went on the DL. Under my old model, since he pitched just one of the Dodgers’ 26 games so far, I’d prorate him to start just 1 out of every 26 games, or about 6 starts. His fantasy owners (not to mention the Dodgers) surely hope he pitches a lot more than that! Now, however, I’m tracking when players are actually on a team’s active roster, and using that information to better prorate statistics. Kershaw has made just 1 start, but since he was on the disabled list most of the time, I currently prorate him to make a total of 25 starts.

Simply prorating stats has another bias, though, one that also affects searches based on projected statistics. Now that the season is under way, players do get injured, and preseason projections did not reflect that information. Josh Hamilton tore a ligament in his thumb and is out for 6-8 weeks according to my injury reports. But the preseason projections for Hamilton don’t account for this new knowledge, but I now try to do that. I now compute a “target return” date for injured players, based on the data shown in the injury reports I receive. In Hamilton’s case, I’m adding 7 weeks to the April 9th date listed for his injury, and I set the target return to May 28th. So rather than showing Hamilton’s stats assuming he’ll play all the team’s remaining games, I prorate the projections as if he’ll only play from May 28th onward.HamiltonSearch
Here I’ve reduced the playing time for Hamilton, but kept his rate numbers the same as the original preseason Steamer projections:

HamiltonDetail
This should better reflect the future value Hamilton might have to fantasy owners. So when you’re viewing projections in a Search page, or as part of a projected standings page, I’ll adjust projections based on a player’s target return from injury. The Player Detail page will continue to show the original projections as given to me by the source (or computed by me).

The target return date is used not only when showing projections, but also when showing prorated statistics. Where the injury report gives an estimate of the player’s return, I use that to get the target return date. If he’s on the disabled list, but without any other guidance, I use the first date he’s eligible to come off, unless that date is in the past, in which case I’ll arbitrarily say he’ll miss 10 more days. At this point I’m updating based on the injury reports themselves, and not other news stories about a player’s return. So while I’ve seen reports that Bryce Harper will be out until July, because the injury report currently just lists him on the 15-day DL, I’ve set his target return to May 11th, 15 days after he was put on the DL.

These enhancements are also used when I compute projected standings for a league, so those values should be improved overall.

One caveat, however: by ignoring time a player is not on the active roster for prorated stats, I do expose small sample size issues. Because he has made only one start so far, Kershaw prorates to have the 1.35 ERA and 0.900 WHIP he had in that one start, while Hamilton hit .444 in the 8 games he played before going on the DL. While the rate stats, are way overly optimistic, the cumulative totals are better than they would be if I simply assumed both players would only play a tiny fraction of the season, which is what the old prorating model did.

Numbers should never drive all your decisions in fantasy sports, but getting better numbers can better inform your decisions. And the projected and prorated statistics shown at RotoValue have just gotten better.

Posted in Fantasy Strategy, Projections, RotoValue | Comments Off on Improving Future Statistics

Throwing your Weight Around

Much of the point of RotoValue dollar values is that the parameters of your league are relevant to how you should value players. When you start 2 catchers per team, top catchers are worth more than if you start just 1. Many players that have value in deeper leagues aren’t worth owning in shallower ones. My pricing model implicitly takes this into consideration.

But the site can customize even more than that. For a long time, the site has let RotoValue Analyst customers manually override the category weights, and also select extra categories to display for your league. Under the Settings menu, they’ll see a choice “RotoValue & Display”:

RotoValue Analyst customers can choose their own categories, and weights.

So if, for example, you’ve traded away all your closers, you could give the Saves category a weight of 0, and the RotoValue prices for your league would adjust to reflect the fact that you no longer care about a category. Similarly if you have a seemingly insurmountable lead in a category, you could give it 0 weight, or if a category is very close, you could give it double, or even triple weight. This page lets you set the weights for the categories in any RotoValue calculations, helping you find free agents (or evaluate trades) that are more relevant to your team’s situation. You get to manually set whatever weights you want, or, by clicking on the Reset button at the bottom of that page, remove all custom settings, and revert to using the scoring weights for your league in price calculations.

To use the customized weights, though, you have to opt in, by going to the settings page and updating them. I’ve just added a checkbox at the top of the page, “Compute weights based on your team’s stats and standings?”. This can automate the process of determining weights for you. If you select this option, the code will look at projected standings for your league, as well as the players in the active lineup on your team, and it will see how close you are to other owners in each category. The closer you are to passing or being passed by other owners, the more weight I will give a category. And if you save with this box checked, the algorithm runs very early each morning, after the previous day’s games, to recompute new weights based on updated standings data (and lineup changes).

Highlight auto-computed weightsIn this case my team projects near the bottom in Stolen Bases, and, more importantly, far from most other teams, so the algorithm gives that category the least weight, but WHIP projects to be the closest category, so it gives the most weight there. These different weights will affect RotoValue price calculations, guiding me towards players who are more likely to help my team, not only in general, but in the particular context of my league and opponents. The weights are scaled relative to the original league’s weight, so SB is given only 62% of its normal weight, while WHIP is given 134% of its weight. If your league weights certain categories differently for scoring purposes, then these calculations take that into account.

These auto-generated weights will tune RotoValue price calculations not only to the specifics of your league’s scoring and roster sizes, but also to the particular situation of your team and its current active roster relative to others. This information can help you make better decisions about pickups, trades, or even whom to put in your active lineup, and help you win your league.

Read on to see the how much difference this can have, and also details of the algorithm’s implementation. Continue reading

Posted in Fantasy Strategy, RotoValue | Comments Off on Throwing your Weight Around

Statistics Correction

I’ve discovered and corrected a bug in my 2014 major league baseball statistics.

Last Monday’s Reds/Pirates game was suspended by rain that night, and then completed on Tuesday, followed by the regularly scheduled game. RotoValue saves the live statistics of games in progress, and later it replaces them with a summary from the official boxscore. Well, in this case, the official boxscore for the completion came on Tuesday, with the date of the game as Tuesday April 15th also. Even MLB.com shares this confusion, as their scoreboard page shows that game for April 15th, not April 14th.

While the site properly shifted the boxscore data from April 14th to the 15th for that game, it did not adjust the year-to-date totals, and so it wound up counting the partial data from the 14th and the full data from the completion of the game on the 15th. So the net effect was that many Reds and Pirates players showed up with more statistics than they should have because that game was (mostly) double-counted. Win, loss, and save totals were unaffected, since the game had not been completed, but any stats compiled before the game was suspended Monday were double-counted.

I’ve reloaded the YTD totals for the full season from all the boxscores, correcting the data. And now RotoValue is again showing correct statistics for all games, and I apologize for any inconvenience this caused.

 

Posted in Corrections, RotoValue | Comments Off on Statistics Correction

One more benefit of FAAB: Easier Trading

In my post this morning forgot to mention another benefit of using FAAB: you can trade it! This encourages trading in multiple ways. First, trading FAAB can help balance out a trade offer. Sometimes you’re close to agreement, but think the current offer favors the other owner a little more. When you can trade FAAB, you can propose adding some FAAB to the deal, and then the negotiation becomes simply over how much FAAB to include. It’s a good way to make small deals happen that otherwise might not.

Say I have an extra middle infielder on my bench when your shortstop goes on the DL. Your bench doesn’t have anyone I’m interested in, and you don’t want to weaken your lineup by giving me an upgrade at some position. Perhaps I agree to take one of your bench players plus some FAAB – you get the short-term guy to fill a hole, and I get some potential future value.

Near the trading deadline, or when highly sought after free agents are new to a league, then owners who want to bid on the new player will often make trades to acquire more FAAB. Without FAAB there’s no incentive for such trades, nor is there a nicely divisible commodity (money) to try to balance out other deals. So using FAAB not only is a better way to allocate new talent in your league, it also helps make trading easier, too.

Needless to say, RotoValue supports including FAAB in trade offers, and indeed before the auction for George Springer we had two trades involving FAAB, as owners scrambled to increase their budgets. Indeed one trade was simply some FAAB for a player!

Posted in Auction, Fantasy Strategy, RotoValue | Comments Off on One more benefit of FAAB: Easier Trading

Free Agent Handling and FAAB

My two long-time baseball leagues, the Park Slope Rotisserie League, and the Ezra Stiles Rotisserie Association, both share the same free agent bidding/handling system, and I like it quite a bit.

One of the big questions in fantasy sports leagues is how should you allocate players who are new to the league? Many leagues use a waiver process, where teams ranked lower in the standings, or maybe teams that have gone longest without making a pickup, get priority. For high value players, this is unsatisfying, as plenty of owners will want the guy, but some arbitrary rule determines who will get him.

Some leagues simply have a first-come, first served policy, where whoever makes the pickup first gets the player. That rewards owners for paying close attention to news, or perhaps simply being able to pay attention, so I like this a little better than a waiver process, but it still doesn’t seem fair, and there can be a race to make a move in response to news. I still recall hearing about a trade that sent Lee Smith to the Cardinals in 1990 on the radio, and rushing to call our league commissioner while hoping he hadn’t heard of the move first. I was lucky enough to win Smith, who then saved 27 games for the Cardinals after the move.

Others use a FAAB (Free Agent Acquisition Budget) bidding process, where teams start with a fixed budget, and enter sealed bids, with the highest bid winning a player.

Our leagues use a hybrid of the latter two. These are Rotisserie scoring leagues, and lineup changes only take effect weekly. So we have a FAAB auction, scheduled to run at 6:00 AM EDT on the first day of the week. The highest bid on an unowned player in that auction wins him.

The problem with FAAB bidding as some sites process it, however, is that if you lose your bid(s), you might not get a new player to replace an injured player. Our leagues handle this situation by having a short window of first-come, first-served pickups, between the bidding deadline and the weekly move deadline. So if you need to make a pickup for your injured player, but you don’t win the FAAB auction on the guy you wanted, you can pick someone else, whom nobody else bid on, to replace your injured guy. You get the best of both worlds: competitive bidding for highly valued players, but flexibility to fill a slot with somebody no one else bothered to bid on, all before your weekly deadline! And while you still need to pay attention, you don’t have to stay plugged in 24/7 to transaction news.

Continue reading

Posted in Auction, RotoValue | Comments Off on Free Agent Handling and FAAB

RotoValue UserProfile and e-mail Settings

I’ve added a new switch to the UserProfile page at RotoValue. In addition to check boxes which let you control what transactions generate an automated e-mail, I’d added a box to control whether you show your e-mail address to other league members on team roster pages.

Here’s a view of the UserProfile page:

User Profile pageRotoValue can generate e-mail alerting you to league transactions. By default, you’ll get an e-mail about someone adding, cutting, or trading players, as well as e-mail about trade offers and any FAAB bids you may make. In addition, you can turn on e-mail alerting you to lineup changes, but that is, by default, disabled. You can turn off any or all of these by unchecking the relevant box on the UserProfile page.

The sitecan generate a daily e-mail to owners about their teams, including a boxscore of what the players did last night, and a list of any news stories on those players in the past 24 hours. This job usually runs at about 4:00 AM EDT. By default, you’d get both player stats and news, but you can opt out entirely, or ask to get only the boxscores from the above page.

If you’ve checked “Show e-mail to league members, then in addition to seeing your name under your team as an owner, league members viewing your roster, like this:

Roster page

People viewing the roster who are not league members will see neither your e-mail or your name – clicking on the image goes to the same page, but since most readers likely aren’t in that league, they won’t see my name or e-mail.

By default, the site will not show your e-mail at all, and it will only show the name from your profile to people with teams in the same league. So you’d have to opt in to let other league members see your e-mail.

Posted in RotoValue | Comments Off on RotoValue UserProfile and e-mail Settings

Minor League Data Now Available on RotoValue!

I’m happy to report that I’m now receiving minor league (and often foreign league) data from the Chadwick Baseball Bureau.

Subscribers to RotoValue Analyst now can see minor league, fall, winter, and many foreign league statistics on RotoValue Player Detail pages. So you now don’t need to go to some other site to find minor league data on rookies, recent call-ups, or, well, pretty much anybody. For example, here’s a page for young Blue Jays’ second baseman Ryan Goins:

RyanGoinsThe league’s level is in parentheses. In addition to the standard A, AA, and AAA classifications, here are some other levels you might see:
Fal – A fall league, like the Arizona Fall League

Fgn – A foreign league, like Korean Baseball Organization or the Australian Baseball League

FgW – A foreign winter league, like the Venezuelan Winter League

FRk – A foreign rookie league, like the Dominican Summer League

Ind – An independent league, like the Northern League or the Atlantic League

Jpn – A Japanese major league, like the Japan Central League

Rk – A rookie league, like the Appalachian League

People probably have seen Masahiro Tanaka’s Japanese stats, but now RotoValue Analyst subscribers can get this data, and more, directly on RotoValue player pages.

RotoValue Analyst is just $10, giving you access to customized pricing for any or all of your RotoValue leagues, in addition to spring training data, customized category weighting. You can by RotoValue Analyst at the RotoValue Store!

 

Posted in Major League Baseball, RotoValue | Comments Off on Minor League Data Now Available on RotoValue!

Another 2014 Projection Update…

I’ve done another forecast run, incorporating new injury information, like the recent UCL tear for David Hernandez, which unfortunately probably will end his season, and drops the Diamondbacks down a notch in my team totals.

In addition, I’ve been tweaking how I deal with players with very limited MLB data. Now I will consider current year spring training numbers for players with very little MLB experience, in addition to that tiny MLB experience. Alas, I still don’t have minor league numbers to toss into the soup!

The driver for this was what I felt was a very overly optimistic projection for James Paxton, who was showing up at nearly 200 innings. Interestingly, adding this year’s minor league stats to the 24 innings he had last season did little to change his rate stats; indeed Paxton’s FIP actually went down by adding the spring numbers. But his innings dropped a lot based on a more recent run. Why? Because the Mariners have named fellow rookie lefty Roenis Elias as their #4 starter, and the latest depth chart no longer includes Hisashi Iwakuma, who is likely to start the year on the DL. Iwakuma still projects to over 150 IP in my model, but adding a new starter to the mix sops up a lot of the extra innings the model was giving to Paxton before. Indeed newcomer Elias has pitched even better this spring than Paxton. Both are potential sleeper candidates based on their current roles.

Continue reading

Posted in Major League Baseball, Projections, Sabermetrics | Comments Off on Another 2014 Projection Update…