Skip to main content
All posts
·by TradeFlow Quantum
analyticseducationexpectancy

The trading expectancy formula (and why win rate lies to you)

Expectancy = (win% × avg win) − (loss% × avg loss). It's the one number that tells you whether an approach makes money. Win rate on its own tells you almost nothing.

Win rate is the stat traders quote and the stat that means the least. A 40% win rate at +2R wins and −1R losses prints money. A 70% win rate at +1R wins and −3R losses bleeds the account. Both traders can describe their own record honestly and reach opposite conclusions, because win rate on its own is only half the equation.

Expectancy is the other half, folded in.

Quick answer: expectancy = (win% × avg win) − (loss% × avg loss). It's the average result you can expect per trade. Positive means the approach makes money over enough trades. Negative means it loses money no matter how carefully you size positions. TradeFlow Quantum computes it from your imported trades.

The formula

Expectancy per trade = (win rate × average win) − (loss rate × average loss), where loss rate is just 1 − win rate and average loss is entered as a positive number.

Worked example. You win 40% of trades. Your average winner is $600. Your average loser is $250. Expectancy = (0.40 × 600) − (0.60 × 250) = 240 − 150 = +$90 per trade. Over 100 trades that's roughly +$9,000, before commissions and slippage.

Now flip it. You win 70% of trades, average winner $150, average loser $400. Expectancy = (0.70 × 150) − (0.30 × 400) = 105 − 120 = −$15 per trade. Seven winners out of ten, and the account still goes down. This is the single most common way a trader misreads their own record.

Expectancy in R, not dollars

Divide expectancy by your average loss and you get expectancy in R — the same number with the dollars stripped out. The first example above is +$90 ÷ $250 = +0.36R per trade. That figure survives a change in account size, so the trade you took at $200 risk in 2024 and the trade you take at $2,000 risk in 2026 are directly comparable.

If you already track R-multiples per trade, expectancy in R is just the average of your R column. Nothing more complicated than that.

The breakeven win rate — the number that reframes the argument

For any payoff ratio (average win ÷ average loss), there's a win rate below which you lose money and above which you make it: breakeven win rate = avg loss ÷ (avg loss + avg win).

  • Payoff 1:1 — you need to win more than 50% of the time.
  • Payoff 2:1 — you need to win more than 33.3%.
  • Payoff 3:1 — you need to win more than 25%.
  • Payoff 0.5:1 (winners half the size of losers) — you need to win more than 66.7%, every month, forever.

That last row is where most struggling traders live. Cutting winners early and letting losers run pushes the payoff ratio below 1, which quietly moves the bar for a profitable win rate above what the strategy can actually produce. The fix is the payoff ratio, not more setups.

How many trades before the number means anything

Expectancy computed over 10 trades is noise — one outlier winner moves the average win enough to flip the sign. Over 100 trades it starts to carry information. That's not a precise threshold, it's an order of magnitude: don't act on an expectancy figure from a two-week sample.

The related trap is computing expectancy across everything at once. A trader with one +EV setup and two −EV setups can show a small positive expectancy overall and never notice that two of the three should be dropped. Compute it per setup.

Three ways the number gets computed wrong

  • Excluding scratches. Breakeven trades are neither wins nor losses, but they still consumed a trade slot. Dropping them inflates both win rate and average win. Count them in the denominator.
  • Ignoring commissions and fees. Expectancy from gross P&L can be positive while net is negative — most likely for high-frequency, small-payoff approaches, which is exactly where the margin is thinnest.
  • Mixing planned and realized numbers. Your intended R:R belongs in a pre-trade plan. Expectancy is a backward-looking measurement of what actually happened. Feeding planned targets into it produces a number that describes your intentions, not your account.

What positive expectancy does and doesn't buy you

It does not mean the next trade is a winner, or that this month is green. It means that if the sample is representative and you keep taking the same trades at the same size, the arithmetic runs in your favour over enough repetitions.

It also says nothing about survival. A +0.4R expectancy at 5% risk per trade can still hit a losing streak that ends the account before the edge arrives. Expectancy tells you whether an edge exists; position sizing decides whether you're around to collect it. Those are two separate calculations — the risk-of-ruin primer covers the second.

How TradeFlow Quantum computes it

Inside the app it is computed two ways, doing two different jobs.

Inside the app, /analytics/risk computes expectancy from your actual imported trades rather than from numbers you typed, alongside win rate, average R, profit factor and Sharpe. Because it's derived per trade set, the same metrics recompute for any filtered slice — so you can read expectancy for one setup instead of your whole history. The replay view puts two slices side by side and shows both metric sets at once, which is the fastest way to test "is this setup actually carrying the account."

One honest limit: expectancy is only as good as the trades you logged. If you skip the losers — and skipped losers is the most common gap in any journal — the number will look better than your broker statement. Import from the broker rather than typing trades in by hand and that failure mode goes away on its own.

Not financial advice. This post reflects the author’s opinion based on publicly-available information at the time of writing. Mention of third-party products is not an endorsement; product features and prices change over time. Past performance does not guarantee future results.