{"slug":"how-long-a-losing-streak-is-normal","qid":"streak_odds_by_sample_size","label":"Chance of at least one five loss run at a 70 percent win rate, by series length","post_title":"How Long a Losing Streak Is Normal","post_url":"/blog/how-long-a-losing-streak-is-normal#q-streak_odds_by_sample_size","columns":["series_length","pct_run_of_5"],"rows":[{"series_length":"50 trades","pct_run_of_5":7.659},{"series_length":"100 trades","pct_run_of_5":15.256},{"series_length":"200 trades","pct_run_of_5":28.627},{"series_length":"400 trades","pct_run_of_5":49.373},{"series_length":"1000 trades","pct_run_of_5":81.931}],"shape":"ranking","sql":"WITH 0.70 AS win_rate\nSELECT\n    concat(toString(n_trades), ' trades') AS series_length,\n    round(100 * (1 - arraySum(arrayFold(\n        (run_mass, trade) -> arrayPushFront(\n            arrayMap(mass -> mass * (1 - win_rate), arrayPopBack(run_mass)),\n            win_rate * arraySum(run_mass)),\n        range(n_trades),\n        [1.0, 0.0, 0.0, 0.0, 0.0]))), 3) AS pct_run_of_5\nFROM\n(\n    SELECT arrayJoin([50, 100, 200, 400, 1000]) AS n_trades\n)\nORDER BY n_trades","computed_at":"2026-08-17T15:25:34.003610+00:00","elapsed":0.040586867}