D’Alembert simulation#

Created by a French mathematician in the 1800s, this strategy stands the test of time. It’s often likened to the Martingale strategy, only less risky.

from roulette import Roulette
from core import *
from simulations_core import *
from simulations_plots_core import *
roulette = Roulette()
def transformation_on_win(bet_history):
    next_bet = bet_history[-1] - 1 if (bet_history[-1] - 1) > 0 else bet_history[-1]
    return next_bet, bet_history
def transformation_on_loss(bet_history):
    return bet_history[-1] + 1, bet_history

The D’Alembert strategy follows a simple structure that only works on even bets, like red or black. Before you play, decide on a set amount of money to act as a unit, for example $1. If you win the bet, decrease the next bet by one unit, and if you lose, increase the next bet by one unit.

def dalembert_betting(goal_money_won, bet = 1, money_limit = None):
    return goal_money_betting_even_bet(roulette, goal_money_won, bet, transformation_on_loss, 
                                        transformation_on_win, money_limit)
money_goals = [10, 100, 500, 1000]

Starting bet = 1, Allowed money lost = -10#

bet = 1
money_histories = simulate_different_goal_money(
                    betting_type = dalembert_betting, 
                    goal_money_list = money_goals, 
                    number_histories = 10000,
                    start_bet= bet,
                    money_limit= -10*bet)
successful_histories = get_successful_histories(money_histories, money_goals)
for goal in money_goals:
    print(f"For goal {goal} mean money won:")
    print(get_mean_money_won(money_histories, goal))
    print(f"For goal {goal} mean money lost:")
    print(get_mean_money_lost(money_histories, goal))
For goal 10 mean money won:
10.323592441067602
For goal 10 mean money lost:
-13.281487569344565
For goal 100 mean money won:
101.08658008658008
For goal 100 mean money lost:
-14.070054797464275
For goal 500 mean money won:
502.969696969697
For goal 500 mean money lost:
-14.516609623515201
For goal 1000 mean money won:
1003.75
For goal 1000 mean money lost:
-14.584969939879759

Analysis when the goal is to win 10 units#

UNITS = 10
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/1bd933553a2dca5f32547efc79b48e9e0fe97ec27ccdba125e2b18a029461085.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/5aa6893784e0f5f16aeba9f4dc75f74c8072e2363fa51f53c22a2442ee73af68.png
plot_money_histories(successful_histories, UNITS)
../_images/575538bc638df97dca638fda0d398c73129f29ac7389b013187966ffef2d8be7.png ../_images/490b25b37cde5b8ad65fe0e15779c78ad1794b280225cb0c0043a795a62b8302.png ../_images/f2e3e359ae1141f1619ca03758eaebb30d469cabf07b6862351789fd3f045ad7.png ../_images/8b2ef9dfafa79f199a35080cdbea09c3bf840499bc4fd7a4ce5b8b808eaa4086.png ../_images/0bc205b3b055ab2f43613a51cde8baa9bed1efc277893897604e60b014fb8cd3.png ../_images/24452637c839ed6b9ba43688894f824e10e0fce2379039412bbc25b1296b2aa0.png ../_images/da8264887a1e84ec5485ff1cf88c917f02d10df99ac26aea434bb3ea74101948.png ../_images/4846a7c99ae48d29ee6c742488f8c118d1f4411b9f3846fc00c3a65a3d1711e6.png ../_images/891e049242e7b07e369a86c0455926d74ab34af596ed41b42d75480585e4c28c.png ../_images/9deb34f61597cadb907a8b5004bf317cc972f714409d920e31170ad3a94784c5.png

Analysis when the goal is to win 100 units#

UNITS = 100
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/5be729c44b30d86150d5d95660e10ea187d66ad30e27fb107156f97d74bd1960.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/d75e47330958c31964bc928a17b76414a145f6a67b09e6fc408fe36c84ede532.png
plot_money_histories(successful_histories, UNITS)
../_images/848d221385b10f08efcc1a50a6ee5e0df43ca58e80d521e657b6b7ea6f2319d7.png ../_images/08df945682f9b736c55f55dc6637798fb7e52725a191fdfa75ec6eebdd004bce.png ../_images/bee26a74ebbfe1e4eaa5ada701bde6f6057625b87c78e491421b5866ac2a2afb.png ../_images/f5b10709f9ae717014859639941bf7dcfb5ff70cab394f7b84167dc40048e564.png ../_images/d67ee5bc0bc2ec282df0eff532bed16a71af54f85d447d07562957c48172ea3b.png ../_images/331be6e305a7c773e8d75dab68b0e50da03434af3a16bde67dbe9ff61496cf9b.png ../_images/8b5ddbb60f75a0868af35aecf9152be8d9829506a93277a617ce182fc0da75d9.png ../_images/6e37bff1167cb534abe205450028b04fda901df313addde22a8bb525044d1977.png ../_images/33e3158ad67be9c778f44ca4e49a4268ea78f160bb1dcf8fb77c9b121ec1ccea.png ../_images/9e4a6a361a7cb0c0d43fc936134ba199b904d46115839a2215d85b9262a7a206.png

Analysis when the goal is to win 500 units#

UNITS = 500
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/a7f58a16e3b7f700caf64d9fa67bb49e66f5000f11baeb735e0023d937b67796.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/651fd4a5298627bc94c23beb1a77d42a5f8eaeabc16bc34f3c5cfc125f01fe19.png
plot_money_histories(successful_histories, UNITS)
../_images/703c9f0abd0b1206911457d2d44d8dc66fdad01b96bf01c863931d5057806e6d.png ../_images/7bf8ba81b807da69dd236f21974014672077a5e13de6d7b49137cf52e722d820.png ../_images/fff03d5eeda61ff33bcf9e474fd73e27b686d9df721aac921b67802519c16f34.png ../_images/47873f25de1046543dd680be34ed65ddbdd6090d41a4f6e10502ecabdeb802ca.png ../_images/6294530757cb15e502d2aae7ec3a2eeef541ee31d1564c46b07dcafcab046627.png ../_images/a145a8ff1af4772566db6c79f80b468aca3bcaefac03be2a658f40bee656602d.png ../_images/b93d2d2d8f1d148ff36dd868f0517877d7666dd1bc7c4c63d9249858cdbe334a.png ../_images/41a86527b0130818f4102774b2014ce22fe5a6d1628be24b1a2f0d8cb7f1ddc1.png ../_images/d14f820177b23684c2e2a7eba8114880453a96bb99ea44d8c6e2456f92daf705.png ../_images/ea8ac0487a927d9789e55434f80408ff071b313021b764733c7c3ba0738d406b.png

Analysis when the goal is to win 1000 units#

UNITS = 1000
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/b1b8d436ddb262028539d3a9ff3b096e3deb4bfc6e53a7d1c0d69a650ae87d06.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/28a71d21116add4ac0a50b73f7240b5258d32035927b7cc984fb6218b0fefb4c.png
plot_money_histories(successful_histories, UNITS)
../_images/f0014ff7a8cce7915081eac4aa2856128c25be20ed2a61b75daa40235b218997.png ../_images/1cbb7892444e21af79ec275ebfd3ca687add4663b4ab93d9b2a4b48b3b23b7e4.png ../_images/ee97956d0adda9d8ae3430839711ff3ccbfb0b1c19039d9e1145a413d1975f37.png ../_images/02d4259195a1dbacb018f34b3de0b072ec9ee4aa91da45abe38457c8867e9808.png ../_images/296e730a7fbd6f81748f7bd2dabca0f055df9e16381a4094a67edde4005a6a89.png ../_images/f9d621f4b2461fb0ee60f635c094ab989799687ae18a39e329e032cef682c025.png ../_images/c0b2e552799caa2d1646514b3f7574fb979f7ca78e2a62065108983b91b60c36.png ../_images/a83a3426bc6e1410527f5379a0d7009cea28ed5d45a48134769f944a0081ab9f.png ../_images/b6fa6c9b1384ef0435dedd0fb2abef451dd65ffa0fc1dd4455301875ff35ec2e.png ../_images/f2c4435b4f9fbd320ad560d38cfe96a12e7ae936ec98e31420450b6e850d7468.png

Starting bet = goal, Allowed money lost = -10*goal#

money_histories = dict()
for goal in money_goals:
    bet = goal
    tmp_money_histories = simulate_different_goal_money(
                        betting_type = dalembert_betting, 
                        goal_money_list = [goal], 
                        number_histories = 10000,
                        start_bet= bet,
                        money_limit= -10*bet)
    money_histories = money_histories | tmp_money_histories
successful_histories = get_successful_histories(money_histories, money_goals)
for goal in money_goals:
    print(f"For goal {goal} mean money won:")
    print(get_mean_money_won(money_histories, goal))
    print(f"For goal {goal} mean money lost:")
    print(get_mean_money_lost(money_histories, goal))
For goal 10 mean money won:
11.321283325802078
For goal 10 mean money lost:
-107.20731707317073
For goal 100 mean money won:
103.07509033423668
For goal 100 mean money lost:
-1033.479020979021
For goal 500 mean money won:
502.9665835976439
For goal 500 mean money lost:
-5045.529010238908
For goal 1000 mean money won:
1003.0391511575125
For goal 1000 mean money lost:
-10054.299663299664

Analysis when the goal is to win 10 units#

UNITS = 10
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/b85aa80e06626c8cc297b1d4bdc5721ff6729cc0a3db16828f7f037a55528899.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/3068c24c7bf88bc465c6afeeae209165b5664c065a0f7dd532a8bb15e64be188.png
plot_money_histories(successful_histories, UNITS)
../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/9e75c55ad138a0e4919b1b5751c79bf95ff484135a44983ac353d43c55ba55a7.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/7ccbef3f2c0ac7dfcbdc7cff633ecdc1ed85b0139c51a137c93e33a8c5848e93.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png

Analysis when the goal is to win 100 units#

UNITS = 100
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/1acd7fbdab89e49006f5c94ca047375123e95c41a79b1e816228a6f46be0e564.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/d7f3f8f2cfb378e1f6a19e90fe9e6aceee41ac2f12a761fcced413463354fba9.png
plot_money_histories(successful_histories, UNITS)
../_images/d53dac67b1878324f91bacaa17a5f2270013926710c729d762a89beb033a0031.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/8083b0b60cb4c679606cdefe5546427044fcd8034ea7d08e720aaa54bff5ac0a.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/c24c5fa12602d0924ee1d67f5c8dae380fd8cad1dd62eadccb5a907b2a969e94.png ../_images/55228b5296d66a42e2031ffb39358dbf53e8251bc9b1b6b7b97441350e23b887.png

Analysis when the goal is to win 500 units#

UNITS = 500
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/bd44726bf9270cb7837780c376bb7818f7e246fee0edf83233766a1f6595c138.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/f7269fe841c621e915016bc81978e50fb65568733e5513685a171eecee0b668f.png
plot_money_histories(successful_histories, UNITS)
../_images/b0a6ea1fc3dbd5c0ff085f2cee49d0056795ac93d51a6eae5d1a049f6c3c26bd.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/68c8b72632697c36f7d803c4509062e489c6fa66fd8d099eb81f17380605f0b0.png ../_images/97f8ed73e067b84da9f9605f50a1de2fa0225a09c003c1a37244e6ca404ef2b2.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/8c5cd2b69c33d17c900030d240489bc8648cc4b2d314e8b8389112d1c4e13bf4.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/68c8b72632697c36f7d803c4509062e489c6fa66fd8d099eb81f17380605f0b0.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png

Analysis when the goal is to win 1000 units#

UNITS = 1000
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/347c3114a2477c45e0c7f3a17e46115ec216338b6350eda80a5cb5308b66f480.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/02bdd24177feb82be622ef6b07c76fb7c2e059af9dee2033e902ec90937bae8f.png
plot_money_histories(successful_histories, UNITS)
../_images/f1080199a0178b80cdc9143962fd1d7f95d627deb39c802a91a8d23fcc6ede63.png ../_images/f1080199a0178b80cdc9143962fd1d7f95d627deb39c802a91a8d23fcc6ede63.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/236b97b822e6574a96bc18ae572ecbb5f88d559e9364fb05cec5cbb8b407b3cb.png ../_images/02facf609259ee612c5498848619ef92242691549c77cb3ebc1c39389aa86914.png ../_images/02facf609259ee612c5498848619ef92242691549c77cb3ebc1c39389aa86914.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/02facf609259ee612c5498848619ef92242691549c77cb3ebc1c39389aa86914.png

Starting bet = goal, Allowed money lost = -20*goal#

money_histories = dict()
for goal in money_goals:
    bet = goal
    tmp_money_histories = simulate_different_goal_money(
                        betting_type = dalembert_betting, 
                        goal_money_list = [goal], 
                        number_histories = 10000,
                        start_bet= bet,
                        money_limit= -20*bet)
    money_histories = money_histories | tmp_money_histories
successful_histories = get_successful_histories(money_histories, money_goals)
for goal in money_goals:
    print(f"For goal {goal} mean money won:")
    print(get_mean_money_won(money_histories, goal))
    print(f"For goal {goal} mean money lost:")
    print(get_mean_money_lost(money_histories, goal))
For goal 10 mean money won:
11.494012299061387
For goal 10 mean money lost:
-211.54172366621066
For goal 100 mean money won:
105.11465106198526
For goal 100 mean money lost:
-2047.300518134715
For goal 500 mean money won:
505.957669108143
For goal 500 mean money lost:
-10138.343575418994
For goal 1000 mean money won:
1006.0268624252311
For goal 1000 mean money lost:
-20148.766459627328

Analysis when the goal is to win 10 units#

UNITS = 10
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/92879072641019db12f6aa28f93e67a1fdd7818e1b5b1276688ce70ba222deb0.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/45374c32f2476095567e101e67573221fec43bdcafd4767b6d56cdac4c9fcb1c.png
plot_money_histories(successful_histories, UNITS)
../_images/1d4659f2a8be62fcc8a9fc12752c7e1ec62a0945f0eb5d5e902430607cadeaf4.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/7ccbef3f2c0ac7dfcbdc7cff633ecdc1ed85b0139c51a137c93e33a8c5848e93.png ../_images/e1dce7ec59b5d7a963da21011f77cd3db4f7b656a90f89a79e80367d4bfc4234.png ../_images/e1dce7ec59b5d7a963da21011f77cd3db4f7b656a90f89a79e80367d4bfc4234.png ../_images/1ad0534d8e8db743a2e20e008af6b60db642fbb4b6aab9c46b40119b7d9e53b2.png ../_images/7ccbef3f2c0ac7dfcbdc7cff633ecdc1ed85b0139c51a137c93e33a8c5848e93.png ../_images/7ccbef3f2c0ac7dfcbdc7cff633ecdc1ed85b0139c51a137c93e33a8c5848e93.png ../_images/7ccbef3f2c0ac7dfcbdc7cff633ecdc1ed85b0139c51a137c93e33a8c5848e93.png ../_images/d6a6f0a11cf35911f02ae8d0ff6173670af301dc0af9a76dfcddff87814ada07.png

Analysis when the goal is to win 100 units#

UNITS = 100
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/959ce925e94802115b687efc4555b0f3db40909a3afbe05c89c959bba9a64ab7.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/f37eb5873d6dedbad3bd3f188e4e549925dd88a639cad2275c284ace5d583fd3.png
plot_money_histories(successful_histories, UNITS)
../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/178e39efd3cd95192641efa5dc34125e9dc61220858995ada5cd1271264eb33d.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/d578cf5019464a08c87648f370e168c9400faa65a903661c3a0f939f8f02a82e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/d53dac67b1878324f91bacaa17a5f2270013926710c729d762a89beb033a0031.png ../_images/56cecce1ea111d03e2a8fa57757d886ae684ebae7d13d447c27fa4e574275102.png ../_images/d53dac67b1878324f91bacaa17a5f2270013926710c729d762a89beb033a0031.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png

Analysis when the goal is to win 500 units#

UNITS = 500
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/4982c375f2aff470fd9ec7a21cca6fe65c6b4273925498b7bf68ab796de31e6b.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/fb1da430e49444653f62ec2e97ab787b2fea4fdca2bdef6a5c3f42802b9e8c18.png
plot_money_histories(successful_histories, UNITS)
../_images/97f8ed73e067b84da9f9605f50a1de2fa0225a09c003c1a37244e6ca404ef2b2.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/05db74851ece7fac8fa7fc36d825c4b10d63cc8047b0d8b3ebc1ae86c1c7abc2.png ../_images/43e199ebf32d36751693123b99ae032f80b047dbd454cc06cba9e45e47659132.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/982bd782fd58a456aebf3904d4e4a4207bf7369793c31341bbb9c40107aa31be.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png

Analysis when the goal is to win 1000 units#

UNITS = 1000
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/305f2cc0fe076381e40041698cc8311f6fb8b48be00ea813d0896ca69d6ae02a.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/ccd6b7315d77d19fa057ff3319cc870f2fe4fdd21998c124c37e882dd4fe6f7b.png
plot_money_histories(successful_histories, UNITS)
../_images/02facf609259ee612c5498848619ef92242691549c77cb3ebc1c39389aa86914.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/42527d72ebee2797932ebfc13e7739f957163705b02d26f65ef92c7f30606dfd.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/f1080199a0178b80cdc9143962fd1d7f95d627deb39c802a91a8d23fcc6ede63.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/6b54402c921c26f873b754c540914625a205d5bb870fd60aba9ddc9cd2cad93c.png

Starting bet = goal, Allowed money lost = -30*goal#

money_histories = dict()
for goal in money_goals:
    bet = goal
    tmp_money_histories = simulate_different_goal_money(
                        betting_type = dalembert_betting, 
                        goal_money_list = [goal], 
                        number_histories = 10000,
                        start_bet= bet,
                        money_limit= -30*bet)
    money_histories = money_histories | tmp_money_histories
successful_histories = get_successful_histories(money_histories, money_goals)
for goal in money_goals:
    print(f"For goal {goal} mean money won:")
    print(get_mean_money_won(money_histories, goal))
    print(f"For goal {goal} mean money lost:")
    print(get_mean_money_lost(money_histories, goal))
For goal 10 mean money won:
11.576980093180856
For goal 10 mean money lost:
-313.58992805755395
For goal 100 mean money won:
105.50802997858672
For goal 100 mean money lost:
-3067.1954545454546
For goal 500 mean money won:
509.08187259512613
For goal 500 mean money lost:
-15306.826086956522
For goal 1000 mean money won:
1008.6657402458578
For goal 1000 mean money lost:
-30315.883720930233

Analysis when the goal is to win 10 units#

UNITS = 10
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/d955d2bcbaa4c9c12dfdef856b38f4af40a8faf00b72451b3511779e136c6d04.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/56599c3c1d9ed887e3530e86b2f3fe67d5349b0b7e2a9e25901041d0a15104fe.png
plot_money_histories(successful_histories, UNITS)
../_images/39d4cb8e4a6aab488f853f3f33cc39478b74c4cb72d1130b131ee62d4b4fd58b.png ../_images/1d4659f2a8be62fcc8a9fc12752c7e1ec62a0945f0eb5d5e902430607cadeaf4.png ../_images/4eab0931fcd91a13d1002e2d338608ef2c02f61e87233a5f58608c29c6d23d88.png ../_images/62fc641ec90a7d6670ae2c82f4dd89fb719fd9e203f18073a02c37a043d7d9af.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png ../_images/e1dce7ec59b5d7a963da21011f77cd3db4f7b656a90f89a79e80367d4bfc4234.png ../_images/7e41047441822775806865ceca7ec0e499d8a53bee7497b4e66cd941f1223787.png ../_images/7ccbef3f2c0ac7dfcbdc7cff633ecdc1ed85b0139c51a137c93e33a8c5848e93.png ../_images/a314e6a9c938b8d2b011995d267c4a3010ec249a8808963f5fada1970791c10e.png ../_images/c98b626c05f3532f7371fdc515b871230a83c84a15d1a6a9d5f5e68391deaf12.png

Analysis when the goal is to win 100 units#

UNITS = 100
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/a551880fe2001a31143166b365e15b3bd2849fb82f43aab834b70f9c78dd7a84.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/c6dbfbf61d13859e0ff1dba8d0aa1d99f86ce411eb3d1e507e3e33b4ead65404.png
plot_money_histories(successful_histories, UNITS)
../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/542e80e207a64a0f9359fc0c9b0681ca2770bd9f2b9c0e97c66cbbfca575dbd8.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/af4ef8376d7453b8a84104cc5d6a6f96013d9807309c404b03570c6ccae69c3e.png ../_images/43e4d737583e753527a67d17d17f559278c042d7a632f69507b0946bb17e1b9f.png ../_images/56cecce1ea111d03e2a8fa57757d886ae684ebae7d13d447c27fa4e574275102.png ../_images/e4f7d21fd8ce119685916a6f8116f289875c9f91b8f91ce417dd0a64e35a462d.png

Analysis when the goal is to win 500 units#

UNITS = 500
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/26e0d92b6850074121dcab74e6ea39209ccd74067ef58ec69827241529b1b9fb.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/1166cd4f0d8395ba4a11afe9bb1a13fec69700e3aac270d65f782c29a5fdf579.png
plot_money_histories(successful_histories, UNITS)
../_images/a9b917c5760e096eb3590e8ca7b001b3d9c05cd2581d426b687904912c735edb.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/feaa6380d829d87ba955fb7e8c38b1484b30b7d84807d75b3f1d5d752d61f4f0.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/bcc4fe85aa7e48b8f7e532189dd9309aaaeb5c768262c05f7c06dd8fe9add787.png ../_images/2e509fa62dae2319c21d5b412d0969e60d8b449452a4c96b43b7c9cf38fb1560.png ../_images/c33fb2cfbe03d3395e0c736219476d3ee64c1d8cf2ab0514cede85b0187bd918.png ../_images/00f45f3c11a7c7a807dd5a89c52d8691c892e0ac4810465106e51c25f83425ef.png ../_images/982bd782fd58a456aebf3904d4e4a4207bf7369793c31341bbb9c40107aa31be.png ../_images/2e9fde46aa0f7af6405ec742bcaf22f95827f13a3baae46b7f7ab9a9fc2a6540.png

Analysis when the goal is to win 1000 units#

UNITS = 1000
plot_successful_bets(money_histories[UNITS], UNITS, title=f"Successful bets for {UNITS}")
../_images/d6379c107940ae68accc0ebdac25766cd818ce44d7c4996c4a0dbbfde85eec41.png
mean_money_list, std_money_list = get_mean_and_std_of_histories(successful_histories, UNITS)
plot_money_history(mean_money_list, std_dev=std_money_list, title=f'Successful simulations mean and std for {UNITS} units')
../_images/225a2815c2b1b72ec66205d1aaceaed42e3d27f50e3c99ec2f5810aa3b995c54.png
plot_money_histories(successful_histories, UNITS)
../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/02facf609259ee612c5498848619ef92242691549c77cb3ebc1c39389aa86914.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/f8fd7223b6461eb4c93b6c4a3eda7c62006d5704cb3d41b7ead6c0dff3348c8c.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/f1080199a0178b80cdc9143962fd1d7f95d627deb39c802a91a8d23fcc6ede63.png ../_images/b2ac6588afb22f31a26a44168ffe79fa051910affb6b503c3041493017f02087.png ../_images/6dc9cd6abc369ab78c7140adc8c7fc7edffd24ad1a81363246a1cf2b5d235725.png