Lovar säker seger i teorin, men vi sätter Martingale-bettingstrategin på ett praktiskt prov. Fungerar det att dubbla ner? Recension med simuleringar och video.
Martingale-metoden härstammar från 1700-talets Frankrike och är fortfarande en av de mest kända satsningsstrategierna än idag. Dess popularitet kan tillskrivas tre saker:
Som vi vet kan vi i roulette satsa på om kulan kommer att landa i ett rött eller svart fack. Om vi gissar rätt vinner vi en summa lika med vår insats, vilket innebär att om insatsen är 100 kr, så är vinsten också 100 kr (tillsammans med insatsen blir det totalt 200 kr, som vi får tillbaka).
Låt oss anta att vi satsar 100 kr på rött. Enligt Martingale-strategin, om vi förlorar insatsen, fördubblar vi insatsen i nästa omgång, det vill säga att vi lägger 200 kr på rött. Detta säkerställer att om rött vinner, återfår vi de 100 kr som förlorades i första omgången, och vi får också en extra vinst på 100 kr. Om svart skulle vinna igen, skulle vi återigen fördubbla insatsen och placera 400 kr på rött. I grund och botten fortsätter vi att fördubbla vår insats på rött tills det dyker upp. När det händer kan vi starta om processen och återställa grundinsatsen till 100 kr.
I praktiken är denna metod främst begränsad av två faktorer:
För att hjälpa dig med användningen av denna strategi har vi skapat ett Excel-kalkylblad där du kan ange storleken på din startinsats och sedan ta reda på hur mycket mer du måste satsa i händelse av varje förlust. Du kan använda detta för roulette eller ett liknande spel där du kan vinna tillbaka dubbla din insats. På samma sätt kan du använda tabellen nedan som antar en startinsats på $100. Tabellen visar också sannolikheten för en förlorande svit i europeisk roulette (som svart/röd-satsningar).
Förlorande steg | Nödvändig insats | Chans att hända |
---|---|---|
1 | 100 | 48.600000% |
2 | 200 | 23.6196000% |
3 | 400 | 11.4791256% |
4 | 800 | 5.5788550% |
5 | 1,600 | 2.7113236% |
6 | 3,200 | 1.3177032% |
7 | 6,400 | 0.6404038% |
8 | 12,800 | 0.3112362% |
9 | 25,600 | 0.1512608% |
10 | 51,200 | 0.0735128% |
11 | 102,400 | 0.0357272% |
12 | 204,800 | 0.0173634% |
13 | 409,600 | 0.0084386% |
14 | 819,200 | 0.0041012% |
15 | 1,638,400 | 0.0019932% |
16 | 3,276,800 | 0.0009687% |
17 | 6,553,600 | 0.0004708% |
18 | 13,107,200 | 0.0002288% |
19 | 26,214,400 | 0.0001112% |
20 | 52,428,800 | 0.0000540% |
För att besvara frågan har vi skapat ett datorprogram som simulerar 10 000 roulettesnurr och en simulerad spelare som tillämpar denna strategi. Du kan också se källkoden för denna simulering i den här artikeln.
Efter att ha kört simuleringen, det vill säga de 10 000 roulettesnurren, 100 gånger, fann vi att denna strategi endast kunde resultera i en vinst 11 gånger. I dessa fall slutade spelaren med ett belopp mellan två och sex gånger sitt startkapital. Men i majoriteten av fallen, det vill säga de återstående 89 gångerna, tog spelarnas balans slut långt innan den 10 000:e rundan.
Generellt kan sägas att denna strategi kan generera en positiv balans på kort sikt. Men förr eller senare stöter spelaren på en svit av otur, vilket resulterar i förlusten av allt sitt kapital.
Du kan köra Python-koden för Martingale-simuleringen. Den är bäst lämpad att köra i en Jupyter anteckningsboksmiljö, som den kostnadsfria Google Colab-anteckningsboken.
import random
import seaborn as sns
import matplotlib.pyplot as plt
mpockets = ["Red"] * 18 + ["Black"] * 18 + ["Green"] * 1
mrolls = []
def makeRandomRolls():
global mrolls
mrolls = []
mi = 0
while mi < 10000000:
mi += 1
mrolls.append(random.choice(mpockets))
def always_red_Martingale(bankroll, maxspin):
bankroll = 100
bet = 1
currentSpin = -1
pockets = ["Red"] * 18 + ["Black"] * 18 + ["Green"] * 1
bankroll_history = []
roll_history = []
betTrigger = False
while (bankroll > 0) and (currentSpin < maxspin):
currentSpin = currentSpin + 1
roll = mrolls[currentSpin]
roll_history.append(roll)
if bet > bankroll:
bet = bankroll
#print('!!! BET Larger than bankrol. Setting max bet to: ' + str(bankroll))
if betTrigger == True:
if roll == "Red":
#print('!!! Bet placed and Won. Bet was: ' + str(bet))
bankroll += bet
bet = 1
betTrigger = False
else:
bankroll -= bet
bet *= 2
#print('!!! Bet placed and LOST. New bet is: ' + str(bet))
if (currentSpin > 2) and \
(roll_history[-1] == "Black") and \
(roll_history[-2] == "Red"):
betTrigger = True
bankroll_history.append(bankroll)
return bankroll_history
sns.set(rc={'figure.figsize':(18.7,8.27)})
MS = 10000
makeRandomRolls()
plt.plot(always_red_Martingale(bankroll=100,maxspin=MS), linewidth=2, label='Player using Martingale strategy, always bets on red (with 1 USD)')
plt.xlabel("Number of roulette spins", fontsize=18, fontweight="bold")
plt.ylabel("Balance (USD)", fontsize=18, fontweight="bold")
plt.xticks(fontsize=16, fontweight="bold")
plt.yticks(fontsize=16, fontweight="bold")
plt.title("How balance changes with each roulette spin (bet)", fontsize=22, fontweight="bold")
plt.legend(loc="upper left")