NetLogo banner

 Contact Us

 Modeling Commons

 User Manuals:


NetLogo User Community Models

(back to the NetLogo User Community Models)


by Derek Rush (Submitted: 06/28/2003)

[screen shot]

Download EasyMoney
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".

(You can also run this model in your browser, but we don't recommend it; details here.)


This model was made to illustrate the apparent ease with which a "book" might be made to provide
a guaranteed take, that is, if the Bookmaker follows these simple rules:

RULE 1. No bet should be accepted until the set of proposed bets of which it is a
member have had the procedure run to determine the ODDS for the bets and no
ODDS is zero. The ODDS will be zero if any bet in the set is too high to be
covered by the other bets in the set.

RULE 2. If a bet is not covered the Bookmaker may reduce the take* and the take should
be restored upwards as soon as conditions permit. Alternatively the bet should
be refused at that time or perhaps put aside until it can be associated with a
set** of proposed bets that will cover it.***

RULE 3. In calculating the ODDS for a bet always round down to the integer.

*Reducing the take, even to zero, is a good option because much of the total take comes from
the extras made by rounding down to the integer in the ODDS calculation.
**Waiting for a set of bets to cover each other is the simplest of methods guaranteeing a take;
also the delay involved, very little in a busy office, can probably be made acceptable to most
***In this model these actions take place automatically when RESET ODDS and STEP RUN are pressed
in sequence to clear a zero ODDS condition.


To gain clarity the model has been kept simple. For example, it has been made to accept only bets
to win, (no place bets); also a set of bets, on all turtles, is made at each step of the procedure;
also ODDS less than one are not considered.

The algebra of the procedure in this model is:
(for a SINGLE RACE with 5 turtles and 1 hare competing;
also it uses turtle-1 where necesary as the example;
also no one bets on the hare, a known loser.).

bet-1 = value of a bet made on turtle 1.
odds-1 = odds for " " " " " "
bets = the sum of bets proposed but not yet accepted,
= bet-1 + bet-2 + bet-3 + bet-4 + bet-5 in this model.
total-bets = the sum of ALL BETS ON THIS RACE TO THIS TIME, also see below.
take = bets x (take-% / 100), (preceeds the odds calculation.)
can-pay = bets - take, (preceeds the odds calculation.)
odds-1 = integer((can-pay/bet-1) - 1), (the - 1 allows for return of the stake;
also rounding down to the integer makes extras for the Bookmaker.)
pay-1 = (bet-1 x odds-1) + bet-1, (the + bet-1 is return of the stake for a winning bet.) pays-1 = addition of pay-1's.
total-can-pay = " " can-pay's.
takes = " " take's.
extras = gain from rounding down to the integer in the odds calculation.
total take = takes + extras.
total-bets = winnings + total take (after the race this checks the overall arithmetic.)


SETUP will clear all and bring the turtles and hare to the starting gate and set to default
values the BETS and TAKE-%
RUN/PAUSE will illustrate 50 steps of betting with random changes of bet values; also the odds
change in accordance with the rule that high values of bets will reduce the odds, including to
zero, in which case the procedure automatically freezes.
RESET ODDS will unfreeze the procedure and set take-% to zero (temporarily), so that the high
value bet is covered.
STEP RUN will run the procedure for one step to check that the freezing condition has been cleared
and it will reset take-% and the bets to the default values.
RUN/PAUSE will continue the run.
PAUSE will pause the procedure to enable experimental manual setting of the bet and take sliders.
RUN RACE will run the race and complete the calculations to reveal the winner plus the winnings.

Readers of fables will no doubt note that the HARE with ID 0, lives up to its reputation.


The author has no experince of gambling or bookmaking and consequently is not in a position to make
suggestions under this heading. However the author would be pleased to receive comments and information
that would remedy this situation.

The author Derek Rush may be contacted by Email at June 2003.

(back to the NetLogo User Community Models)