Hy Forum Campers,

It is the time of the month again when MM is a hot topic, noobs are *always *in the green team and everyone is personally targeted by WG whatever. Therefore I decided to run a quick simulation to show the expected number of win/loss streaks over a number of games. The results depend on the assumptions and I chose the numbers based on a prominent "exiled" forum figure. You may guess who.

I assumed:

- WR 62%
- 30 battles per day
- 1% draw rate (average draw rate of 90,000 BlitzStars players)
- Individual battles are "independent" in terms that the result of previous battles do not impact the result of a battle. However, I do
*believe*there IS auto-correlation between consecutive battles since the e.g. results tend to impact players' mood and patience.

Then let the random function (Octave *discrete_rnd()*) to generate battle results with these assumptions and averaged the results over 10,000 simulations. The results are plotted below. The blue curve shows the average number of streaks (win or loss) per a day, the orange once days to meet a curve length of N. Please note, these are NOT numbers from any battles or of any player, but these are simulated results assuming.

The same as data table:

Streak Length |
Streaks per Day |
Days to have a Streak |

1 |
7.8 |
0 |

2 | 3.4 | 0 |

3 | 1.7 | 0.6 |

4 | 0.8 | 1.2 |

5 | 0.5 | 2.1 |

6 | 0.3 | 3.9 |

7 | 0.1 | 6.7 |

8 | 0.1 | 11 |

9 | 0.0 | 20 |

10 | 0.0 | 33 |

11 | 0.0 | 56 |

12 | 0.0 | 91 |

13 | 0.0 | 137 |

14 | 0.0 | 250 |

15 | 0.0 | 500 |

16 | 0.0 | 667 |

17 | 0.0 | 1000 |

18 | 0.0 | 2500 |

19 | 0.0 | 3333 |

20 | 0.0 | 5000 |

As you may notice, one should get one 5 battle win or loss streak every second day and a four battle win or loss streak every day. 8 battle streak happens on average three times a month (every 11th day) and ten battle streak once a month.

If the streaks are in practice more common, there is auto-correlation in play and that can be because of the player or of the game itself. There is more research to come, stay tuned.

Meanwhile if someone has curiosity and bit free time you may experiment yourself. My Matlab / Octave script is below. Octave can be downloaded for free here.

Block Quote

# Win/Loss Streaks

# Canny stats

Nbattles = 30 # battles per day

WR = 62;

N = 10000

max_streak = 20;

log = zeros(max_streak, 2 ) ;

wr = WR/100

dr = 0.01

lr = 1 - dr - wr

for i = 1:N

# simulate Nbattles (1000) battles

battles = discrete_rnd([-1 0 1], [ lr dr wr], [1, Nbattles] ) ;

# Run Length Encoding https://en.wikipedia...length_encoding

a = rle(battles) ;

for j = 1:max_streak

# count streaks of j length

log( j , 2 ) += sum(a{2} == j) ;

endfor

endfor

# calculate averages

log = log ./ N

log( : , 1 ) = 1:max_streak

# days to have a streak length of X

log( : , 3 ) = 1 ./ log( : , 2 )

The RLE function used can be downloaded here.

Also, interesting reading about streaks and probabilities is here.