System Quality Number (SQN)
Van Tharp's SQN = mean(HPR) / std(HPR) × √N. Benchmarks: 1.7 viable, 2.0 good, 3.0 excellent, 5.0+ superb.
- Computed from
- Trades list
- Scope
- Single report
- Range
- Any real number
- Direction
- Higher is better
System Quality Number (SQN) is a single score for how trustworthy a trading edge is — your edge being the thing that makes a strategy come out ahead over time. It measures not just whether the strategy makes money, but how confident you can be the result is skill rather than luck. It combines three things into one number: how big the average trade is, how consistent the trades are, and how many of them there are.
How it's calculated
SQN = (mean trade R / std-dev of trade R) × √N
- trade R
- each trade's result as a fraction of the account balance when it opened — a $50 win on a $1,000 account is +0.05R
- mean / std-dev
- average and standard deviation (how spread out the trades are — lower = steadier) of those R-multiples
- N
- number of trades in the record
In the plain-English terms from the top: mean trade R is how big the average trade is, std-dev is how consistent the trades are (smaller = steadier), and √N is a boost for having more of them. The first factor mean(R) / stdev(R) is the per-trade reward-per-wobble — the trade-level cousin of the Sharpe ratio; multiply by √N and you get exactly the t-statistic of the trade returns: the standard statistical test of whether the average edge is real or zero.
What it tells you
| Value | Reading | Notes |
|---|---|---|
| < 1.0 | Hard to trade | The edge is buried in noise — too weak or too few trades to rely on. |
| 1.0 – 1.6 | Below average | A real but shaky edge; expect to be tested. |
| 1.6 – 2.0 | Average | A tradeable system of typical quality. |
| 2.0 – 2.5 | Good | Solid, consistent edge with a useful sample behind it. |
| 2.5 – 3.0 | Excellent | High expectancy and low variance — or, watch out, just a lot of trades. |
| > 3.0 | Superb | Rare on real money — and check whether it’s the √N inflating a long record. |
Because of the √N term, a high SQN on thousands of trades is partly just the trade count. A 30-trade record and a 1000-trade record with the same per-trade edge will not score the same — the longer one looks far better. Read SQN as "how sure am I this edge is real," and read expectancy for "how big is the edge per trade."
Worked example
A system averages +0.3R per trade with a standard deviation of 1.0R. Over 100 trades:
SQN = 0.3 / 1.0 × √100 = 0.3 × 10 = 3.0 → "superb"
Now take the exact same edge — +0.3R, std 1.0R — but only 25 trades:
SQN = 0.3 / 1.0 × √25 = 0.3 × 5 = 1.5 → "below average"
Same strategy, same per-trade profitability — quadrupling the trade count doubles the score (√4 = 2) and swings the verdict two full bands. That swing is the whole caveat in one example.
Pitfalls
- More trades inflate it — the headline. The √N term means a weak system traded enough times scores high, and a great system with a short record scores low. Never compare SQN across records of very different trade counts; pair it with expectancy. (The instinct behind SQN is sound — more evidence should raise your confidence in an edge. What breaks it is the uncapped √N and the next pitfall, not the core idea.)
- Assumes independent trades — and forex rarely obliges. SQN is a t-statistic, which assumes each trade is an independent draw. Forex trades cluster hard: a basket of correlated pairs (long EURUSD / short USDCHF is one USD bet, not two), a cluster of entries around one news print, or a grid/martingale pile are all one bet wearing many trade tickets. When trades are correlated, the effective sample size is far below N — so the √N term is overstated and SQN overstates how real the edge is. This is as important as the √N caveat, and you can't fix it by trading less.
- Significance ≠ survival. SQN tests whether the average edge is statistically real — it says nothing about tail risk. A short-vol or grid system can post a superb SQN and still be one fat-tailed trade from ruin. Read it alongside max drawdown and the tail ratio, never alone.
- Backward-looking. It scores the past sample. A high SQN says the historical edge was statistically clear, not that it will persist.
- One outlier moves the std. A single huge trade widens the standard deviation and can drag SQN down sharply.
SQN vs Sharpe vs Expectancy
These three describe the same trades from different angles. Expectancy is the pure per-trade edge, in real units, with no sample-size term. SQN takes that edge, divides by trade-to-trade variability, and scales by √N — turning it into a significance test. The Sharpe ratio is the equity-curve version: mean / std of daily returns, annualized by √(periods per year) instead of √(trade count). In short, expectancy = the edge, SQN = the trade-level confidence in it, Sharpe = the curve-level reward-per-risk.
Related
Expectancy is the per-trade edge SQN is built on, Sharpe ratio is the equity-curve cousin, and Win Rate with Profit Factor break the same trade distribution into frequency and ratio.