Here are the bets I am making:

Starting balance: $100

Starting bet: $0.05

Win chance: 4%

Win amount 24.75x

On loss, increase each bet by 4.5% On win, reset bet amount

So with a 0.05 bet, winning $1.2375 each time, it would take n wins to double my money.

On the other hand, to lose my entire balance, I would need to lose 102 bets in a row.

Consider that each bet is independent of the previous bets, so even if I lose several bets in a row, my next bet still has the same probability of winning as any other bet. Like, If I lose 90 bets in a row and then win on the 91st bet, I would still come out ahead, even though I lost a lot of bets before that.

What I want to calculate is the chances of doubling my starting balance taking into account the Martingale System (that even if I lost 101 times in a row and won the 102nd bet (wherein I bet $4.263), I'd win more than the original money (4.263*24.75= 105.50925).

I'd appreciate any help.


2 Answers 2


As I understand it, you want the percentage increase in your bets to compensate exactly for any preceding losses, so that, whenever you win, your total balance will be exactly $\ 0.05\times24.75=$$\,1.2375\ $ larger than it was after your previous win. If that's correct, then an increase of $\ 4.5\%\ $ isn't quite right. The fractional increase should be $\ \frac{1}{24.75}=$$\,\frac{4}{99}\ $, or $\ 4.\overline{04}\%\ $. To see this, let $\ B_n\ $ be the amount you bet after a run of $\ n\ $ losses, and $\ T_n=$$\,\sum_\limits{i=0}^nB_i\ $, where $\ B_0=$$\,0.05\ $. You want the return, $\ 24.75B_{n+1}\ $, from a win after a run of $\ n\ $ loses to be equal to the total $\ T_n\ $ of all your previous losing bets plus the extra amount $\ 0.05\times24.75\ $: \begin{align} 24.75B_{n+1}&=24.75\big(T_{n+1}-T_n\big)\\ &=T_n+0.05\times24.75\ , \end{align} whence we obtain $$ T_{n+1}=\left(1+\frac{1}{24.75}\right)T_n+0.05\ , $$ or \begin{align} B_{n+1}&=T_{n+1}-T_n\\ &=\left(1+\frac{1}{24.75}\right)\big(T_n-T_{n-1}\big)\\ &=\left(1+\frac{1}{24.75}\right)B_n\ . \end{align} After $\ n\ $ total wins, provided you haven't already gone bust, your accumulated balance will be $\ 100+1.2375n $ dollars. You will go bust from there if you suffer a run of $\ \ell_n\ $ losses, where $\ \ell_n\ $ is the smallest integer $\ \ell\ $ such that $\ T_\ell\ge100+1.2375n\ $—that is, such that \begin{align} 100+1.2375n&\le\sum_{j=0}^\ell B_j\\ &=0.05\sum_{j=0}^\ell\left(1+\frac{1}{24.75}\right)^j\\ &=0.05\times24.75\left(\left(1+\frac{1}{24.75}\right)^{\ell+1}-1\right)\ . \end{align} This inequality is satisfied, if and only if $$ \frac{\ln\left(\frac{8099}{99}+n\right)}{\ln \left(1+\frac{1}{24.75}\right)}-1\le\ell\ . $$ Thus $$ \ell_n=\left\lceil \frac{\ln\left(\frac{8099}{99}+n\right)}{\ln\left(1+\frac{1}{24.75}\right)}-1\right\rceil\ . $$ The probability that you will go bust from a balance of $\ 100+1.2375n $ dollars is therefore $\ 0.96^{\ell_n}\ $, and the probability that you will instead reach a balance of $\ 1000+1.2375(n+1)\ $ dollars is $\ 1-0.96^{\ell_n}\ $. To double your money, you will need to reach a balance of $\ 100+1.2375\times81=200.2375\ $ dollars ($\ 100+1.2375\times80=199\ $ dollars isn't enough), which has probability $$ \prod_{n=0}^{80}\big(1-0.96^{\ell_n}\big)\ . $$ The following Magma script returns $\ 0.541703\ $ as the (approximate) probability of doubling your money. To run it, copy and paste it into the Magma online calculator.

for n in [0..80] do
   elln:=Ceiling( Log(RealField(30)!(8099/99+n))/Log(RealField(30)!(103/99))-1);
end for;

print RealField(6)!prob;

Since your expected return from a single bet of $\ b\ $ dollars, $$ 0.04\times24.75b-0.96b=0.03b\ \text{dollars,} $$ is positive, this game is favourable to the player. In these circumstances, increasing your bet after a loss is not a good strategy. If you simply always bet $\ 0.05\ $ dollars, then you're virtually certain to double your money. By my calculation, the probability that you'll do so is (approximately) $\ 1-3.5\times10^{-36}\ $.


Ambiguity in the problem statement

How much money do you end up with if you start with \$100 and you win your very first bet of \$0.05? The way you've phrased your question makes it ambiguous between these two options:

  1. You paid the \$0.05 already but now you receive 24.75x your bet, or \$1.2375. That means you now have $\$101.1875$.
  2. You don't need to pay the $\$0.05$ because you won the bet, so you just gain the $\$1.2375$ as pure profit. You now have $\$101.2375$.

Both of these are pretty common ways to phrase statements about gambling odds, so it's not automatically obvious which one you mean. I'm guessing you actually intended to use option (1) though. My reasoning is that option (1) is a negative expected value bet, while option (2) is positive expected value.

In other words, if you're in world (2) then you don't need any fancy strategy: you can just bet extremely small amounts every round and you're basically guaranteed to double your money eventually because the game is stacked in your favor over the long run. With option (1) the problem is more interesting: you will lose in a long term game, so you need to take more risks to try to double your money.

In the following answer, I'm assuming you intended version (1), where the game is stacked against you in the long run.

As of this edit, this question has another answer (from lonza leggiera) which makes the opposite assumption; they assume scenario (2), where the game is stacked in your favor over the long run. I hope this explanation can help you/others figure out which answer is applicable depending on what version of the problem you intended. (I'm upvoting their answer too; I think both answers are useful even though they're answering slightly different question.)

Answering the question

This seems tricky to compute exactly, but it's easy to get an approximate answer. Here is a Python script:

import random

GOAL = 200.
WIN_PROB = .04

def sim_scaling(num_trials):
    wins = 0  # how many times did we successfully double our money?

    STARTING_BET = 0.05
    BET_SCALAR = 1.045

    for trial_id in range(num_trials):
        bankroll = STARTING_BALANCE
        curr_bet = STARTING_BET

        # Main gameplay loop.
        while True:
            if bankroll <= 1e-3: break  # we lost.
            if curr_bet > bankroll:
                # If we don't have enough for the planned bet
                # just bet everything we have.
                curr_bet = bankroll
            if bankroll >= GOAL:
                wins += 1
                break  # we won.
            # place a bet.
            if random.random() < WIN_PROB:
                # won this round.
                # Add to our bankroll and go back to default bet size.
                bankroll += curr_bet * (WIN_MULTIPLE - 1)
                curr_bet = STARTING_BET
                # lost this round.
                # Subtract from bankroll and scale up the bet size.
                bankroll -= curr_bet
                curr_bet *= BET_SCALAR
    return wins

def win_directly(num_trials):
    wins = 0
    for trial_id in range(num_trials):
        bankroll = STARTING_BALANCE
        while True:
            # how much do we need to bet in order to win right away?
            bet = (GOAL - bankroll) / (WIN_MULTIPLE-1)
            bet = min(bet, bankroll)
            if random.random() < WIN_PROB:
                bankroll += bet * (WIN_MULTIPLE-1)
                if bankroll >= GOAL - 1e-3:
                    wins += 1
                bankroll -= bet
                if bankroll <= 1e-3:
    return wins

TRIALS = 1_000_000

This script simulates the game 1 million times using 2 different strategies.

The first strategy ("sim_scaling" in the code) is the one you described. My code outputs an approximate success probability of 0.482217, i.e. around $\boxed{48.2 \%}$.

The "win_directly" strategy is an alternate version I've added that works by always trying to reach the goal on the very next bet. For example, this strategy will initially bet $\$4.21$ since that's the minimum amount that could let us win right away. If we lose the first round then we have $\$95.79$ remaining, so in the second round we'll bet approximately $\$4.39$ since that would let us get to $\$200$ if we win. And so on. With this strategy, the 1 million trial simulation finds approximate success probability 0.495227, or $\boxed{49.5 \%}$.

Proving an upper bound

No matter what strategy we pick, the success probability will always be $< 50\%$. To see this, notice that all your bets are negative expected value (because win chance $*$ win amount = $.04 \cdot 24.75 = 0.99$ which is less than $1$). This means that as long as you place at least one bet, the expected value of your bankroll at the end must be $< 100$. So we know $$\begin{align} 100 &> E[\text{bankroll at end}] \\ &= \sum_d P[\text{end up with } d \text{ dollars}] \cdot d \\ &\ge 200 \cdot P[\text{end up with } 200 \text{ dollars}] \end{align}$$ and therefore $$\begin{align} 200 \cdot P[\text{end up with } 200 \text{ dollars}] &< 100 \\ P[\text{end up with } 200 \text{ dollars}] < \frac 1 2. \end{align}$$

This type of thinking is what led me to guess that the "win directly" strategy would perform better than your proposal. The expected value of our bankroll is always $100 - \frac{\text{sum of all bets so far}}{100}$. So in general it seems best to give ourselves chances to win while keeping the sum of all bets as small as possible. The odds are stacked against us in the long run, so it's best to just bet big and hope to get lucky once. This is very much not a proof though; I suspect my proposed strategy is nearly optimal but I don't know whether it is actually optimal.

  • $\begingroup$ I don't believe your analysis of the success probability is correct. While players loses their whole bet when they lose, this only occurs with probability $\ 0.96\ $. The *expected* earnings per dollar bet are $$0.4\times24.75-0.96=0.03$$ dollars, which is advantageous to the player. This means that with sufficiently small bets, he or she can make the probability of doubling the initial balance arbitrarily close to $\ 1\ $. If the player simply bets $\ 0.05\ $ every time, then by my calculation the probability that he or she will double the balance is about $\ 1-3.5\times10^{-36}\ $. $\endgroup$ Commented May 15, 2023 at 17:51
  • $\begingroup$ @lonzaleggiera Please see my new edit (new text at the top). OP's question is ambiguous and we have interpreted it differently. My edit explains why I thought my interpretation is more likely to be what they intended, but it's totally possible that yours is the intended one. I'm upvoting your answer; both answers seem useful to me even though they're answering different questions. $\endgroup$ Commented May 15, 2023 at 19:37
  • $\begingroup$ Thank you for pointing out the ambiguity, which I should have noticed. My apologies for not having done so. $\endgroup$ Commented May 16, 2023 at 1:25
  • $\begingroup$ I also agree that with the system of betting described in the question, your interpretation would make more sense. However, there's also a contraindication in the OP's calculation at the end of the question. Under your interpretation, the relevant quantity for working out whether the player has come out ahead after a series of $101$ losses followed by a win would be $\ 4.263\times2\color{red}{3}.75\approx101.25\ $, rather than $\ 4.263\times24.75\approx105.5\ $. $\endgroup$ Commented May 16, 2023 at 3:39
  • 1
    $\begingroup$ Okay, noted. Thanks! $\endgroup$
    – Clarity
    Commented May 25, 2023 at 8:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .