A strategy can win more often than it loses and still drain an account. It can also lose most of the time and remain profitable. Win rate cannot answer the question on its own.
Trading expectancy can. It is the average amount a strategy made or lost per completed trade in the measured sample. The calculator below shows it in money and R, then puts the result beside costs, profit factor, and sample size.
A positive result is evidence, not a forecast. It still depends on clean records, the market period, and whether all costs were included.
Calculate your strategy expectancy
Use trades from one clearly defined setup. Do not mix a five-minute range strategy with a four-hour breakout strategy and call the combined number an edge.
Measured performance
Trading expectancy calculator
Example data is loaded. Replace it with results from one defined setup. The calculator includes break-even trades and average costs.
Replace the sample data with one setup from your journal. Enter gross wins and losses, then average costs separately.
The trading expectancy formula
The familiar version of the formula is:
Expectancy = (win rate x average win) - (loss rate x average loss)
That works when every trade is either a win or a loss and the averages already reflect all costs.
The calculator uses the underlying totals instead. This handles break-even trades and costs more clearly:
Net expectancy = [(wins x average win) - (losses x average loss) - total trading costs] / total trades
Where:
- Total trades = wins + losses + break-even trades
- Total trading costs = average cost per trade x total trades
- Average win is entered as a positive amount
- Average loss is also entered as a positive amount
Break-even trades count in the denominator. They still used capital, time, and usually paid a spread or commission.
To express the result in R:
Expectancy in R = net expectancy in money / average planned risk per trade
One R is the amount the strategy planned to lose if a normal stop was hit. If risk varied, use the average planned risk from the same sample. Do not use the largest loss or the position's margin.
The calculator also shows gross profit factor as a secondary metric:
Gross profit factor = total gross profit / total gross loss
It compares the money made by winners with the money lost by losers before costs. It does not measure drawdown, sample quality, or whether the result survives after fees.
A worked example using completed trades
Consider a sample with these figures:
| Input | Value |
|---|---|
| Winning trades | 34 |
| Losing trades | 48 |
| Break-even trades | 4 |
| Average gross win | $74 |
| Average gross loss | $38 |
| Average cost per trade | $2.80 |
| Average planned risk | $40 |
The calculation is:
- Gross profit: 34 x $74 = $2,516
- Gross loss: 48 x $38 = $1,824
- Estimated costs: 86 x $2.80 = $240.80
- Net expectancy: ($2,516 - $1,824 - $240.80) / 86 = $5.25
- Expectancy in R: $5.25 / $40 = +0.13R
- Gross profit factor: $2,516 / $1,824 = 1.38
Before costs, expectancy was $8.05 per trade. After costs, it fell to $5.25. The 1.38 profit factor confirms that gross winners exceeded gross losers, but only expectancy shows what remained per trade after the entered costs.
I would label this result positive in the measured sample. I would not call the strategy proven. Eighty-six trades can still be dominated by one market period, a few large winners, or inconsistent trade selection.
A negative-expectancy example
Now take 100 trades: 45 wins averaging $42, 55 losses averaging $39, $1.50 average cost, and $40 planned risk.
Gross profit is $1,890 and gross loss is $2,145, so profit factor is 0.88. After $150 in costs, the sample lost $405. Expectancy is -$4.05 per trade, or -0.10R. A 45% win rate looks close to balanced, but the average win is too small to cover losses and costs.
The four numbers I check first
When I review a strategy report, I read these numbers in order.
1. Net expectancy per trade
This is the main result: the average net outcome of each recorded trade. A result close to zero deserves extra suspicion because small errors in costs or fills can change its sign.
The word "net" matters. Gross expectancy of $6 with $7 in average costs becomes -$1. Whatever value the entry rules had did not survive execution.
2. Expectancy in R
Money expectancy reflects the recorded size. R expectancy shows return per unit of planned risk, which makes different account sizes and setups easier to compare. It does not make a volatile strategy safe.
3. Gross profit factor
Profit factor shows whether gross winners outweighed gross losers. Above 1 means they did; below 1 means they did not. A high value can still come from a tiny sample or one large winner, and the gross version does not deduct costs.
If there are no gross losses, the calculator shows No gross losses instead of infinity. That sample may be profitable, but profit factor is not meaningful until losses exist.
4. Cost drag
I want to see how much expectancy existed before costs and how much remained after them.
This matters most at short holding periods. More trades mean more spreads, commissions, relevant financing charges, and exposure to slippage. Leaving them outside the formula makes the result optimistic by design.
Use actual fee records where possible. For spread and slippage, compare the assumed price with the actual fill. If that data is unavailable, label a zero-cost result gross, not net.
How many trades are enough?
There is no honest universal answer such as 30, 50, or 100.
The required sample size depends on how variable the outcomes are and how much estimation error you can accept. NIST's guidance on estimating a mean makes the same point: sample size is linked to variance and the desired margin of error.
A strategy with tightly clustered results may stabilize sooner than one built around rare 8R winners. The second estimate is easier for one outlier to distort.
The calculator uses plain sample labels:
- Below 30 trades: very small sample
- 30 to 99: early estimate
- 100 to 199: more informative, still easy to misread
- 200 or more: useful history, not proof that the edge will persist
These are review labels, not statistical thresholds.
Aggregate inputs cannot produce a reliable confidence interval for expectancy. That requires each trade result because the distribution and standard deviation matter. One hundred results near +0.10R are not equivalent to 99 losses and one extreme winner with a similar mean.
What I distrust in a positive result
Positive expectancy gets my attention. Then I test how easily it breaks.
One trade carries the sample
Remove the best trade and calculate again. If expectancy turns negative, the result may depend on an outlier. Trend-following systems often rely on a few large winners, but that structure needs a larger sample before the mean becomes persuasive.
Several setups were mixed together
An overall +0.15R can hide one good setup and two losing ones. Recalculate by setup and market regime. Add instrument, session, or direction only when the strategy gives you a reason.
Do not keep splitting data until something looks good. Testing many variations on the same history creates selection bias and raises the risk of backtest overfitting.
Costs were estimated too gently
Commission is usually easy to retrieve. Slippage is not. Recalculate with a higher cost assumption. If a small increase removes the edge, the strategy has little room for execution error.
The period was unusually favorable
A trend strategy tested only in a strong trend has not been tested across regimes. Split the history chronologically and keep the final period untouched while developing the rules. It is not a perfect out-of-sample test, but it is better than editing rules against the full history.
The records are hypothetical
Backtests are useful, but they are not live fills. The National Futures Association warns that hypothetical results benefit from hindsight and may not reflect liquidity, slippage, financial risk, or the ability to follow a program through losses. Keep backtested and live expectancy separate.
Break-even win rate is a stress test, not a target
The calculator also estimates the win rate needed to break even with the entered average win, average loss, and cost:
Break-even win rate = (average loss + average cost) / (average win + average loss)
This assumes future trades resolve as wins or losses with similar average sizes. Break-even trades are excluded. A measured win rate of 41% against a 40% break-even rate leaves little room for worse fills or changing conditions.
Use one definition of a trade
Expectancy becomes unreliable when the data changes meaning halfway through. I treat a position from first entry to final exit as one trade, including every partial fill in the final result.
Use the same rule for:
- scaled entries;
- partial profits;
- stop-and-reentry sequences;
- trades closed manually near zero;
- fees charged separately from the fill record.
Write the rule next to the journal. Consistency matters because no universal convention exists.
What expectancy cannot tell you
Expectancy compresses a strategy into one average. That is useful, but much disappears.
It does not show:
- maximum drawdown;
- likely losing streaks;
- time spent in drawdown;
- whether returns depend on one instrument;
- whether position size was tolerable;
- whether the strategy can handle wider spreads;
- whether the edge is weakening;
- whether the trader followed the written rules.
Two strategies can both show +0.20R and behave differently. One may deliver many small gains. The other may wait through long losing periods for a large winner.
I use expectancy as a filter, not a full strategy score. If it is negative after realistic costs, there is no reason to discuss scaling. If it is positive, the next checks are distribution, drawdown, consistency by period, and rule-follow rate.
A practical review order
Use this sequence when you finish a meaningful batch of trades:
- Export completed trades from the journal.
- Separate them by a rule-defined setup.
- Reconcile commissions, spread, slippage, and other relevant costs.
- Calculate net expectancy in money and R.
- Remove the largest winner and calculate again.
- Split the sample into earlier and later periods.
- Compare live results with backtests without merging them.
- Record the date and repeat the same review after the next batch.
Do not change the strategy after every ten trades. But do not defend a negative result because the setup "looks right." The calculator gives you a starting point. The trade-level distribution tells you how much trust it deserves.
