Skip to content
Learn
Sign up

Quantitative Methods & RiskExpectancy, Edge & Sample Size

Expectancy: The Arithmetic of Edge

13 min read

Edge is just expected value, measured honestly

A trading 'edge' is nothing mystical — it is a positive expected value per trade, net of costs. Module 1 gave you the tool (expectation); this lesson turns it into the working formula every desk uses to judge a strategy. The point is to separate two things that beginners constantly conflate: how often you win, and how much you win when you do. Either alone is meaningless. Only their combination — expectancy — tells you whether you have an edge.

Formula

Expectancy per trade

E = (W × R_win) − (L × R_loss)
Heads up

A 70% win rate can be a losing strategy

The second worked example wins 70% of the time and still bleeds $10 a trade, because the rare losses are three times the typical win. Conversely the first example loses 60% of its trades and makes money. Win rate in isolation tells you nothing about edge. Stop quoting it on its own.

Formula

Reward-to-risk ratio and breakeven win rate

b = R_win / R_loss        W* = 1 / (1 + b)
200/100 R
25/100 R500/100 R

At a reward-to-risk of 2.00:1, you break even at a win rate of 33.3%. Win more often than that and your expectancy is positive; win less often and no amount of discipline makes the strategy profitable. Notice how a higher reward-to-risk dramatically lowers the win rate you need — this is why trend-following systems can thrive while winning only 35–40% of the time.

Expectancy

Term

The average profit or loss you can expect per trade over a large sample: E = (win rate × average win) − (loss rate × average loss). Equivalently, per dollar risked: E_R = W·b − L. It is the single number that summarizes whether a strategy has an edge.

expectancy.py
python
1def expectancy(win_rate, avg_win, avg_loss):
2 """avg_loss is a POSITIVE number (the size of a typical loss)."""
3 loss_rate = 1.0 - win_rate
4 return win_rate * avg_win - loss_rate * avg_loss
5
6def breakeven_win_rate(reward_to_risk):
7 return 1.0 / (1.0 + reward_to_risk)
8
9print(expectancy(0.40, 300, 100)) # +60.0 -> edge
10print(expectancy(0.70, 50, 150)) # -10.0 -> no edge
11print(breakeven_win_rate(2.0)) # 0.3333 -> need >33.3% at 2:1
Three lines of arithmetic separate a real edge from a flattering win rate. Always feed in costs (spread, commission, slippage) by shrinking avg_win and growing avg_loss before you decide.
Tip

Costs come out of the edge first

Spread, commission, swap, and slippage are subtracted from every trade before you see a cent of edge. A strategy with E = +$60 gross and $65 of round-trip costs has a negative net expectancy. Always measure expectancy net of realistic costs — the gross number is a fantasy.

Knowledge check

A strategy has a reward-to-risk ratio of 1.5:1. What win rate does it need just to break even (before costs)?