Skip to main content

Profit Factor: Formula, Examples and Its Limits

Profit factor looks like a verdict and behaves like a ratio of two sums. Worked lists show where it misleads.

3 Nov 2026 · 6 min read

On this page

Profit factor is gross profit divided by gross loss. Add up every winning trade, add up every losing trade as a positive number, and divide. Above 1 means the winners outweighed the losers in total, exactly 1 is break-even, and below 1 means the losers were bigger. It is easy to compute and it hides more than it shows, as the lists below make plain.

The formula

Profit factor = gross profit ÷ gross loss, with both in the same unit: R, or money in one currency. Costs belong inside each trade's result before you add up, so a trade that gained 3 pips and paid 4 pips of spread is a loss. Profit factor counts size as well as frequency: one large loss can outweigh many small wins in the denominator.

Four lists, four disagreements

These are made-up trade lists in R, to show that profit factor, win rate and expectancy do not rank strategies the same way. This is arithmetic, not advice.

ListMade up asWin rateGross profitGross lossProfit factorExpectancy
P14 wins of +0.5R, 6 losses of −1R70%7.0R6.0R1.17+0.05R
Q5 wins of +3R, 15 losses of −1R25%15.0R15.0R1.000.00R
R8 wins of +2R, 12 losses of −1R40%16.0R12.0R1.33+0.20R
S3 wins of +2R, 1 loss of −1R75%6.0R1.0R6.00+1.25R
  • P wins 70% of the time and has a profit factor of 1.17, which looks comfortable. Its expectancy is only +0.05R a trade, so a cost of 0.05R per trade takes it to zero.
  • Q wins one trade in four and sits at exactly 1.00: break-even, whatever the win rate suggests.
  • R wins less often than P, 40% of the time, and has the higher profit factor (1.33) and the higher expectancy (+0.20R).
  • S has the highest profit factor on the page, 6.00, from 4 trades. One more loss moves it, so the number carries almost no information. Profit factor does not know how many trades produced it; see how many trades are enough.

Profit factor and expectancy are linked: expectancy = (profit factor − 1) × loss rate × average loss. For list R that is (1.33 − 1) × 0.60 × 1.00 = +0.20R, the same +0.20R as the table. A profit factor above 1 and an expectancy above 0 are the same statement; they differ in what else they tell you, and in whether they are in units you can act on. Expectancy reads in R per trade. Profit factor reads as a ratio.

One list, one trade that carries it

Here are 20 made-up results in R, in the order they happened: −1.0, −1.0, +2.5, −1.0, −1.0, −1.0, +0.8, −1.0, −1.0, +1.2, −1.0, −1.0, +9.0, −1.0, +0.6, −1.0, −1.0, +1.5, −1.0, −1.0.

VersionTradesGross profitGross lossProfit factorExpectancy
All trades2015.6R14.0R1.11+0.08R
Without the best trade (+9.0R)196.6R14.0R0.47−0.39R

With every trade, profit factor is 1.11: 15.6R ÷ 14.0R. Take out the one +9.0R result and it falls to 0.47, with an expectancy of −0.39R a trade. The whole positive result rested on one trade. That is not a reason to throw the trade away; it is a reason to compute the figure both ways whenever one result is much larger than the rest.

What profit factor cannot tell you

  • It ignores sample size. Four trades and four hundred can give the same ratio.
  • It is sensitive to outliers. One large winner, or one large loser, can swing it, as above.
  • It says nothing about the path. Two lists with the same profit factor can have very different losing runs and drawdowns. Read it beside the maximum drawdown.
  • There is no universal good number. Above 1 after costs is the only line the formula draws. Anything higher depends on the market, the number of trades and how you size.

How to compute your own

  1. List every closed trade with its result after costs, in R or in one currency.
  2. Sum the winners; sum the losers as a positive number.
  3. Divide, then compute it again without your single best trade.
  4. Put the expectancy and the trade count next to it, always.

We're working on a free journal and a backtester, with no date yet. Today Trepeat is a trade copier for MT4, MT5 and cTrader, currently on demo accounts, and you can add notes, a grade and screenshots to any copied trade once it closes, with a calendar of your results.

The journal exports to Excel (.xlsx) and does not calculate profit factor, expectancy or any other metric today, so the sums above run in a spreadsheet on that export. See the journal documentation. Defined terms are in the glossary, and the metrics overview shows where this one sits.

Written by the Trepeat team.

Profit Factor — common questions

What is profit factor in trading?

Gross profit divided by gross loss, both taken as positive numbers over the same set of trades. Above 1 means the winners outweighed the losers in total; exactly 1 is break-even.

What is a good profit factor?

The formula draws one line, 1, after costs. Above it depends on how many trades produced the number, how large the biggest winner is, and how deep the losing runs were, so no single figure is good in itself.

How are profit factor and expectancy related?

Expectancy = (profit factor − 1) × loss rate × average loss, so a profit factor above 1 and an expectancy above 0 say the same thing. Expectancy is per trade; profit factor is a ratio.

Does Trepeat calculate profit factor?

Not today. You add notes and a grade to a copied trade once it closes, and the journal exports to Excel (.xlsx), where the sums run in a spreadsheet.

All questions — pricing, the trial, copying and safety — are in the Help Centre. Still stuck? Email support@trepeat.com.

Related guides

More guides

Trade once. Repeat everywhere.

Free trial on cTrader1 week · up to 3 accounts · no card

MT4 and MT5 connect as soon as you subscribe.