PerpForge
Get started

Concept · Reading the returns

Profit Factor

Gross profit divided by gross loss — the total won across all winning trades, divided by the total lost across all losing trades. Above 1 means the strategy made money; below 1 means it lost.

Profit Factor

Gross profit divided by gross loss — the total won across all winning trades, divided by the total lost across all losing trades. Above 1 means the strategy made money; below 1 means it lost.

In plain English

Profit factor (PF) answers one blunt question: for every dollar the strategy lost, how many did it win?

  • PF = 2.0 → won $2 for every $1 lost. Strong.
  • PF = 1.0 → broke even (before costs).
  • PF = 0.5 → lost $2 for every $1 won. Bleeding.

It folds win rate and payoff size into a single number. A strategy can reach PF > 1 two ways: win often with small edges, or win rarely with huge winners (the positive skew shape of a trend following strategy). PF doesn't care which — it reports only the net.

The catch: PF is a point estimate. On a handful of trades it is almost meaningless — one lucky winner can send it sky-high. It tells you what happened, not what edge produced it. For that you need sample size, the confidence interval, and the edge test.

Why it matters for this fleet

Across the 210 EMA-cross variants, profit factor ranges from 0 to 20.8, with a median of just 0.76151 of 210 (72%) have PF below 1, i.e. they lost money. Even at a fair 2× leverage, only 20 of the 66 two-times rows clear PF > 1. Most EMA-cross configs are net losers, and the metric makes that plain.

But the spread also hides the classic trap: the highest profit factors come from the strategies you can trust least.

Examples from the live fleet

  • id478 (EMA 50/200 · BTC · 1d · 2× · long) — PF 20.8, the fleet's highest. It is also a 3-trade strategy. Two wins and one loss produce a spectacular ratio that means nothing — the confidence interval on its win rate is ±36.5 percentage points. A high PF on a tiny sample is a mirage.
  • id526 (EMA 21/50 · SOL · 4h · 2× · long) — PF 2.59 on 114 trades. A genuinely strong ratio, but the sample is still too small to call the edge real (its edge test comes back not-significant).
  • id523 (EMA 21/50 · SOL · 1h · 2× · long) — PF 1.46 on 436 trades, win rate 31.9%. A modest PF, but it's the one backed by enough trades that its edge actually clears the significance bar. Lower PF, higher trust.
  • The 9/21 scalp pair (the fast 9-period vs 21-period crossover) has a median PF of 0.49 — measurably losing across the fleet, on hundreds of trades each. High frequency, negative edge.

The lesson in one line: id478's PF 20.8 (3 trades) is worth less than id523's PF 1.46 (436 trades). Read profit factor next to trade count, never alone.

How to read it honestly

  1. Always pair PF with N (the trade count). PF on fewer than ~30 trades is noise.
  2. PF > 1 is necessary, not sufficient. It is a noisy estimate; the edge test (sharpe significance) is the honest filter. Of the 66 rows at 2×, 20 show PF > 1 — but only two clear that test.
  3. Don't over-read PF across leverages. [[Leverage]] scales wins and losses together, so PF is roughly leverage-stable — but the deep drawdowns it hides are not (see drawdown).

Related

Sources

  • growth/content/dossiers/ema-cross/1-analysis.md (run 83 analysis)
  • growth/content/dossiers/ema-cross/1-dataset.csv (the 210-row result set)

Related concepts

See it in a real result →

Put it to the test

Does your idea have a real edge, or just a big number?

Spawn your variant, run it on the same engine, and read the edge-significance verdict — before you risk real money.

Test your own idea — free →Free account, no card