Tools · Free · No sign-up

Luck or Edge?

Your win rate says nothing on its own. Test it against what pure chance would produce with your exact stop and target levels.

Averages are an approximation. This mode is only reliable if your trades tend to use a similar stop and target distance. If they vary a lot, switch to Exact.

Your numbers never leave your browser. No account, nothing uploaded, and nothing you type is tracked.

Why your win rate lies

A win rate on its own says nothing about whether a strategy has an edge, because it moves for free with where you put your exit. Move the target closer and the win rate goes up — with no change to the market and no change to skill, nothing but geometry.

Take a coin flip with a stop and a target the same distance away, 5% on each side. Random price movement clears the target first about half the time, so a coin gets roughly a 50% win rate. Now keep the same stop but pull the target in to 2.5%. The same coin, still deciding nothing but chance, clears that closer target around 67% of the time. Nothing about the underlying odds changed. Only the finish line moved.

This is why two traders can quote the same win rate and mean opposite things — and why a strategy with a "low" 35% win rate can be the one with real edge, once its risk and reward are taken into account. A win rate needs a baseline before it means anything. That baseline is what this calculator gives you.

How this is calculated

The baseline comes from the geometry of your stop and your target, nothing else. If your stop sits risk% away from entry and your target reward% away, a purely random walk reaches the target first with probability:

p = risk / (risk + reward)

That is the win rate luck alone would produce with your exact levels — not 50%, not a round number, whatever your risk and reward actually work out to. Multiply that probability by the number of trades you closed and you get the number of wins chance alone would expect. Compare that expectation to what you actually got, scale by how much a result like that naturally varies, and you have a z-score: how many standard deviations your real result sits from what randomness alone predicts.

How to read your result

A z-score near 0 means your result looks like something chance could easily produce. A z-score far from 0 means your result would be unusual for chance to produce — evidence, not proof, that something other than luck is driving it.

  • Above +2 — real edge Your win rate beats what randomness would produce by more than two standard deviations. That is not proof of a durable edge — no calculator can give you that — but it is a real, unusual result worth taking seriously and worth continuing to track.
  • Between −2 and +2 — inconclusive The sample cannot yet tell skill apart from luck. This is the most common answer, and it usually means one thing: keep tracking the same way, with more trades, before drawing a conclusion either way.
  • Below −2 — worse than random Worse than random with those same stop and target levels. Worth a hard look at execution — are stops actually held where they are set, are targets actually taken — before concluding the strategy itself is the problem.

Whatever the number says, the next useful step is usually the same: look at the setup and the levels behind it, not just the outcome. Our methodology explains how we build indicators around structure and levels rather than raw win rate, and the full indicator catalog puts those levels to work.

Why averages are not enough

The Quick mode above uses your average stop and average target distance, and for a fast gut-check that is a fine estimate — but only if your trades tend to use similar-sized stops and targets. If they vary a lot from trade to trade, averaging first and computing the z-score second can give you the wrong sign.

We tested this on a real signal set of ours where risk ranged from 0.16% to 30% between trades. Computed trade by trade — each one contributing its own probability from its own levels — the result was z = −2.17: worse than random. Computed from the averages of the same set, it came out z = +0.87: a mild positive. Same trades, opposite conclusion, because the average hid how much the geometry moved around from one trade to the next.

That is what Exact mode is for. Paste one trade per line — entry, stop, target, win or loss — and the calculator computes the probability for every single trade from its own levels before combining them, the same way as above and the same way we run it internally. It takes a minute longer to prepare. If your risk and reward vary trade to trade, it is the only mode that tells you the truth.

Questions

What does the z-score measure?
It measures how many standard deviations the actual win rate sits from the win rate pure chance would produce with the exact same stop and target distances used, taken from a probability of risk divided by risk plus reward. A score near zero looks like something randomness could easily produce; a score far from zero would be unusual for randomness to produce. It is evidence about whether something other than luck is driving the results, not proof of it.
How many trades do I need for the test to mean anything?
There is no fixed number, but there is a floor: until chance alone would predict at least five wins and five losses with the stops and targets used, the page withholds the verdict whatever the z-score says. With a 1:1 risk to reward that means ten trades; with 1:2, fifteen. Above that floor a larger sample carries more weight, because the gap between actual and expected wins grows with the number of trades while the spread it is measured against grows only with its square root. A handful of trades can still land far from zero by chance alone; a result that stays unusual as more trades are added is harder to dismiss than one from a short run.
Why do Quick mode and Exact mode give different results?
Quick mode uses the average stop and target distance across all trades, which is a fine estimate only when the trades used similar-sized stops and targets. On a real signal set with risk ranging from 0.16% to 30% between trades, computing trade by trade gave a z-score of -2.17 while averaging first gave +0.87, opposite conclusions from the same trades. Exact mode avoids that by computing the probability for every trade from its own levels before combining them.
What does the result not tell me?
A z-score above +2 is not proof of a durable edge, and a score below -2 does not by itself mean the strategy is broken; it is worth a look at execution, whether stops and targets were actually held where they were set, before drawing that conclusion. Between -2 and +2 the sample cannot yet tell skill apart from luck, which is the most common answer. Whatever the number says, the next useful step is usually to look at the setup and the levels behind it rather than only the outcome.

A sample that beats chance says there is an edge; it does not say where it comes from. Our methodology page is the long answer.

Read the methodology → Read: signals versus context →

Indicators that draw this for you

The numbers above are what these tools mark on the chart: levels, stops and context, no spreadsheet.