Loading [MathJax]/jax/output/HTML-CSS/jax.js

The Kelly criterion

Arvid Kingl

2019-09-03

The Kelly criterion

The Kelly criterion optimises the expected return on a series of identical, sequential bets. The criterion gives the ideal ratio of the bank roll that should be placed on a bet.

If a single bet has a positive outcome with objective probability p and a negative outcome with probability q=1p, then the Kelly criterion is given by κ=αwpαlqαwαl, where αw is the multiplies of the amount of stake that is won in the case of a win and αl the amount proportional to the stake that is lost. Many exchanges, such as Betfair, use the decimal odds system. When backing a selection in the decimal system, the losing amount is the stake itself, so αl=1, and the winning multiplier is the quoted price P1. Additionally, commisions are typically proportional to winnings, which further reduce the potential winnings.

The kelly_back_dec and kelly_lay_dec functions allow for a quick calculation of the Kelly criterion given the true probability, the quoted price and a commision percentage.

library(RKelly)

# A bet to back at price 2.1 and objective probability of 0.5 and 5% commision
kelly_back_dec(price = 2.1, p=0.5, commision_rate = 0.05)
#> [1] 0.0215311

The same applies for lay bets where αw=1 and αl=P1.

# A bet to lay at price 1.9 and objective probability of 0.5 and 5% commision
kelly_lay_dec(price = 1.9, p = 0.5, commision_rate = 0.05)
#> [1] 0.02923977

A negative Kelly criterion means that the bet is not favored by the model and should be avoided.

kelly_back_dec(price = 1.9, p=0.5, commision_rate = 0.0)
#> [1] -0.05555556

Use at your own risk. More detailed derivations can be found here. here/