-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathmartingale_casino.py
125 lines (98 loc) · 2.89 KB
/
martingale_casino.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
import random
import matplotlib
import matplotlib.pyplot as plt
import time
import pandas
def rollDice():
roll = random.randint(1,100)
if roll == 100:
print roll, 'roll was 100, you lose. what are the odds? play again.'
return False
elif roll <=50:
print roll, 'roll was 1-50, you lose again, play again'
return False
elif 100>roll>50:
print roll, 'roll was 51-99, you win, play more'
return True
def doubler_bettor(funds, initial_wager, wager_count):
value = funds
wager = initial_wager
wX = []
vY = []
currentWager = 1
previousWager = 'win'
previousWagerAmount = initial_wager
while currentWager <= wager_count:
if previousWager == 'win':
print 'We won last wager. wohoo!'
if rollDice():
value+=wager
print value
wX.append(currentWager)
vY.append(value)
else:
value-=wager
previousWager='loss'
print value
previousWagerAmount = wager
wX.append(currentWager)
vY.append(value)
if value<0:
print 'we went broke after ',currentWager,' bets'
break
elif previousWager == 'loss':
print 'We lost the last one, so we will double it now'
if rollDice():
wager = previousWagerAmount*2
print 'We won ', wager
value += wager
print value
wager = initial_wager
previousWager = 'win'
wX.append(currentWager)
vY.append(value)
else:
wager = previousWagerAmount*2
print 'we lost ', wager
value -= wager
if value < 0:
print 'We went broke after ', currentWager, 'bets'
break
print value
previousWager = 'loss'
previousWagerAmount = wager
wX.append(currentWager)
vY.append(value)
currentWager += 1
print value
plt.plot(wX,vY)
doubler_bettor(10000,100,1000)
plt.show()
time.sleep(555)
def simple_bettor(funds, initial_wager, wager_count):
value = funds
wager = initial_wager
wX = []
vY = []
currentWager = 1
while currentWager < wager_count:
if rollDice():
value += wager
wX.append(currentWager)
vY.append(value)
else:
value -= wager
wX.append(currentWager)
vY.append(value)
currentWager += 1
if value < 100:
value = 'broke'
#print 'funds', value
plt.plot(wX,vY)
x = 0
#while x<100:
simple_bettor(10000, 100, 1000)
#x+=1
plt.ylabel('Account value')
plt.xlabel('Wager count')
plt.show()