TopStreaksTopStreaks

5-Factor Streak Algorithm

How we calculate the probability that a streak will continue or end. Our algorithm analyzes multiple aspects of each upcoming match to produce transparent, data-driven estimates.

The 5 Factors

1. Regression to Mean (40% weight)

Statistical principle: longer streaks are more likely to break. The algorithm assigns continuation scores based on streak length:

  • ≤5 games: 70% continuation score
  • 6-7 games: 65% continuation score
  • 8-10 games: 55% continuation score
  • 11-12 games: 45% continuation score
  • 13-15 games: 35% continuation score
  • 16-20 games: 25% continuation score
  • 20+ games: 15% continuation score

2. Opponent Strength (25% weight)

Based on the opponent's current league position. The algorithm calculates a normalized position score:

Formula: (1 - normalizedPosition) × 100

Example: Facing the 1st place team (out of 20) = 95 score (very hard opponent). Facing the 20th place team = 0 score (easy opponent).

3. Venue Context (15% weight)

Considers whether the streak was built at home or away, and where the next match is played:

  • Home streak playing at home: 85 score (boost)
  • Home streak playing away: 20 score (penalty)
  • Away streak playing away: 85 score (boost)
  • Away streak playing home: 20 score (penalty)
  • "All" scope: 60 score (neutral)

4. Head-to-Head History (10% weight)

Analyzes the last 5 meetings between these two teams and calculates how often the streak type was maintained:

For example, if a team is on a win streak and won 4 of the last 5 meetings vs this opponent, the H2H score would be 80% (4/5 matches).

The algorithm checks the specific streak type (win, BTTS, over 2.5 goals, etc.) in those historical matches.

5. Recent Form (10% weight)

Evaluates the team's performance in their last 5 finished matches:

  • Win = 3 points
  • Draw = 1 point
  • Loss = 0 points

Maximum score = 15 points (5 wins). Score = (actual points / 15) × 100

Final Calculation

The final probability is calculated using weighted average:

probability = (regressionScore × 0.4) + (opponentScore × 0.25) + (venueScore × 0.15) + (h2hScore × 0.1) + (formScore × 0.1)

The result is then:

  • Clamped between 10% and 90% (to avoid extreme values)
  • Rounded to the nearest whole number
  • Displayed as "Continue Probability"
  • End Probability = 100% - Continue Probability

Example Calculation

A team with an 8-game home win streak, playing the 15th place team (out of 20) at home, with 3 wins in last 5 H2H meetings, and recent form of 9/15 points:

  • Regression (8 games): 55% × 0.4 = 22%
  • Opponent (15th/20): 25% × 0.25 = 6.25%
  • Venue (home/home): 85% × 0.15 = 12.75%
  • H2H (3/5 wins): 60% × 0.1 = 6%
  • Form (9/15): 60% × 0.1 = 6%

Total: 22 + 6.25 + 12.75 + 6 + 6 = 53% continue probability (47% end probability)

Important Notes

  • Probabilities are estimates based on historical data and statistical models
  • Past performance does not guarantee future results
  • These probabilities are used to calculate implied odds and expected value for betting
  • The algorithm is continuously refined based on match outcomes
  • Probabilities are updated every 30 minutes as new data becomes available