1. #1
    Thremp
    Thremp's Avatar Become A Pro!
    Join Date: 07-23-07
    Posts: 2,067

    Kelly Criterion for Correlated Wagers

    I'm having trouble managing to implement Kelly Criterion for wagers that are correlated such as Basic Strategy Teasers. If I bet Kelly units... How would I allocate my bankroll from ranging from 2-6 teamers each weekend?

  2. #2
    tacomax
    SBR Problem Poster 2007-08
    tacomax's Avatar Become A Pro!
    Join Date: 08-10-05
    Posts: 9,619
    Betpoints: 1167

    I've just paged Ganchrow for you.

  3. #3
    Thremp
    Thremp's Avatar Become A Pro!
    Join Date: 07-23-07
    Posts: 2,067

    Quote Originally Posted by tacomax View Post
    I've just paged Ganchrow for you.
    Heh. Maybe I should've just PMed him.

    I've looked into it a shade. Would be interested in any ideas for approximations as well. I came up with some rough figures, but would atleast like a second opinion before I move forward with my bastardized math.

  4. #4
    bigboydan
    bigboydan's Avatar Become A Pro!
    Join Date: 08-10-05
    Posts: 55,425

    Quote Originally Posted by tacomax View Post
    I've just paged Ganchrow for you.
    I was gonna say I would have if you didn't already do it.

  5. #5
    Ganchrow
    Nolite te bastardes carborundorum.
    Ganchrow's Avatar Become A Pro!
    Join Date: 08-28-05
    Posts: 5,011
    Betpoints: 1088

    Quote Originally Posted by Thremp View Post
    I'm having trouble managing to implement Kelly Criterion for wagers that are correlated such as Basic Strategy Teasers. If I bet Kelly units... How would I allocate my bankroll from ranging from 2-6 teamers each weekend?
    There's no simple closed-form solution to this problem.

    In the case of 3 candidates, with win probabilities p1, p2, and p3, and teasers that payout at decimal odds of o2 for 2-team parlays and o3 for 3-team parlays, utility as a function of the weightings of the three 2-team teasers (x12, x13, x23) and the one 3-team teasers would look like this:

    U(x12,x13,x23,x123) =
    p1*p2*p3*log(1+(o2-1)*(x12+x13+x23) + (o3-1)*x123) +
    p1*p2*(1-p3)*log(1+(o2-1)*x12 - x13 - x23 - x123) +
    p1*p3*(1-p2)*log(1+(o2-1)*x13 - x12 - x23 - x123) +
    p2*p3*(1-p1)*log(1+(o2-1)*x23 - x13 - x12 - x123) +
    [p1*(1-p2)*(1-p3) + p2*(1-p1)*(1-p3) + p3*(1-p1)*(1-p2) + (1-p1)*(1-p2)*(1-p3)]
    *log(1-x12 - x13 - x23 - x123)

    U is then of course maximized with respect to (x12, x13, x23, x123) ≥ 0 subject to the budget constraint of x12 + x13 + x23 + x123 ≤ 1. Similar logic would be used given a larger number of underlyings and larger teaser sizes.

    It bears mentioning that this process is identical to that which would be used to determine any simultaneous bet staking with fixed parlay odds and the weightings on 1-team parlays constrained to zero.

    As I said, there's no simple closed-form solution to the problem, but a numeric solution can be easily obtained computationally using an optimization package such as Excel Solver.

    Using Excel Solver and assuming a 72% win probability for each teaser leg and payout odds for 2-6 team teasers of +100, +180, +300, +465, +750, respectively, one finds that the full-Kelly stake for each of the fifteen 2-team teasers would be 0.5666% of bankroll, the full-Kelly stake for the one 6-team teaser would be 1.3224% of bankroll, with all other full-Kelly teaser stakes at zero. For fifth-Kelly, the 2-team and 6-team stakes would be 0.1160% and 0.2322%, respectively, with all other stakes zero. Results were identical (and much more quickly obtained) using both MINOS and IPOPT, two considerably more robust (and freely available) nonlinear optimization engines.

  6. #6
    rjp
    rjp's Avatar Become A Pro!
    Join Date: 07-17-06
    Posts: 39

    Quote Originally Posted by Ganchrow View Post
    Results were identical (and much more quickly obtained) using both MINOS and IPOPT, two considerably more robust (and freely available) nonlinear optimization engines.
    Just how fast do these run? I'm using a library with built in optimization algorithms that seem to converge quickly, and I only run into trouble if I've got a large number of bets such that it takes a long time to build the function to maximize.

    Lets say 10 simultaneous wagers... how long does it take to maximize the growth function?

  7. #7
    Ganchrow
    Nolite te bastardes carborundorum.
    Ganchrow's Avatar Become A Pro!
    Join Date: 08-28-05
    Posts: 5,011
    Betpoints: 1088

    Quote Originally Posted by rjp View Post
    Just how fast do these run? I'm using a library with built in optimization algorithms that seem to converge quickly, and I only run into trouble if I've got a large number of bets such that it takes a long time to build the function to maximize.

    Lets say 10 simultaneous wagers... how long does it take to maximize the growth function?
    Obviously, convergence time will will depend on among other things, the degree of correlation, but in general it will handle 10 simultaneous events in a under a few seconds.

    11 or 12 wagers is where it tends to really slow down, to the point where I can't even get it to run with the available memory (without making numerous dubious approximations in the utility curvce) for 13 or more simultaneous events.

  8. #8
    rjp
    rjp's Avatar Become A Pro!
    Join Date: 07-17-06
    Posts: 39

    Interesting. Any idea what they're using to perform the optimization?

    The algorithms I was using to maximize the growth function are terrible when I try to apply something other than an even money bet, so I'm now working on a solution using simulated annealing to see if I have more success.

  9. #9
    DrunkenLullaby
    DrunkenLullaby's Avatar Become A Pro!
    Join Date: 03-30-07
    Posts: 1,631

    Quote Originally Posted by Thremp View Post
    How would I allocate my bankroll from ranging from 2-6 teamers each weekend?
    I would start by allocating $0 to the Jazzette family of books.

  10. #10
    Ganchrow
    Nolite te bastardes carborundorum.
    Ganchrow's Avatar Become A Pro!
    Join Date: 08-28-05
    Posts: 5,011
    Betpoints: 1088

    Quote Originally Posted by rjp View Post
    Interesting. Any idea what they're using to perform the optimization?

    The algorithms I was using to maximize the growth function are terrible when I try to apply something other than an even money bet, so I'm now working on a solution using simulated annealing to see if I have more success.
    The IPOPT algorithm uses "primal-dual path-following interior point methods".

    "For problems with nonlinear constraints, MINOS uses a sparse SLC algorithm (a projected Lagrangian method, related to Robinson's method). It solves a sequence of sub problems in which the constraints are linearized and the objective is an augmented Lagrangian (involving all nonlinear functions). Convergence is rapid near a solution."

  11. #11
    bigboydan
    bigboydan's Avatar Become A Pro!
    Join Date: 08-10-05
    Posts: 55,425

    Quote Originally Posted by DrunkenLullaby View Post
    I would start by allocating $0 to the Jazzette family of books.
    Ain't that the truth.

    Most people don't even like to talk about who accepts correlated parlays on the forums in fear they might ruin it for them.

  12. #12
    RickySteve
    SBR is a criminal organization
    RickySteve's Avatar Become A Pro!
    Join Date: 01-31-06
    Posts: 3,415
    Betpoints: 187

    The original post is talking about related simultaneous wagers, not correlated parlays.

  13. #13
    Micturition Man
    Micturition Man's Avatar Become A Pro!
    Join Date: 04-14-09
    Posts: 10

    Bump.

    I understand the method Ganchrow provides here, but I find simply writing up the function in Excel (OpenOffice actually) to be really tough. Even a test case using 4 teams with different cover probabilities and allowing only for 3 team teasers took me forever to correctly input. Getting it right for 9 teams with 3 and 4 team teasers available seems like a nightmare.

    Does anyone have some solver functions written up they would be willing to share?

  14. #14
    Pancho sanza
    Pancho sanza's Avatar Become A Pro!
    Join Date: 10-18-07
    Posts: 386

    Quote Originally Posted by Micturition Man View Post
    Bump.

    I understand the method Ganchrow provides here, but I find simply writing up the function in Excel (OpenOffice actually) to be really tough. Even a test case using 4 teams with different cover probabilities and allowing only for 3 team teasers took me forever to correctly input. Getting it right for 9 teams with 3 and 4 team teasers available seems like a nightmare.

    Does anyone have some solver functions written up they would be willing to share?
    That shouldn't be that hard.

    You can make 4 different 3 team teasers, each team will appear 3 times.

    What you want to figure out is what bet size for each teaser maximizes the log growth of your bankroll.

    List all the possible scenarios for the 4 different teasers and theyre payoff, one would be all teams cover the teaser (all teasers win) and another would be 2 or more teams lose (all teasers lose). The other scenarios would be where 3/4 teams cover , in which case 1 teaser would win.

    All the probablities will add to 1, list the ending bankroll under each scenario, calculate the log under each, (probability scenario 1 X log X ending bankroll), sum all these, then have solver maximize this # by filling in bet size amounts.

  15. #15
    Micturition Man
    Micturition Man's Avatar Become A Pro!
    Join Date: 04-14-09
    Posts: 10

    Quote Originally Posted by Pancho sanza View Post
    That shouldn't be that hard.

    You can make 4 different 3 team teasers, each team will appear 3 times.

    What you want to figure out is what bet size for each teaser maximizes the log growth of your bankroll.

    List all the possible scenarios for the 4 different teasers and theyre payoff, one would be all teams cover the teaser (all teasers win) and another would be 2 or more teams lose (all teasers lose). The other scenarios would be where 3/4 teams cover , in which case 1 teaser would win.

    All the probablities will add to 1, list the ending bankroll under each scenario, calculate the log under each, (probability scenario 1 X log X ending bankroll), sum all these, then have solver maximize this # by filling in bet size amounts.

    Yeah I know how to solve the problem, the difficulty is just managing all the inputs when you have say 10 teaser legs, each of which has a different cover rate. I may just be bad at using spreadsheets but I find it to be a huge chore.

  16. #16
    Thremp
    Thremp's Avatar Become A Pro!
    Join Date: 07-23-07
    Posts: 2,067

    MM,

    I spoke to TomG about this this past weekend. He advised using the King Yao method. YMMV.

  17. #17
    Micturition Man
    Micturition Man's Avatar Become A Pro!
    Join Date: 04-14-09
    Posts: 10

    Thrempster -

    I scoured 2+2 for posts by King Yao including "teaser*" and posts by Thremp including "King Yao".

    Quality reading but I still haven't figured out what the King Yao method is . Please to explain?

  18. #18
    RickySteve
    SBR is a criminal organization
    RickySteve's Avatar Become A Pro!
    Join Date: 01-31-06
    Posts: 3,415
    Betpoints: 187

    He's a feel player.

  19. #19
    Thremp
    Thremp's Avatar Become A Pro!
    Join Date: 07-23-07
    Posts: 2,067

    Quote Originally Posted by Micturition Man View Post
    Thrempster -

    I scoured 2+2 for posts by King Yao including "teaser*" and posts by Thremp including "King Yao".

    Quality reading but I still haven't figured out what the King Yao method is . Please to explain?

    RickySteve is correct. He position sizes based on his whims and personal feelings. Though to be fair I do this for teasers to a degree as I don't have the resources to quantify each leg, nor would I bother to do this. Much less plug them all into a formula and then scour the internetz to pick up every 9 or 8.5 I could find.

    You can do some quick and dirty assumptions with half Kelly and go from there.

  20. #20
    pharlap
    pharlap's Avatar Become A Pro!
    Join Date: 09-19-12
    Posts: 1

    The weightings for 2-6 team parlays (or teasers) make intuitive sense. One would never trade "up" from a n to an n+k team parlay unless one got better odds on the individual legs. So, we can reject the 3 and 5 team parlays. The 2 and 4 team parlays have the same odds for individual legs, so it's variance reducing to do them as a set of 2-team parlays. Finally, the 6 team parlays offer the best odds for the individual legs, so it's optimal to have some weight on those.

    My questions is: is the algorithm faster with large numbers of wagers if you assign zero weights to n-team parlays where there is an n-k team parlay that has equal or better odds for the individual legs? So in the 6-team case, you could just solve for 6c2+1 weights (setting the rest to zero).

  21. #21
    MonkeyF0cker
    Update your status
    MonkeyF0cker's Avatar Become A Pro!
    Join Date: 06-12-07
    Posts: 12,144
    Betpoints: 1127

    Quote Originally Posted by pharlap View Post
    The weightings for 2-6 team parlays (or teasers) make intuitive sense. One would never trade "up" from a n to an n+k team parlay unless one got better odds on the individual legs. So, we can reject the 3 and 5 team parlays. The 2 and 4 team parlays have the same odds for individual legs, so it's variance reducing to do them as a set of 2-team parlays. Finally, the 6 team parlays offer the best odds for the individual legs, so it's optimal to have some weight on those.

    My questions is: is the algorithm faster with large numbers of wagers if you assign zero weights to n-team parlays where there is an n-k team parlay that has equal or better odds for the individual legs? So in the 6-team case, you could just solve for 6c2+1 weights (setting the rest to zero).
    Yes. Of course, the algorithm would be faster (assuming that you're getting true odds parlays). You're eliminating quite a few variables in convergence. Ganch and I had some discussions on efficiently optimizing parlays such as this in another thread. I don't recall where it was though. If you search for SNOPT and MINOS, you should find it. It may give you some insight.

    Eliminating combinations would not be applicable to teasers at most places, however.

Top