Win rate calculator: trading expectancy and break-even
Enter the win rate, the average win, the average loss and the fees per trade from your own records to see the expectancy per trade, the win rate at which such trades break even and the profit factor. Free, no sign-up required.
How to calculate trading expectancy
Expectancy is the average result per trade implied by your win rate and your average win and loss. With W the win rate as a fraction, the calculator uses:
Expectancy before fees = W × average win − (1 − W) × average loss
Expectancy after fees = expectancy before fees − fees per trade
Break-even win rate = (average loss + fees) ÷ (average win + average loss)
Profit factor = W × (average win − fees) ÷ ((1 − W) × (average loss + fees))
It also shows the ratio of the average win to the average loss and the expectancy in R, the expectancy divided by the average loss. The break-even formula follows from setting the expectancy after fees to zero. For the same arithmetic on a single planned trade, from entry, stop and target prices, see the risk reward calculator.
Worked example
Hypothetical example: a record with a 45% win rate, an average win of 150, an average loss of 100 and fees of 4 per trade. These are the calculator's default values, not a result anyone should expect.
Expectancy before fees: 0.45 × 150 − 0.55 × 100 = 67.50 − 55.00 = 12.50 per trade. After fees: 12.50 − 4 = 8.50 per trade, or 0.085 R.
Break-even win rate: 100 ÷ 250 = 40% before fees and 104 ÷ 250 = 41.6% after them. Profit factor after fees: 0.45 × 146 ÷ (0.55 × 104) = 65.70 ÷ 57.20 = 1.15.
| Average win ÷ average loss | Break-even win rate |
|---|---|
| 0.5 | 66.67% |
| 1 | 50% |
| 1.5 | 40% |
| 2 | 33.33% |
| 3 | 25% |
Why a win rate alone means little
A win rate says how often trades made money, not how much, so it cannot tell a profitable record from a losing one.
A hypothetical record that wins 70% of the time with an average win of 1 and an average loss of 3 has an expectancy of 0.70 × 1 − 0.30 × 3 = −0.20 per trade, and it would need a 75% win rate just to break even. TradingView's help on its strategy report makes the same point the other way round: a strategy does not need a high win rate if its winners are larger than its losers. A high win rate in an advertisement, with no average loss and no costs next to it, is not evidence of anything; do trading bots work looks at such claims.
Expectancy, profit factor and your platform's report
Strategy reports show the same quantities under other names.
- MetaTrader 5: its testing report calls the average result of one deal the expected payoff and defines the profit factor as gross profit divided by gross loss.
- TradingView: its report lists the percentage of trades that closed with a profit and the profit factor as gross profit divided by gross loss.
If your averages come from the same trades and every trade either won or lost, expectancy equals total net profit divided by the number of trades. When a report's averages already include commission, set the fees field to 0 so they are not counted twice.
Past results are not a forecast
The expected value of a random outcome is a long-run average, and an introductory statistics text puts the limit plainly: probability does not describe short-term results.
Your averages are estimates from a limited number of trades, they change as trades are added, and markets change in between. A positive expectancy computed from past trades does not mean the next trades will be profitable, and a run of losses can be much longer than the win rate suggests. This page shows no projected result over any number of trades.
Which values to enter
- Win rate: winning trades ÷ closed trades × 100, from your own records. The calculator counts every trade that is not a win as a loss, so leave out trades that closed at exactly zero.
- Average win and average loss: before fees, the loss as a positive amount; a minus sign is set aside, and the page says so.
- Fees per trade: commission and other costs of one round trip, or 0 if the averages already include them.
Frequently asked questions
How do you calculate expectancy in trading?
Multiply the win rate by the average win, subtract the loss rate times the average loss, then subtract the fees per trade. At 45%, 150 and 100 with fees of 4, that is 67.50 − 55.00 − 4 = 8.50 per trade.
What win rate do I need to break even?
The average loss plus fees, divided by the average win plus the average loss. With an average win of 150, an average loss of 100 and fees of 4, that is 41.6%.
What is a good win rate?
This page names none. A win rate means little without the average win and loss, and the calculator shows the rate that only breaks even for your figures.
What is the difference between expectancy and profit factor?
Expectancy is the average result per trade in money or in R; the profit factor is gross profit divided by gross loss. A profit factor above 1 goes with a positive expectancy.
Should the average win and loss include fees?
Either works if you are consistent. Enter them before fees and type the fees per trade, or enter them after fees and set the fees field to 0.
Sources
- OpenStax, Introductory Statistics: 4.2 Mean or expected value and standard deviation (opens in a new tab)
- TradingView Help Center: Strategy report, Overview tab (profit factor, profitable trades, max drawdown) (opens in a new tab)
- MetaTrader 5 Help: Testing report (expected payoff, profit factor, drawdown) (opens in a new tab)
This calculator is general information, not tax, legal or investment advice. Results depend on the values you enter; fees, margin rules and tax rules differ by exchange and country and change over time, so check the official source and ask a licensed adviser about your own situation. Sources, checks and corrections: see the editorial policy.
Related guides
Send a short project brief
The form or an email is enough. You do not need to share your rules yet.
- The exchange or platform you use
- What the software should do
- Your target timeline
- Project briefs and business inquiriesinfo@fincodelabs.com
- WhatsApp (messages only)+90 545 697 41 15 (opens in a new tab)