prokopyshen.com - Blog
http://prokopyshen.com/Blog
enRound1 Unlimited Time Play : Good Deal or Not?
http://prokopyshen.com/Round1-Credit-Charges
<div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><p><a href="http://www.round1usa.com">Round1 Bowling and Amusement</a> is a fun place with lots of ways to spend some time… and your money!</p>
<p> </p>
<p>During a recent visit, I wondered when does it make sense for an arcade/game player to play using “Unlimited Time Play” versus playing by game credits. There is a lot of factors to consider here, but here is my perspective.</p>
<p> </p>
<p>This calculation is based on <a href="/images/Round1_Credit_Charges.jpg">charges</a> I saw posted on October 27, 2017 at the Round1 nearest me. Your location may have different rates. But I will show you how do this step by step so you can determine this for your situation.</p>
<p> </p>
<p>First, I am going to assume that you are a frequent player and that you signed up for the “Club Card” which costs $5 per year as of today. I will ignore that $5 to keep things simple.</p>
<p> </p>
<p>Let’s look at the cost of game credits first. At my location, the sign said the “Best Value” was to purchase 150 credits which costs $29 with the “Club Card”. That works out to $29/150 = $0.193 per credit. </p>
<p> </p>
<p>(Not sure how Round1 determined that $29 per 150 credits is the “Best Value”. The $49 for 260 credit = $0.188 as well as the $99 for $530 = $0.187 credits work out to be less cost, but lets just trust Round1 for the moment and move on).</p>
<p> </p>
<p>Now suppose your favorite arcade game requires 4 credits to play and that typically you get 7 minutes of play time on the machine for those credits. If you were to play for 70 minutes, you would play 70/7 = 10 rounds. This would require 10*4 =40 credits. Your total cost for this period would be $0.193 * 40 = $7.73 .</p>
<p> </p>
<p>You may ask why did I pick 70 minutes? Because if you play Mon-Thu with a Club Card, you can purchase 70 minutes of Unlimited Time Play for $8 at my location.</p>
<p> </p>
<p>So, with the above assumptions, if your average time per round on a 4 credit machine is 7 minutes or more, it makes more sense to play using credits. But, if your average time per round is less then 7 minutes, it makes more sense to play using unlimited time play assuming you don’t mind playing back-to-back games for 70 minutes.</p>
<p> </p>
<p>Here is an <a href="/images/Round1_Credit_Charges.xls">Excel spreadsheet</a> you can use to determine where the break-even period is for Round1 rates. I hope you have as much fun at Round1 as I do !</p>
<p> </p>
</div></div></div><div class="field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Tags: </h3><ul class="links"><li class="taxonomy-term-reference-0" rel="dc:subject"><a href="/taxonomy/term/42" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Mathematics</a></li><li class="taxonomy-term-reference-1" rel="dc:subject"><a href="/Blog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Blog</a></li></ul></div>Sat, 28 Oct 2017 11:03:54 +0000Richard56 at http://prokopyshen.comReview : Stanford University Andrew Ng’s Machine Learning course at Coursera
http://prokopyshen.com/coursera-machine-learning
<div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><p>I found this online course to be interesting, challenging, practical and it gave me some fresh ideas about problem solving using numerical methods.</p>
<p><u>What I liked most:</u></p>
<p>1) The lecture videos directly tied into the programming exercises. You had a chance to directly try out what you just learned by programming it.</p>
<p>2) The automatic scoring/review of your programming assignments with the submit script was a great way to get instant feedback.</p>
<p>3) I was never bored listening to Andrew talk. He worked very hard in making this material.</p>
<p>4) In the early sessions, there is quite a bit of linear algebra theory, and more importantly, some calculus of matrices. This is advanced math, so I found it interesting to see how Andrew handled this.</p>
<p> </p>
<p><u>What I wish was different:</u></p>
<p>1) The course uses Octave/Matlib which is no doubt a great tool, but not one that I am likely to use much given my long time experience with python. He devotes some time early in the course to explain his selection, but I could still wish it used python with scikit-learn.</p>
<p>2) Some of quiz questions just didn’t make sense to me even though I tried my best. At a certain point, I had to settle for a passing score rather then trying to repeat until perfect.</p>
<p>3) While I completed all the programming exercises and quizzes myself using only course provided materials, I am sure that everything needed to ace the course could be found via google. This may take away from the final value of the certificate.</p>
<p> </p>
<p><u>Summary</u></p>
<p>I have already been using my new skills in my interest in quant programming. I would recommend this course to anyone who wants to get familiar with machine learning in a practical and hands-on manner.</p>
<p> </p>
<p> </p>
</div></div></div><div class="field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Tags: </h3><ul class="links"><li class="taxonomy-term-reference-0" rel="dc:subject"><a href="/taxonomy/term/42" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Mathematics</a></li><li class="taxonomy-term-reference-1" rel="dc:subject"><a href="/taxonomy/term/45" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Quant</a></li><li class="taxonomy-term-reference-2" rel="dc:subject"><a href="/Blog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Blog</a></li></ul></div>Thu, 26 Oct 2017 11:30:47 +0000Richard55 at http://prokopyshen.comGoing Pro : The Mathematics of being a Full time Daily Fantasy Player like Condia
http://prokopyshen.com/Going-Pro-The-Mathematics-of-being-a-Full-time-Daily-Fantasy-Player-like-Condia
<div class="field field-name-field-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="og:image rdfs:seeAlso" resource="http://prokopyshen.com/sites/default/files/styles/large/public/field/image/leaderboard.jpg?itok=seX7G3uL"><img typeof="foaf:Image" src="http://prokopyshen.com/sites/default/files/styles/large/public/field/image/leaderboard.jpg?itok=seX7G3uL" width="480" height="306" alt="fanduel leaderboard december 2013" /></div></div></div><div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><p>Like the 40+ US State Attorney Generals, prokopyshen.com believes that playing Daily Fantasy games involves skill – meaning it is not a game of chance or gambling. So if you are doing good and like the work, what does it take to “Go Pro”?<br />
<br />
In this <a href="/node/27">post</a>, we discussed at length why Daily Fantasy sites use a Salary Cap to stay in business by being able to demonstrate the games they offer are one of skill. Today, let us assume that legendary Daily Fantasy player Condia is both skilled and is a fulltime player. We will use the data from the Fanduel Leader board, make some assumptions about what a “Pro” should aim for in winning percentage and look at the results as an aid to those who wish to be a ”Daily Fantasy Pro”.<br />
<br />
I would think it would be difficult for even the most casual Daily Fantasy Player at a site like fanduel.com not to become aware of player Condia. His presence in almost every game I have played, the number of times this user is referenced in internet forums and chat rooms along with the reputation that was earned with [google this] the “Condia rule” that has been implemented at other sites would be hard to miss.<br />
<br />
So, let us assume that Condia is a full time Daily Fantasy player. If we set aside bonus and frequent-player reward factors, to just break even in Fanduel playing 50/50 or head-to-head contests with the 10% rake, you need to win 55.6% of the time. This is done by solving for X in the equation (X*1.8) – X = 0, which is X= (1/1.8)=0.556.<br />
<br />
Of course, you can’t feed your family just by breaking even. So let’s assume that you are able to consistently make a 10% return on your cash flow investment. Your winning percentage now has to be (X*1.8) – X = 0.1, which is X=1.1/1.8=0.611. This means that of all the people who walk in the “50/50” or head to head game door, you believe that with your level of skill you can win 61.1% of the time. Let’s assume this as a bare minimum rate of success to be a full time Daily Fantasy player like we have assumed Condia to be.<br />
<br />
As of this writing, looking at the fanduel.com leader board results for Condia, we can see that this user won 12813 games in September 2013, 9010 games in October, 30711 games in November and 31,891 games in December. Averaging that four month sample suggests an average wins of 21,106 per month.<br />
<br />
Using our assumed success rate of 61.1%, this would require entry in 21,106/0.611 = 34,543 games. All of the Daily Fantasy sites that I am aware of have Terms of Service that ban robots, so just clicking the “Enter Game” button 34,543 times per month translates to about 1100 game entries each and every day in a month. This alone has to be full time job, so keep that in mind when deciding if you are ready to “Go Pro”.<br />
<br />
Let’s make our next assumption that on average, Daily Fantasy player Condia is entering 50/50 games or head-to-head with a $5 entry fee. This is very conservative but I have no knowledge of his involvement in high stakes games that are offered. We will simplify further our analysis to assume that Condia is playing daily even though some contests like the NFL are essentially offered on a weekly basis. <br />
<br />
The deposit requirement to play 1100 games with a $5 entry fee is $5 x 1100 = $5500. We expect to win 61.1 % of these games, giving us a daily return of 1100 * 0.611 * $5 * 1.8 = $6048. Checking our arithmetic, we can see our 10% return on investment ($6048/$5500= 1.100) is as expected. Our rate of profit is $6048-$5500=$548 per day, which should help pay the bills as this is about $200k per year.<br />
<br />
But, <a href="http://en.wikipedia.org/wiki/Category:Shakespearean_phrases" target="_blank">there is a rub</a>. There will be good days and bad days, meaning streaks of wins and losses. You will need a much larger bank role to survive the dips. The mathematics of selecting the optimal bet size are covered <a href="/Daily-Fantasy-Sports-Risk-Management--Use-the-Kelly-Criterion-bet-size">here</a>. As a general rule, your bet should be selected on the basis of wagering only what you can afford to lose, which conservatively should be 15% to 20% of your funds available. This means having $5500/0.15 = $36,667 easily accessible, but not necessarily on deposit. You (or your syndicate) need to plan on the basis that it may be necessary to advance several thousand dollars on short notice to the daily fantasy site to stay on track. Even with these conservative assumptions, it would take some steady nerves to play through 4 or more days of losses.<br />
<br />
As well, having this extra balance on hand reduces your rate of return. We had originally aimed at 10% return on investment per day, but the increased balance requirement to cover streaks reduces this to $548/$36,667 = 1.49% per day. However, be assured that this is a truly exceptional rate of return when considered on an annual basis. (Exercise is left to the reader to work out what the stunning annual rate of return 1.49% per day is).<br />
<br />
It would be a disservice to not note that you can also be assured that playing at this level will also draw attention from your Daily Fantasy site. At a minimum, you should expect to be assigned your own customer service representative who is available 7x24 who will encourage you to call if you have any questions along with a reserved VIP direct toll-free number to an operations desk with no-hold time warm transfers should you encounter any technical problems while using the site.<br />
<br />
Why is this? Assume that each of the 1100 five dollar “50/50” games you are playing in has 50 players. The “rake” to the Fantasy Site from these games is 1100 * $5 * 50 * 0.10 = $27,500 per day. You are now a key part of a non-trivial cash stream to the site, and just as importantly, you are an identifiable skilled player which is essential should the day come when a call comes in from a US State Attorney General office asking if you are offering a game of chance or skill.<br />
<br />
To summarize, what does it take to play Daily Fantasy to be in the same league as Condia? First, you need to track your ability to win games and you should be looking at a minimum win rate well over 61%. You need to have a deposit balance of about $6K at your site and short term access to about $36k to cover bad times. You need to have the stamina to enter literally hundreds of contests every day and be comfortable with a total daily entry fee of over $5k per day. Beyond this, you have to track the sport itself by watching games, listening to sports channels, reading news and social media feeds and digesting the ambiguity of injury reports each and every day. If you meet all of these criteria and are successful, you will be well down the path to a yearly income of $200k per year.<br />
<br />
You may also be interested in my series on the mathematics behind picking the optimal daily fantasy teams <a href="/Daily-Fantasy-Sports-team-optimizing-NFL-Football-Mathematics-Part-1">Part1</a> <a href="/Daily-Fantasy-Sports-team-optimizing--NFL-Football-Mathematics-Part-2">Part2</a> <a href="/Daily-Fantasy-Sports-team-optimizing--NFL-Football-Mathematics-Part-3--The-Ladder-Line">Part3</a> and <a href="/Daily-Fantasy-Sports-team-optimizing-NFL-NBA-Mathematics-Part-4-Using-VORP-Value-Over-Replacement-Player">Part4</a> .<br />
<br />
Click <a href="/Condia-back-for-2014-Fanduel-season">here</a> to read more fun return analysis for full time Pro players.<br />
Happy Picking!<br />
</p>
</div></div></div><div class="field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Tags: </h3><ul class="links"><li class="taxonomy-term-reference-0" rel="dc:subject"><a href="/Blog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Blog</a></li><li class="taxonomy-term-reference-1" rel="dc:subject"><a href="/taxonomy/term/39" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Daily Fantasy</a></li><li class="taxonomy-term-reference-2" rel="dc:subject"><a href="/taxonomy/term/42" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Mathematics</a></li></ul></div>Fri, 30 Sep 2016 22:33:14 +0000Richard32 at http://prokopyshen.comDaily Fantasy Sports team optimizing - NFL Football Mathematics Part 1
http://prokopyshen.com/Daily-Fantasy-Sports-team-optimizing-NFL-Football-Mathematics-Part-1
<div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><p>Daily Fantasy Sports just seems to get hotter every week. prokopyshen.com agrees with the 40+ State Attorney Generals that it is a game of skill. To win you need to identify lopsided matchups, pick players who are hot, read and evaluate team injury reports, grasp how your fantasy site weights the stats and in general be a fan of the game. There are lots of sites and twitter feeds that follow each sport in detail to help you with all of these.<br />
<br />
But there is one more critical factor in daily fantasy sports that this article addresses: Daily Fantasy Mathematical Strategy. You really need to understand the value of any player in the context of the salary that the daily fantasy site has assigned that player. You will have to pick a team that meets a salary cap which means picking a team that generates the most scoring points per dollar you have control over.<br />
<br />
This article will look at one site and sport - <a href="http://fanduel.com" target="_blank">FanDuel.com</a> NFL - and outline some of the mathematics of selecting the optimal team of players within a salary cap. It is more complex than it appears.<br />
<br />
We will use FanDuel.com $60K NFL games as our example as it is very popular. Most fantasy sites and sports are similar. FanDuel assigns every player on every NFL team a salary, and you have to pick a team of 9 players staying under a salary cap of $60K. As of this writing, the rules require that you pick a team with 1 QB (Quarterback), 2 RB (Running Back), 3 WR (Wide Receiver), 1 TE (Tight End), 1 K (Kicker) and pick a D (defense team) for a total of 9 selections. This means you have to visit 6 markets and pick a total of 9 players while spending no more then $60K.<br />
<br />
The first constraint to be aware of is that there is a floor salary for every position. In the FanDuel NFL example, the "minimum wage" for a QB is $5000. You must name a QB, so this means that $5000 is required just to play the game with a QB. The floor salary for K and D is also $5000 while RB, WR and TE can be available for just $4500. Lets add that up: (3 * $5000) + (6 * $4500) = $42,000. We must spend $42000 just to enter the game. This is a really important point - your fantasy team picking skills only have control over the remainder : $60K - $42K = $18K .<br />
<br />
As of this writing, FanDuel prices players at the $100 dollar increment. So, you really have only 180 $100 bills to spend, and to play this game means selecting 9 items from 6 markets with those 180 benjamins. Sounds easy, right?<br />
<br />
Fantasy Sports player value is the concept that you will get scoring points in exchange for the 180 $100 bills you can control. Lets define value as Fantasy points per $100 bill. Example: You pick a QB with a salary of $8000 and he generated 15 fantasy points. You really just made a decision to spend 30 of your $100 bills ( $8000 - base salary = $8000 - $5000 = $3000 / $100 = 30). Your Fantasy Sport value is 0.50 points per $100 ( 15 points / 30 = 0.50). <br />
<br />
Let's compare your purchase to your buddy who picked a different QB who cost a lot less but didnt generate quite as many points: say $7000 and 12 points. Your buddy may have done better by getting 0.60 points per $100, as the value calculation is ( 12 points / (7000 - 5000) = 12 /20 = 0.60 points per $100).<br />
<br />
Why is it that your buddy may have done better by getting 0.60 points per $100 versus your choice that returned only 0.50 points per $100? Because he spent less - effectively only $2000 and you spent $3000 . Your buddy has $1000 more then you to spend in markets other then quarterbacks then you do. Your buddy had a higher return (0.60 verus 0.50) then you did. If he can spend the extra $1000 to advantage on other positions, he will be in a better position. This is why it is called value based drafting.<br />
<br />
Key point : When you have a choice, always pick players with the highest potential fantasy points per effective salary that you can afford. Be aware of the salary floor and divide out what you think the points per salary return will be. <br />
<br />
In <a href="/node/26">part 2</a>, we will look a real example.<br />
<br />
If you have comments or suggestions on this, please <a href="/ContactMe">ContactMe</a> . Good picking !<br />
<br />
</p>
</div></div></div><div class="field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Tags: </h3><ul class="links"><li class="taxonomy-term-reference-0" rel="dc:subject"><a href="/Blog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Blog</a></li><li class="taxonomy-term-reference-1" rel="dc:subject"><a href="/taxonomy/term/39" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Daily Fantasy</a></li><li class="taxonomy-term-reference-2" rel="dc:subject"><a href="/taxonomy/term/40" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Football</a></li><li class="taxonomy-term-reference-3" rel="dc:subject"><a href="/taxonomy/term/42" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Mathematics</a></li></ul></div>Sun, 18 Sep 2016 19:26:34 +0000Richard25 at http://prokopyshen.comDaily Fantasy Sports team optimizing - NFL Football Mathematics Part 2
http://prokopyshen.com/Daily-Fantasy-Sports-team-optimizing--NFL-Football-Mathematics-Part-2
<div class="field field-name-field-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="og:image rdfs:seeAlso" resource="http://prokopyshen.com/sites/default/files/styles/large/public/field/image/D_Table.jpg?itok=HB98prAk"><img typeof="foaf:Image" src="http://prokopyshen.com/sites/default/files/styles/large/public/field/image/D_Table.jpg?itok=HB98prAk" width="329" height="413" alt="" /></div></div></div><div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><p>In Daily Fantasy Strategy <a href="/node/25">part 1</a>, we described that when you have a choice, always pick players with the highest potential fantasy points per (salary - floor) that you can afford. Be aware of the salary floor and divide out what you think the points per effective salary return will be.</p>
<p> </p>
<p>Above we have a table showing this calculation for NFL teams that have generated at least 8 fantasy points per game. The Fantasy Salary is converted to a token to highlight what you have control over by subtracting the floor salary and dividing by 100. The value calculation is then fantasy points per token.</p>
<p> </p>
<p>Graphing Fantasy Points per Salary token demonstrates this point:</p>
<p><img alt="" src="/images/D_Graph.jpg" /></p>
<p> </p>
<p>In this graph, we are showing on the vertical Y axis the average fantasy points created by NFL Defenses as of this writing. The average is a good starting point, but a Fantasy pro will alter and adjust that based on study of the upcoming game. In any fantasy sport, the first team or player to seriously consider selecting is one with the highest potential fantasy point generation. From the graph and table, we can see that this is KC. No other team has higher points (17.86). Later, we will determine if we can afford this team.</p>
<p> </p>
<p>Make the first selection for every position on your team using the method. It is almost guaranteed that you will be over the salary cap when you are done. Now, use the knowledge of value (fantasy points per (salary minus floor) to guide you in filling your team with lower cost options. In the above graph and table, your second choice should be DAL (11.86 points and 3 Salary tokens). You could be asking why not SF? The answer is that SF costs a lot more ($1500 = 15 Tokens x $100) and the average points is lower (10.71 points). The value of DAL is 3.952 Points per $100 while KC is just 0.714.</p>
<p> </p>
<p>What if you still cant afford to spend another $300 ? The fourth choice would be ARI at 9.71 points at just $100 with a value of 9.714. No other team on the table or graph offers more points at this salary point. This is the basis of value based drafting.</p>
<p> </p>
<p>If for some reason, you cant afford any salary for this role and want to evaluate what you get for Free (= 0 Salary Tokens), then by the numbers the choice to make is BUF at 9.43 points at zero effective salary. The value calculation would be infinite because of the divide by zero, but it is easier to think of this as a special case. You will usually see a bunch of selections at the zero rate and they will be closely grouped. In practice, you would want to evaluate BUF, WAS, MIN and CLE for other factors prior to making a selection.</p>
<p> </p>
<p>See <a href="/node/28">Daily Fantasy Sports team optimizing – Fanduel NFL Football Mathematics Part 3</a> - The Ladder Line for how to use this as the basis of forming your team.</p>
<p> </p>
<p>See <a href="/node/27" target="_blank">Why sites need a salary cap</a> for more guidance on other factors that can impact player value.</p>
<p> </p>
<p>If you have comments or suggestions on this, please <a href="/ContactMe">ContactMe</a> . Good picking !</p>
<p> </p>
</div></div></div><div class="field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Tags: </h3><ul class="links"><li class="taxonomy-term-reference-0" rel="dc:subject"><a href="/Blog" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Blog</a></li><li class="taxonomy-term-reference-1" rel="dc:subject"><a href="/taxonomy/term/39" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Daily Fantasy</a></li><li class="taxonomy-term-reference-2" rel="dc:subject"><a href="/taxonomy/term/40" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Football</a></li><li class="taxonomy-term-reference-3" rel="dc:subject"><a href="/taxonomy/term/42" typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">Mathematics</a></li></ul></div>Sun, 18 Sep 2016 17:57:35 +0000Richard26 at http://prokopyshen.com