What is profit factor in trading, and what it cannot tell you

Profit factor is gross profit divided by gross loss. Above one you made money. It is quoted everywhere and misread almost as often - here is what it measures, what it hides, and the number to read beside it.

3 min read

Backtestingprofit factormetricsbacktesting

Also available in Bahasa Indonesia

Profit factor is the sum of everything your winning trades made, divided by the sum of everything your losing trades lost.


profit factor = gross profit ÷ gross loss

If it is above 1.0, the record made money. Below 1.0, it lost. At exactly 1.0 it broke even before you count the hours.

A worked example

A hundred trades. Forty-five won, averaging 180. Fifty-five lost, averaging 100.


gross profit   = 45 × 180 = 8,100
gross loss     = 55 × 100 = 5,500
profit factor  = 8,100 ÷ 5,500 = 1.47

This record loses more often than it wins and still makes money, because the wins are larger than the losses. That is the thing profit factor is good at showing and win rate hides completely: a 45% win rate sounds like a losing strategy, and it is not.

Try it with your own numbers →

What a good profit factor is

Systems that survive real fees, slippage and funding tend to sit between 1.2 and 2.0. Below 1.2 the edge is thin enough that a small change in costs erases it. Above 3.0 on more than a few dozen trades, check for a mistake in the backtest before you check your bank balance - look-ahead, no costs, or a favourable tie-break usually explain it.

What it cannot tell you

How many trades it rests on. A profit factor of 1.47 on a hundred trades and on ten thousand trades are the same number and entirely different facts. On a hundred, a handful of lucky trades could have produced it. On ten thousand, luck has had every chance to wash out and has not.

This is the flaw in every single-number metric, and profit factor has it badly because the ratio hides the count entirely. Win rate at least hints at a sample; profit factor does not.

How it was distributed. A profit factor of 1.5 from a hundred small wins and a hundred small losses is a steady system. The same 1.5 from one enormous win and ninety-nine small losses is a system that made all its money on a day that may never come again.

The number to read beside it

NusaTerminal reports profit factor on every backtest, with the trade count next to it, and then a third figure that combines the two: the lower bound of the average R at 99% confidence - the worst average the data is still consistent with, given how many trades there were and how much they varied.

A high profit factor on a small sample has a lower bound near or below zero. A modest profit factor on a large sample has a lower bound solidly above it. The automation engine reads the lower bound, not the profit factor, before it is allowed to trade, and that ordering is the whole point.

Profit factor and R

If every trade risked the same amount - which is how a sized strategy works - profit factor is simply the sum of the positive R-multiples over the sum of the negative ones. Average R is the same information per trade. A strategy averaging +0.10R with stops at −1R has a profit factor a little above one; the two numbers cannot disagree, they are the same measurement in different units.

What an R-multiple is →

← Backtesting