VALYNOXSTRATEGY RESEARCH TECHNOLOGY
AlphaPrimeAlphaPrime
ACADEMY / Backtesting and validation

Profit factor: formula, what counts as good, and 3 pitfalls

Profit factor is the sum of all winning trades divided by the sum of all losing trades. Above 1.0 the strategy earned more than it lost in the test; about 1.3 to 2.0 after costs is the range many systematic traders accept. The number only means something when read with the trade count, the largest winners, the costs and the drawdown.

By · Published · updated · Editorial policy

Contents
  1. What is profit factor and how do you calculate it?
  2. What profit factor is good?
  3. Can you trust profit factor with few trades or one big win?
  4. Profit factor vs expectancy: what is the difference?
  5. How do commission and slippage change profit factor?
  6. What does profit factor not tell you?
  7. Frequently asked questions
  8. References

What is profit factor and how do you calculate it?

Profit factor is gross profit divided by gross loss: the sum of all winning trades over the sum of all losing trades. A value above 1.0 means the strategy earned more than it lost in the tested period. Many systematic traders look for about 1.3 to 2.0 after costs, but the number only means something next to the trade count behind it.

Gross profit is the total of every trade that closed with a gain. Gross loss is the total of every trade that closed with a loss, written as a positive number. Trades that closed at exactly zero belong to neither total. Think of a shop at the end of the month: all the money that came in from sales divided by all the money that went out. If 1.7 came in for every 1.0 that went out, the profit factor is 1.7. This article has one formula:

profit factor = gross profit ÷ gross loss

Here gross profit is the sum of the winning trades and gross loss is the sum of the losing trades, both taken from the trade list that a backtest replays rules on old prices to produce. Nothing else goes into it: not the account size, not the number of contracts, not the time it took.

Hypothetical example

A strategy closes 100 trades. The 60 winning trades add up to $17,000. The 40 losing trades add up to $10,000. Profit factor = 17,000 ÷ 10,000 = 1.7. The net profit is $7,000, which is the difference between the two totals, not part of the ratio itself.

Profit factor is one total divided by the other: in a hypothetical 100-trade example the winning trades add up to 17 thousand dollars and the losing trades to 10 thousand dollars, so the profit factor is 17 thousand divided by 10 thousand, which is 1.7 Wins ÷ losses = 1.7 Hypothetical: 100 trades Wins $17k Losses $10k $17k ÷ $10k = 1.7 Only the two totals go in. So: use results after costs.
Profit factor is one bar divided by the other: the total of winning trades over the total of losing trades.

Because the same trade list also gives the average win, the average loss and the win rate, it is worth running the list through the free win rate and expectancy calculator at the same time. The later sections explain why the ratio and the dollar figure belong together.

What profit factor is good?

A profit factor of about 1.3 to 2.0 after commission and slippage is the range many systematic traders accept, and no zone means anything without the trade count and the costs behind it. The zones below are rules of thumb that experienced traders use as a first filter, not a law. Pardo (2008) treats profit factor as one evaluation measure among several, to be read with the number of trades and the drawdown, and that is how the table should be used.

Profit factorWhat it usually means after costsWhat to check
Below 1.0The strategy lost money in the tested periodWhether costs were included; a gross result above 1.0 that falls below after costs is common
About 1.0 to 1.3Thin edge; a small rise in slippage or a different period can erase itRerun with double slippage and read it on the out-of-sample part
About 1.3 to 2.0The range many systematic traders accept for a strategy with several hundred tradesTrade count, largest winners, drawdown next to account size
Above about 3.0 on many tradesUnusual; more often an error than an edgeLook-ahead bias, missing costs, same-bar fills, or a trade count too small to judge
Profit factor zones as a rule of thumb after costs: below 1.0 loses money, 1.0 to 1.3 is a thin edge, 1.3 to 2.0 is the range many systematic traders accept, above 3.0 calls for a check for errors; judge every zone with the trade count and the costs Most accept 1.3 to 2.0 Rule of thumb, after costs Below 1.0 Loses money 1.0 – 1.3 Thin edge 1.3 – 2.0 Often accepted Above 3.0 Check for errors Zones are only a first filter. So: judge with trade count, costs.
Profit factor zones and what each one usually means after costs. The scale is a first filter; the trade count and the costs decide.

Two readings of the same number lead to opposite decisions. A profit factor of 1.6 from 800 intraday trades over five years, with costs charged on every trade, is a result worth carrying to the next check. A profit factor of 1.6 from 25 trades, or from a run without commission, is a hint and nothing more. The very high values deserve the most suspicion: a strategy that turns 3.5 on a thousand trades usually used a price it could not have traded at, such as filling on the close of the same bar that produced the signal.

Can you trust profit factor with few trades or one big win?

A profit factor built from a few dozen trades, or carried by one or two outlier wins, can swing a long way when a single trade changes, so remove the largest winners and recompute before believing it. The reason is simple arithmetic: gross profit is a sum, and one large term can be most of the sum. Take that term away and the ratio can drop from comfortable to barely above 1.0.

Hypothetical example

A swing strategy closes 20 trades. Gross profit is $30,000, but one trade alone made $14,000. Gross loss is $15,000. Profit factor = 30,000 ÷ 15,000 = 2.0. Remove the single $14,000 win: gross profit falls to $16,000, gross loss stays $15,000, and profit factor = 16,000 ÷ 15,000 = 1.07. One trade out of twenty carried the result.

Before and after removing one win in a hypothetical 20-trade strategy: wins of 30 thousand dollars, including one 14 thousand dollar trade, over losses of 15 thousand dollars give a profit factor of 2.0; without that one win, 16 thousand over 15 thousand gives 1.07 Remove one win: 2.0 → 1.07 Hypothetical: 20 trades, one $14k win Before $14k $30k wins $15k losses PF 2.0 After $16k wins $15k losses PF 1.07 One trade carried the result. So: remove top 3 wins, recompute.
One outlier win can create most of a small sample's profit factor. Remove it and the same strategy looks very different.

A check that takes two minutes:

  1. Sort the trade list by result, largest win first.
  2. Remove the top one, two and three winners in turn and recompute gross profit ÷ gross loss each time.
  3. Write down in advance the lowest value you will accept after the top three are gone. Many traders want it still above about 1.2.
  4. If the strategy fails that line, treat it as unproven, not as bad. It needs more trades before it can be judged either way.

Our own run with AlphaPrime (Valynox) is a good example of a small sample. It tested a stand-in rule, not profit factor itself: a HiLo Activator rule built from standard indicators, used as the only entry and exit on NQ daily bars from 2019-01-02 to 2025-06-30, long and short, one contract, with no stop, no target and no filters. The run shown is the one candidate the search kept out of the 1,024 it tried, chosen for its return against its drawdown. Picking the kept one after the fact flatters its numbers, and nothing here says that the rule earned this money or that a reader can expect it.

Source: AlphaPrime product engine (CPU), run 2026-10-31. NQ daily bars, 2019-01-02 to 2025-06-30, long and short, 1 contract, $20 commission and $10 slippage per trade.

NumberResult
Net profit (closed trades)$109,290
Max drawdown$116,305
Trades33
Win rate69.7%
Profit factor1.703
Average trade$3,311.82
Time in market95.08%
Find the profit factor and the trade count in the same summary block and read them as one pair before looking at anything else.
Find the profit factor and the trade count in the same summary block and read them as one pair before looking at anything else. NQ · daily · 2019-01-02 to 2025-06-30 · CPU engine backtest

The profit factor of 1.703 sits inside the range many traders accept. The trade count of 33 over about six and a half years does not. With a sample this small, a different exit on two or three trades could move the ratio far in either direction, and the max drawdown of $116,305 is larger than the net profit of $109,290. This is exactly the case where the top-winners check above is needed before anything else. Bailey, Borwein, López de Prado and Zhu (2014) add a second reason to look closer: when the best of many tried candidates is shown, part of its result is selection, and the fewer trades it has, the larger that part can be. In the Performance Report of AlphaPrime the summary numbers and the full trade list sit on the same screen, so the largest winners can be found and the division repeated by hand without leaving the report.

Profit factor vs expectancy: what is the difference?

Profit factor is a ratio with no dollar scale, while expectancy is the average money per trade, so two strategies with the same profit factor can pay very differently. Expectancy is the net profit divided by the number of trades, that is, what one average trade is worth after wins and losses are netted. The ratio tells you how efficiently the strategy turns losses into wins; expectancy tells you how much each trade is worth; the trade frequency tells you how often you collect it. You need all three.

Hypothetical example

Strategy A: gross profit $17,000, gross loss $10,000, 100 trades. Profit factor 1.7, net profit $7,000, expectancy $70 per trade. Strategy B: gross profit $170,000, gross loss $100,000, 2,000 trades. Profit factor 1.7, net profit $70,000, expectancy $35 per trade. Same ratio, half the money per trade, and twenty times the trades. Which one is better depends on whether the costs and the slippage of 2,000 trades leave the $35 intact, which the next section covers.

QuestionProfit factorExpectancy
What it containsGross profit and gross loss onlyNet profit and the trade count
UnitNone; a pure ratioMoney per trade
Tells you about position sizeNo; doubling the contracts leaves it unchangedYes; doubling the contracts doubles it
Tells you about trade frequencyNoNo; multiply by trades per year yourself
Typical useQuick filter across many candidatesComparing the edge per trade with the cost per trade
Two hypothetical strategies with the same profit factor of 1.7: strategy A with 100 trades earns 70 dollars per trade, strategy B with two thousand trades earns 35 dollars per trade, because the ratio ignores scale and expectancy carries it Same 1.7, half per trade Hypothetical strategies A and B Strategy A Strategy B Trades 100 2k Profit factor 1.7 1.7 Per trade $70 $35 The ratio ignores scale. So: compare $ per trade with costs.
Same profit factor, different money per trade: the ratio ignores scale, expectancy carries it.

A practical way to use the pair: filter candidates by profit factor first, because it is quick to compare across hundreds of runs, then compare the expectancy of the survivors with the round-trip cost of a trade. A strategy whose expectancy is only slightly above the round-trip cost is one bad fill away from zero, whatever its profit factor says.

How do commission and slippage change profit factor?

Costs lower every win and deepen every loss at the same time, so profit factor falls fastest for strategies with many small trades, and a backtest that adds costs only at the end overstates it. Commission is the fee the broker and the exchange charge per contract. Slippage is the difference between the price the backtest assumed and the price a real order would have received. Each one takes a fixed amount from every trade, and a fixed amount hurts a $40 trade far more than a $4,000 trade.

The mechanism works on both sides of the division. The gross profit shrinks because every winner is smaller by the cost; the gross loss grows because every loser is larger by the cost; some small winners become losers and move from the top of the fraction to the bottom. A ratio that loses from above and gains from below drops quickly.

Hypothetical example

Strategy C trades about 50 times a year: gross profit $19,000, gross loss $10,000 before costs, profit factor 1.9, average trade $180. With a $30 round-trip cost on each of 30 winners and 20 losers, gross profit falls to about $18,100 and gross loss rises to about $10,600, so profit factor is about 1.7. Strategy D trades about 2,000 times a year: gross profit $152,000, gross loss $80,000 before costs, profit factor 1.9, average trade $36. The same $30 round trip on 1,200 winners and 800 losers leaves gross profit of about $116,000 over gross loss of about $104,000, profit factor about 1.1, before counting the small winners that turned into losers.

The same 30 dollar round-trip cost on two hypothetical strategies: with 50 trades a year profit factor falls from 1.9 to 1.7, with two thousand trades a year it falls from 1.9 to 1.1 Costs hit many small trades Trades per year, $30 round trip 50 trades Before 1.9 After 1.7 2k trades Before 1.9 After 1.1 Fixed costs hurt small trades most. So: add costs from the first run.
Costs cut profit factor far more for a strategy with many small trades than for one with few large trades.

Three settings follow from this. Put commission and slippage into the backtest from the first run, not after the ranking, so that candidates with many small trades do not float to the top for the wrong reason; the article on commission, slippage and the average trade in backtests explains how to pick the numbers. Rerun with double the slippage and read profit factor again; a strategy that drops from 1.6 to 1.1 was depending on cheap fills. And use the cost items of the market you actually trade: Taiwan cash day trading carries its own fee and tax items, and a profit factor computed with futures-style costs says nothing about a stock day-trading rule.

What does profit factor not tell you?

Profit factor ignores the order of trades, the drawdown, the leverage and the time in market, so a strategy with a decent profit factor can still empty a leveraged futures account. It is a total divided by a total. Shuffle the same trades into any order and the two totals do not change, but the path the account takes between the first trade and the last can change completely.

Hypothetical example

Ten trades: six wins of +$4,000, +$3,000, +$3,000, +$3,000, +$2,000 and +$2,000, and four losses of −$3,000, −$3,000, −$3,000 and −$1,000. Gross profit $17,000, gross loss $10,000, profit factor 1.7, final profit $7,000, in any order. Spread the losses between the wins and the deepest fall from a peak is about $3,000. Put the three $3,000 losses first and the account is down $9,000 before the first win arrives. Same ten trades, same profit factor, three times the drawdown.

Two equity curves from the same ten hypothetical trades with profit factor 1.7 and a final profit of 7 thousand dollars: with the losses spread out the deepest fall is 3 thousand dollars, with the losses clustered at the start it is 9 thousand dollars Same PF, 3× the drawdown Same 10 trades, two orders Spread out DD $3k Clustered DD $9k Profit factor reads 1.7 on both. So: always read the max drawdown.
The same trades in a different order give the same profit factor but a very different drawdown.

The four blind spots and what covers each one:

  • Order of trades. Covered by the max drawdown and by shuffling the trade list many times; the free Monte Carlo drawdown simulator does the shuffling from a pasted list of trade results. Magdon-Ismail and Atiya (2004) show that the expected deepest fall grows with the length of the run even when the average trade stays the same, which is why a long backtest with a good profit factor still needs its drawdown read.
  • Drawdown against account size. Our NQ run above has a profit factor of 1.703 and a max drawdown of $116,305 on one contract. Whether an account survives that fall depends on the account, not on the ratio; how margin changes a backtest's drawdown explains how to size it.
  • Leverage. Profit factor is the same at one contract and at ten. The margin call is not. The mechanics are in leverage, margin calls and backtest risk.
  • Time in market. The same run was in a position 95.08% of the time, so its result includes almost every gap and every overnight move of the period. A rule that is in the market a tenth of the time with the same profit factor carries a different kind of risk and ties up capital differently.

Read as a pair with the trade count, checked against the top winners, computed after costs and placed next to the max drawdown and the contract count, profit factor earns its place as the first number on a report. On its own it is a total over a total and nothing more.

The next step takes ten minutes with the trade list of your last backtest: compute gross profit ÷ gross loss, remove the three largest winners and compute it again, then rerun the same strategy with double the slippage. If the number is still above the line you wrote down beforehand after both changes, it has passed the first filter and is ready for an out-of-sample test.

Frequently asked questions

How do you calculate profit factor?

Add up every winning trade to get the gross profit. Add up every losing trade, as a positive number, to get the gross loss. Divide gross profit by gross loss. If winners total $850 and losers total $500, the profit factor is 1.7. Use results after commission and slippage, because the value before costs can be far higher.

What is a good profit factor for a trading strategy?

Many systematic traders accept about 1.3 to 2.0 after costs on a strategy with several hundred trades. Values between 1.0 and 1.3 are thin and a small rise in slippage can erase them. Values above about 3.0 on many trades are more often a sign of look-ahead bias, missing costs or same-bar fills than of an edge, so check the backtest settings first.

Is profit factor reliable with few trades?

Not on its own. With a few dozen trades, one large winner can be most of the gross profit, and removing it can drop the profit factor from 2.0 to near 1.0. Sort the trade list, remove the top three winners and recompute. If the result holds up, the number is worth carrying forward; if not, the strategy needs more trades before it can be judged.

What is the difference between profit factor and expectancy?

Profit factor is gross profit divided by gross loss, a ratio with no unit. Expectancy is net profit divided by the number of trades, the money an average trade is worth. Two strategies can share a profit factor of 1.7 while one pays $70 per trade and the other $35. Compare expectancy with the round-trip cost of a trade; the ratio cannot show whether costs leave anything.

Can a strategy have a profit factor above 1 and still lose money?

Yes, if the backtest left out commission and slippage. Costs shrink every win and deepen every loss, so a profit factor of 1.2 before costs often becomes a value below 1.0 after them, especially for strategies that trade many times a day. Always read the after-costs value.

References

  • Pardo, R. (2008). The Evaluation and Optimization of Trading Strategies (2nd ed.). John Wiley & Sons.
  • Bailey, D. H., Borwein, J., López de Prado, M., & Zhu, Q. J. (2014). Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance. Notices of the American Mathematical Society, 61(5), 458–471.
  • Magdon-Ismail, M., & Atiya, A. F. (2004). Maximum Drawdown. Risk, 17(10), 99–102.