The Final Chapter to the Optimal Betting Saga
by Brett Harris.
Posted by brh on June 08, 1997 at 10:43:42:
Thanks to Pete Moss, I now think that the optimal betting
question can be solved completely.
My solution in the post below, which minimises N0 = VAR/EV^2 for an
entire system, does not in itself prove that this
also maximises the log growth of the bankroll. It only
proves that at the minimum value of NO, the growth rate
is given by G = 1 + 1/(2*N0), but not that some other
spread could give a greater G' = 1 + 1/(2*N'), where
N' is not equal to VAR/EV^2. But thanks to Pete, this
can now be done. For those who do now wish to wade through
the proof, the result can be stated:
For a given ratio of max bet to min bet, a spread can
be found which maximises the log growth of the bankroll,
this corresponds to the spread which minimises the
ratio of VAR/EV^2=N0 for the entire system, with the
growth rate given by G = 1 + 1/(2*N0).
Proof:
From Pete Moss, the log utility function, for the whole system
can be expressed as,
J[b(i)] = Sum (i=-inf,inf) C(i)[[ Sum {j} P(Uj,i) log(1 + b(i)*Uj,i)]] (1)
where the Uj,i are the possible outcomes at each Tc=i, and
P(Uj,i) is the probability of outcome Uj,i, such that
Sum {j} P(Uj,i) = 1.
Assuming the B(i)*Uj,i are small, then expanding the log gives
J[b(i)] = Sum (i=-inf,inf) C(i) [ b(i)E[U](i) - 1/2 * b(i)^2 E[U^2](i) ] (2)
Differentiating with respect to b(i), and setting the result to zero, gives
b(i) = E[U](i)/E[U^2](i),
where E[...](i) is the expectation operator for each i, and therefore b(i)
is approximately equal to EV(i)/VAR(i), as defined in my
previous post.
In the following, I will assume that true count i, can take on a
continuous range of values {t}, and all sums over i, become
integrals over t. This does not change the logic, it simply makes
some operations easier.
Now some definitions:
We have a spread from 1 to M 'units' in which each 'unit' is some
fraction (1/Ks) of our bankroll B.
Since we have a finite maximum bet, M*(B/Ks), then this maximum
bet will be reached at some t=T, where T<+inf.
DEFINING (some need to take extra note of this),
K(t) = M * VAR(t)/EV(t) (for all t), (3)
then T is defined such that
b(T) = EV(T)/VAR(T) = M / K(T), where Ks = K(T) . (4)
Now, although this isnt strictly necessary, since this point always
occurs somewhere close to t=0, just to keep the proof completely
general, there is some t=t0, such that the minimum bet 1*(B/K) is
bet, and at this point,
b(t0) = EV(t0)/VAR(t0) = M/K(t0) = 1/M b(T) = 1/Ks . (5)
This shows that 1/Ks corresponds to '1 unit' which is the minimum
bet and
K(t0) = M * K(T) = M * Ks (6)
implicitly defines the relationship between t0 and T, such that
t0 can be written as a function of T, ie t0(T).
For all bets between the min and the max, we choose b(t) such
that J[b(t)] is minimised with respect to each b(t), and max
or min bets otherwise, to give
b(t) = 1/Ks for t < t0,
b(t) = EV(t)/VAR(t) = M / K(t), for all t0 < t < T , (7)
b(t) = M/Ks for t > T.
Note we still have one degree of freedom in the minimisation problem,
namely the value of T. Equation (6) fixes t0 in relation to T,
so that this is not a free parameter. Ks = K(T), and so
all bets except the intermediate ones are also a function of T.
Inserting the above into Equation (2) gives for J(T) :
J(T) = 1/K(T) * { Int(-inf,t0) dt C(t) EV(t) }
- 1/(2*K(T)^2) * { Int(-inf,t0) dt C(t) VAR(t) }
+ 1/2 * { Int(t0,T) dt C(t) EV(t)^2/VAR(t) } (8)
+ M/K(T) * { Int(T,+inf) dt C(t) EV(t) }
- M^2/(2*K(T)^2) * { Int(T,+inf) dt C(t) VAR(t) }
= 1/K(T) * E_minus(T)
- 1/(2*K(T)^2) * V_minus(T)
+ 1/2 * E_inter(T) (9)
+ M/K(T) * E_plus(T)
- M^2/(2*K(T)^2) * V_plus(T)
where the definitions are similar to those in my previous post
except E_inter(T) which was rather ambiguously called K(T) in that post.
What is required now is to differentiate J(T) with respect to T,
and set the result to zero. This is not too difficult, provided we
remember that
d/dy { Int(-inf,F(y)) G(z) dz } = dF/dy * G[F(y)] (10)
with a similar expression, with opposite sign, for the (F(y),+inf) case.
Differentiating with respect to T and collecting terms, we get
dJ/dT = t0'(T) C(t0) * [ EV(t0)/K(T) - EV(t0)^2/(2*VAR(t0)) - VAR(t0)/(2*K(T)^2) ]
+ K'(T)/K(T)^2 * [ -E_minus(T) - M*E_plus(T) (11)
+ V_minus(T)/K(T) + M^2 * V_plus(T)/K(T) ]
+ C(T) * [ EV(T)*2/(2*VAR(T)) - M*EV(T)/K(T) + M^2 * VAR(T)/(2*K(T)^2) ]
= 0
However, the first and last terms cancel by the definitions of K(T0) and K(T)
giving
E_minus(T) + M*E_plus(T) = 1/K(T) * [ V_minus(T) + M^2 * V_plus(T) ] (12)
which happens to be precisely Equation (1) as defined in the previous post.
Note, this time, K(T) is simply the function K(t) evaluated at t=T, and
Equation (4) here, is equivalent to Equation (2) in the previous paper.
The solution of Equation (12) gives the value of T for which the max
bet is placed. K(T) gives the fraction of bankroll corresponding to '1 unit'.
We are almost done.
Using Equation (12) in Equation (9), we get for J(T_max) (dropping the (T_max)'s)
J(T_max) = 1/K * [ E_minus + M*E_plus ]
- 1/(2*K^2) * [ V_minus + M^2 * V_plus ]
+ 1/2 * E_inter
= 1/(2*K) * [ E_minus + K*E_inter + M*E_plus ]
But with the small trick of adding K(T)*E_inter(T) to each side of Eq(12),
J(T_max) = 1/2 * [ E_minus + K*E_inter + M*E_plus ]^2 /
[ V_minus + K^2*E_inter + M^2*V_plus ]
= 1/2 * EV(total)^2/VAR(total)
= 1/2 * 1/N0
Since the growth rate G is given by G = Exp(J), then for large N0,
G = 1 + 1/(2*N0)
QED.
This proof shows that since the equations for T are identical for those
which minimise N0, then minimising N0 is completely equivalent to maximising
J[b].
This can now be stated rigourously as :
If and only if a spread {bi} minimises the quantity N0 for the
entire system, then the same spread {bi} maximises the log
growth rate G, such that G = 1 + 1/(2*N0) .
My previous post provided the 'if' side, and this post shows
the reverse is also true, the 'only if' side.
I think this has now tied up all the loose ends, and I believe the
optimal betting question has now been totally solved. Pete's
reformulation provided the last missing piece.
Cheers,
Brh.
Return to: Bet Sizing