A green month and a working system are different things. One good trade can carry a month, and a run of ordinary losses can bury a system that works. Account balance answers the question "what happened", and it cannot answer "does this repeat".
Two numbers answer the second question: the R-multiple of each trade, and the expectancy those R-multiples average out to. Neither predicts the next trade. Both describe what the trades you already took were worth per unit of risk, which is the only version of the question that has an answer.
A trading edge is arithmetic
An edge is a positive average result per trade, measured over enough trades that one or two of them cannot set the average. It has two components:
- Win rate. The share of trades that finish in profit.
- Average R-multiple. The size of the winners and the losers, each measured against what you risked.
Neither is meaningful on its own. A 40% win rate clears breakeven when winners are three times the size of losers: 0.40 x 3 - 0.60 = +0.60R a trade before costs. A 70% win rate loses money when the losers are large enough.
R-multiples
R is the risk you took: the distance from your entry price to your stop, in currency per share. The R-multiple of a trade is the result divided by that risk.
A worked case:
- Buy at $100, stop at $95. The risk, 1R, is $5 per share.
- Exit at $115. The profit is $15, so the trade is +3R ($15 / $5).
- Stopped at $93 instead. The loss is $7, so the trade is -1.4R ($7 / $5).
The last line is the one worth noticing. A stop at $95 does not fix the loss at $5. Slippage or a gap fills you lower, and the trade costs more than 1R.
Why R-multiples beat dollar profit and loss
Dollars ignore both position size and share price.
A $500 profit on a $50,000 position where you risked $2,000 is +0.25R. The same $500 on a $5,000 position where you risked $200 is +2.5R. The account gained the same amount both times, and the first trade put ten times as much at risk to get it.
That is what R-multiples normalise. A +2R trade on a $10 stock and a +2R trade on a $200 stock are the same result in the only unit that compares them.
How to calculate expectancy
Expectancy is the average result per trade, expressed in R.
Expectancy = (win rate x average win in R) - (loss rate x average loss in R)
A worked example:
- Win rate: 45%, so the loss rate is 55%
- Average winner: +2.1R
- Average loser: -0.9R
Expectancy = (0.45 x 2.1) - (0.55 x 0.9) = 0.945 - 0.495 = +0.45R per trade
At $200 of risk per trade, that is $90 per trade of expected value, before commission, spread and slippage. Costs come out of the $90, and at high trade frequency they are not a rounding error.
A positive expectancy says the trades you have already taken averaged a gain per unit of risk. A negative one says they averaged a loss. Neither says what the next trade does.
How many trades before the number means something
There is no trade count at which an average becomes true. What changes with sample size is the width of the interval around it: with few trades the figure moves a long way when one more trade lands, and with many it moves less.
Two ways to handle that without inventing a threshold. First, look at the median alongside the mean, because the median ignores outliers at any sample size. Second, let the interval itself tell you: a confidence interval around your win rate narrows as trades accumulate, and it either includes the breakeven rate for your reward ratio or it does not.
This is also why a trading journal is the prerequisite. You cannot compute either number from trades you did not record.
Win rate and R-multiple work together
There is no correct win rate. Different approaches land in different places, and each can carry a positive expectancy.
High win rate, small R-multiple
Win often, win small. Take a 65% win rate with an average winner of +0.8R and an average loser of -1.0R:
Expectancy = (0.65 x 0.8) - (0.35 x 1.0) = 0.52 - 0.35 = +0.17R
Positive, and thin. A small change in either input moves it towards zero, and a stretch of larger-than-usual losers does it faster than a stretch of smaller winners.
Low win rate, large R-multiple
Lose often, win large. Take a 35% win rate with an average winner of +3.5R and an average loser of -0.9R:
Expectancy = (0.35 x 3.5) - (0.65 x 0.9) = 1.225 - 0.585 = +0.64R
Two trades in three lose money, and the expectancy is nearly four times the first example's. The cost is sitting through the losing runs that a 35% win rate produces.
Five combinations, same arithmetic
Each row below is a worked example rather than a measured result.
| Win rate | Avg win (R) | Avg loss (R) | Expectancy (R) |
|---|---|---|---|
| 65% | +0.8R | -1.0R | +0.17R |
| 55% | +1.3R | -0.9R | +0.31R |
| 45% | +2.1R | -0.9R | +0.45R |
| 35% | +3.5R | -0.9R | +0.64R |
| 25% | +5.0R | -1.0R | +0.50R |
The lowest win rate in the table does not produce the lowest expectancy, and the highest does not produce the highest. Win rate alone does not decide the result. The three inputs together do.
What to record per trade
Four fields produce every number above:
- Entry price
- Stop price, which defines 1R
- Exit price
- The resulting R-multiple
From those, four rolling figures are worth keeping:
- Win rate over your recent trades, on a window you fix in advance
- Average winner and average loser in R, kept separate
- Expectancy, recalculated as trades close
- The distribution of R-multiples, which shows whether the average came from a cluster or from two outliers
Swingfolio's trading performance tracker computes these from the trades you log. Three details are worth knowing before you read its figures.
The expectancy tile is in currency, not R. The analytics header shows a tile labelled Expect, and it prints an amount per trade in your display currency rather than an R figure. It is the same formula with money in place of R.
Break-even trades count in the denominator. A trade that finishes at zero is neither a win nor a loss, so it lowers both the win rate and the loss rate without entering either average. Win rate and loss rate therefore do not add to 100% once you have a break-even trade.
The average R-multiple card is explicit about its sample. It prints the mean and the median side by side, with a "Low sample" badge until 20 closed trades carry a computable R-multiple. From 20 trades on, the mean trims the most extreme 5% at each end, and the raw average appears beside it whenever the two differ. A separate "R-Multiple Distribution" card shows the spread the average came from.
On the Behavioral tab there is also an "Edge Confidence" card, which needs at least five closed trades and at least one carrying an emotion, a rule-compliance record or a reflection tag. It prints a p-value, a confidence interval around your win rate, and a "Trades needed" row reading either a number or "Sufficient". That row is a sample-size estimate for a win rate above 50%. At or below 50% it falls back to a fixed target, so it does not recognise a low win rate paired with large winners.
Four things the numbers do not say
"A high win rate means I have an edge"
Win 80% of trades with an average loser four times the average winner, and the expectancy is 0.8 x 1 - 0.2 x 4 = 0. Exactly break-even before costs, and negative after them. The win rate carries no information until you put the two averages beside it.
"I lost money this month, so the system is broken"
A positive expectancy does not distribute itself evenly across months. Take the 35% win rate above. The loss rate is 65%, so any given run of five trades comes out all losses with probability 0.65^5 = 0.12.
The check is whether the expectancy over your whole record has changed, not whether one month was red. If it has, the next question is which input moved: the win rate, the average winner, or the average loser.
"Aim for the largest R-multiple you can"
Raising the target raises the reward per winner and lowers the share of trades that reach it. Which effect wins depends on the size of the moves the strategy catches. Recording where each winner stopped going up is how you find out.
Set the planned ratio with a risk-reward calculator before the trade, then compare it against the R-multiples you realised.
"Expectancy tells me what I will make"
It is an average of what already happened, per unit of risk. Multiplying it by a number of future trades produces a figure with no more authority than the sample it came from. It also makes no allowance for your own behaviour changing as the account balance does.
Questions traders ask about measuring an edge
What counts as a good expectancy?
Positive, after costs, over a sample where one trade cannot flip the sign. There is no published tier that makes +0.3R good and +0.15R bad. The comparison that does work is one of your own strategies against another, over the same period and the same measurement.
How many trades do I need before expectancy is reliable?
Reliability is a range, not a switch. The practical version of the question is whether the interval around your win rate still includes the breakeven rate for your reward ratio. At 2:1, that breakeven rate is 1 / (1 + 2) = 33.3%; at 3:1 it is 1 / (1 + 3) = 25%. While the interval straddles it, the sample has not separated your edge from chance, whatever the point estimate says.
Can a winning trade have a negative R-multiple?
No. The R-multiple is the result divided by the initial risk, so a trade that made money has a positive one. A trade can make money and still have a poor R-multiple: +0.2R means you made a fifth of what you put at risk.
What is the difference between an R-multiple and a risk-reward ratio?
The risk-reward ratio is planned. It is the intended target divided by the intended risk, so a $10 target with a $5 stop is 2:1.
The R-multiple is measured. It is the result divided by the risk the trade carried. You can plan 2:1 and exit at +1.2R, or hold and realise +3.5R. Set the plan with a risk-reward calculator and read the result with an R-multiple calculator. The gap between the two is your execution.
Where to start
Take your last twenty closed trades and add one column: the R-multiple of each. Then work out the expectancy from the four inputs: win rate, loss rate, average winner in R, average loser in R.
If the answer is negative, you now know which of those inputs to change. If it is positive, you know what the number is before the next trade rather than after it. Start the 30-day trial.
