Trading Expectancy: The One Number That Says If Your Strategy Works
If you get one number to judge your trading by, this is the one. Expectancy tells you what an average trade is worth, which is the only question that matters, and it moves whenever any part of your trading changes. A win rate cannot do that. Neither can profit factor.
It is also the number people most often compute on the wrong data, so half this post is about the ways it lies.
The formula
Expectancy is the average outcome of a trade, measured in R. One R is the amount you had at risk when you entered, so a trade that made twice what you stood to lose is +2R and one that hit your stop is -1R.
expectancy = (win rate x average winner in R) minus (loss rate x average loser in R)
Say you win 40 percent of the time, your winners average 2.2R, and your losers average 1.0R.
(0.40 x 2.2) minus (0.60 x 1.0) = 0.88 minus 0.60 = +0.28R per trade
Risk $200 a trade and that is $56 expected per trade, before you have argued about anything. Take 40 trades a month and the strategy is worth about $2,240 a month at that size, with an enormous amount of noise around it that we will get to.
If you would rather not compute it by hand, the shortcut is the average: add up every closed trade's R and divide by the number of trades. That is the same number. The long form is only useful because it shows you which half is doing the work.
Use R, not dollars
Expectancy in dollars mixes two things that should stay apart: whether the strategy is any good, and how big you were betting.
A trader who made $50 a trade while risking $500 is doing something much worse than a trader who made $30 a trade while risking $100. In R it is obvious at a glance, 0.1R against 0.3R. In dollars the first one looks better, and if you size up during a good run and down during a bad one, your dollar expectancy will tell you a story about your timing that is really a story about your position sizing.
There is one exception worth naming. If your risk per trade is genuinely constant, dollars and R carry the same information and dollars are easier to talk about. Very few discretionary traders are that disciplined, and you can check whether you are by looking at whether your average loser is close to 1.0R.
What real expectancy looks like
Ten Aurafy accounts hold 50 or more closed trades carrying a recorded stop. Here is what they report, and the list is more instructive for what is wrong with it than for what is right.
| Trades | Expectancy | Win rate | Reading |
|---|---|---|---|
| 65 | +736R | 86.2% | Impossible |
| 177 | +5.24R | 44.6% | Impossible |
| 77 | +1.86R | 31.2% | Implausible |
| 63 | +0.36R | 60.8% | Strong |
| 50 | +0.19R | 78.6% | Good |
| 68 | +0.12R | 33.9% | Good |
| 85 | +0.08R | 38.6% | Marginal |
| 862 | +0.06R | 43.8% | Marginal |
| 66 | +0.00R | 33.3% | Break even |
| 50 | -0.05R | 51.7% | Losing |
Ten accounts is not a study and I am not presenting it as one. But two things in it are worth your time.
The seven believable accounts run from -0.05R to +0.36R, and six of the seven sit below +0.2R. That is what a real edge looks like. If you have been told to expect 0.5R a trade, that expectation is going to make you abandon a working strategy. A trader averaging 0.1R over 500 trades a year at $200 risk makes $10,000 and is doing fine.
Notice too that the only losing account on the list wins 51.7 percent of its trades, which is a better hit rate than three of the profitable accounts manage. That is the entire argument for looking at expectancy instead of win rate, sitting in one table.
Three of those numbers are wrong, and yours might be
An expectancy of +736R is not an edge. It is a broken denominator.
R is profit divided by initial risk, and initial risk is the distance from entry to stop. If that distance is recorded as almost nothing, you are dividing by almost nothing, and R explodes. It happens when a stop is logged at or near the entry price, when a stop is filled in after the trade was moved to breakeven, or when the field is left at a default the trader never looked at.
The tell is simple. Any expectancy above about 0.5R over a real sample is a data problem until proven otherwise. Nobody sustains it. A trader who genuinely averaged 1R a trade would double a properly sized account every few weeks, and you would have heard of them.
It is also worth knowing how much of this data does not exist at all. Of 4,243 closed trades on the system, 1,908 carry an R multiple. The other 55 percent have no stop recorded, so their expectancy in R cannot be computed at any price. That is the real cost of not writing down where the trade was wrong: not the discipline lecture, just that half your history cannot answer the most useful question you have.
Two checks before you trust your own figure:
- Is your average loser near 1.0R? It should be, because that is what a stop is. Much above 1 and you are not honouring stops, and every R in your history is understated. Much below 1 and you are cutting early, which is a different habit with the same effect on the arithmetic.
- Is your biggest winner a sane multiple? One 40R trade in a hundred single-digit ones will drag the mean somewhere it cannot stay. Recompute without your best trade. If the edge disappears, you do not have an edge, you have one good day.
Compute it after costs, or do not bother
Expectancy on gross profit describes a version of your trading in which you trade for free.
The gap is bigger than it sounds, especially on micros. A round turn on MNQ is about $1.22. If you risk $100 a trade, that is 0.012R gone per trade before the market does anything. That is nothing. If you risk $25 on a tight micro stop, the same fee is 0.05R, and against the marginal +0.06R expectancy on the list above, it is most of the edge.
Most journals get this wrong by default, because order exports usually carry no commission column and the tool has to guess. We measured how far the guess is off in what futures commissions actually cost: about a tenth of the reported profit on the trades affected. Fix the fee first, then read your expectancy. Doing it the other way round means recomputing everything.
How many trades before it means anything
Expectancy is an average, and averages over small samples move a lot.
A useful rule: the noise in your measured expectancy falls with the square root of the number of trades. Four times as many trades halves the error bar. That is why 30 trades tells you close to nothing and 300 tells you something real, and why the answer to "has my strategy stopped working" is almost never available as fast as you want it.
Practically: below 50 trades, do not conclude anything. Between 50 and 200, treat the sign as informative and the magnitude as rough. Past 200 in the same market with the same approach, start acting on it. The same reasoning applied to hit rates is in what is a good win rate for futures trading.
A related trap: a positive expectancy does not protect you from long losing runs. At a 40 percent win rate, a run of eight losers turns up about once every 150 trades. That is a normal Tuesday in a working strategy, and it feels exactly like being broken.
Where expectancy actually earns its keep
One number for your whole account is a scoreboard. Split it and it becomes instructions.
- By setup. The single most valuable cut. An account averaging +0.05R is usually one setup at +0.30R and another at -0.20R, and the fix is to stop taking the second one. You cannot see this without tagging trades as you take them.
- By time of day. Most futures traders have one part of the session paying for the rest. Your own clock is the only one that matters here, which is why a general answer about the best hour to trade is worthless.
- By day of week. Less common, but when it shows up it is usually a schedule problem rather than a market one.
- By how you felt. Tag the trades you took while annoyed. The expectancy on that bucket is normally the most persuasive argument for a rule you already knew you needed.
The rule for all four: only cut on something you decided before the trade. Splitting by anything you knew only afterwards fits a story to the outcome, and you will find a pattern in random data every time.
Turning it into a number of dollars
Expected monthly profit is expectancy times risk per trade times trades per month. At +0.1R, $200 risk and 60 trades, that is $1,200 a month.
Two warnings, because this is the calculation people use to quit their job.
It is an average of a very wide distribution, not a salary. A month at half that, or at nothing, is entirely normal and says nothing about whether the edge is still there. And it only holds if the risk per trade stays fixed. Raising size after wins and cutting after losses changes the arithmetic completely, usually against you, because the bigger bets land on the runs you are least able to predict.
If you are trading a funded account, expectancy is also not the constraint. The rules are. A perfectly good expectancy still fails an evaluation if one day breaches the daily loss limit or the equity curve clips the trailing drawdown. Size for the rule, not for the average, and the arithmetic for that is in futures position sizing.
The short version
- Expectancy is your average trade in R. Add every trade's R, divide by the count.
- Real edges live between roughly 0 and +0.35R. Anything above 0.5R is a data error until you prove otherwise.
- Check your average loser is near 1.0R. If it is not, every R you have is wrong.
- Compute it after commissions, or you are measuring a strategy nobody can trade.
- Under 50 trades it means nothing. The value is in splitting it by setup.
Aurafy computes expectancy, average R and the per-setup split from your imported trades, and it is free. Drop a CSV on the homepage to see your own before making an account, or check a single trade's R by hand with the R-multiple calculator.