Most day traders who keep a journal eventually hit the same contradiction: the numbers disagree. A strategy can post a 62% win rate and a profit factor below 1.0, while a account with a 31% win rate shows steady gains and positive expectancy. Profit factor, win rate, and expectancy are calculated from the same set of closed trades, but each answers a different question. This guide covers how to calculate them from your fills, where each one misleads when read alone, and how to combine them into one review. The examples assume US stock and ETF day trading, expressed in R. The workflow comes from SpiceLog, a trading journal and analytics tool built for US stock day traders, particularly those working in DAS Trader Pro.
Table of Contents
- Quick Takeaways
- How Each Metric Is Calculated
- Why Win Rate Misleads on Its Own
- Reading Profit Factor Without Outlier Distortion
- Expectancy as the Anchor Metric
- Worked Example: Three Profiles From One Journal
- Reading the Three Together in Your Journal
- Journal Setup for These Metrics
- Frequently Asked Questions
- References
Quick Takeaways
| Key Insight | Explanation |
|---|---|
| Win rate is a frequency, not an edge | Break-even win rate equals 1 ÷ (1 + payoff ratio). A 60% win rate with a 0.6 payoff ratio is below break-even and loses money. |
| Profit factor is a ratio of sums | Gross profit divided by absolute gross loss. 1.0 is break-even. Treat a zero-loss sample as incomplete, not as an infinite profit factor. |
| Expectancy is the per-trade average | Calculate it in R from planned risk at entry so position size changes do not distort the sample. |
| Read expectancy first, then profit factor, then win rate | Expectancy gives the sign and size of the edge, profit factor shows how much gross profit survives losses, and win rate describes the shape of the distribution. |
| Breakeven trades enter the denominator only for expectancy | Exclude them from the win rate calculation, but keep them in the trade count used for expectancy. |
| Check profit factor with your largest winners removed | A high profit factor driven by two or three outliers is not evidence of a repeatable edge. |
| Tag by setup before averaging | A blended expectancy can hide a setup with negative expectancy that is offset by a stronger one. |
How Each Metric Is Calculated
All three metrics start from the same ledger: one row per closed trade with a net result and, ideally, the planned risk in dollars so each result can be restated in R. Win rate counts winning trades against trades with a decided outcome. Profit factor divides summed gross profit by the absolute value of summed gross loss. Expectancy is the probability-weighted average result per trade, and it is the only one of the three that includes both frequency and magnitude.

Win rate and breakeven handling
Win rate is the simplest of the three, and it is also the easiest to distort. The usual approach is to exclude breakeven trades from both the numerator and the denominator, then keep them in the trade count used for expectancy. If you count breakevens as losses, your win rate understates execution, and the error is largest for strategies that take many small flat trades. Whatever rule you choose, apply it to every period so that month-over-month comparisons stay valid.
Profit factor from gross totals
Profit factor is gross profit over gross loss, so it is a ratio of two sums rather than an average. A value of 1.0 means the sample broke even before costs, and anything below 1.0 means it lost money. Because the calculation aggregates dollars, a single large winner moves it substantially. That sensitivity is covered in the outlier section below. Undefined values appear when a sample has no losing trades, which is common in very short journals.
Expectancy in dollars and in R
Expectancy equals win rate times average win, minus loss rate times average loss. When every trade is either a win or a loss, it equals net P&L divided by the number of trades. Expressing each result in R, meaning the planned risk at entry, removes the effect of changing position size across the sample. If you log only dollars, your expectancy will drift as you size up or down, even when your decision quality has not changed.
Why Win Rate Misleads on Its Own
Win rate tells you how often a trade was profitable and nothing about how much it was worth. Two systems with identical win rates can have opposite expectancy, depending on whether the average winner is larger or smaller than the average loser. The relationship between them is set by the payoff ratio, which is average win divided by average loss. The payoff ratio is the variable that win rate ignores.
A win rate describes how often a trade was right. It does not describe how much a correct trade was worth compared with an incorrect one.
The breakeven win rate formula
The win rate required to break even, before costs, is 1 ÷ (1 + payoff ratio). At a payoff of 3.0, the breakeven win rate is 25%. At a payoff of 0.6, it rises to 62.5%. This is the most useful single diagnostic in the set, because it converts the question "is my win rate good?" into "is my win rate above the level my payoff structure requires?"
Costs move the threshold higher. Commissions, fees, and slippage reduce the effective average win and increase the effective average loss, so the true breakeven is above the gross figure. Calculate the breakeven on net-of-cost averages if you want a number you can act on.
Why high win rates coexist with losses
A high win rate with a small payoff is the most common profile among traders who scalp or take partial profits early. Each trade feels correct, and the journal shows a win rate above 55% or 60%, but the average loser is nearly as large as the average winner. In practice, a single oversized loss erases several weeks of small gains, and the win rate never signals the problem. Profit factor and expectancy expose this immediately, which is why they should not be read as optional extras.
Reading Profit Factor Without Outlier Distortion
Profit factor is the most intuitive of the three metrics, and that makes it the easiest to over-trust. Because it sums all gross profit, a few large winners can carry a sample that is otherwise flat. The number looks healthy, but the edge it describes depends on events that may not recur. The correct response is to test how concentrated the profit is before accepting the ratio at face value.
Pro tip: Recalculate profit factor with your three largest winners removed. If the result falls below 1.0, the sample depends on rare outcomes, and you should inspect the setups behind those trades before assuming the edge is stable.
When a single winner carries the sample
Consider a 40-trade sample where the total gross profit is $6,000 and the gross loss is $4,000. The profit factor is 1.5. If one trade contributed $2,400 of that profit, the profit factor without it drops to roughly 0.9, because the remaining gross profit of $3,600 is now below the $4,000 gross loss. The headline number was real, but it was not describing a distribution most trades would reproduce. Log the largest winners with their setup tags so you can see whether they share a repeatable condition.
Zero-loss samples and undefined profit factor
A profit factor is undefined when there are no losing trades, because the denominator is zero. New traders sometimes read this as a perfect result, which it is not. A sample with no losses is almost always too short, or it is filtered in a way that excludes losing trades. Do not compare an undefined profit factor against a finite one. Extend the sample, or report the period as incomplete.
Expectancy as the Anchor Metric
Expectancy is the metric that answers whether a sample has positive expected value per trade. Its sign determines whether the strategy made money on average, and its magnitude tells you how much each additional trade contributes. Multiplying expectancy in R by the number of trades gives the total expected R for a sample, which is a useful way to compare periods of different length. A sample of 200 trades at +0.2R per trade has the same total expectancy as 100 trades at +0.4R, but the first carries more information about the estimate.
Calculate expectancy after costs. A gross expectancy of +0.15R can become negative once commissions and slippage are deducted from each trade, especially for strategies with small targets. Subtract cost per trade expressed in R before you draw conclusions, and keep the costs in your journal rather than in a separate spreadsheet.
Expectancy across different sample sizes
Expectancy is an average, so its reliability depends on the number of trades and the variance of the results. A small sample can produce a strongly positive expectancy from randomness alone. Treat the first few dozen trades as provisional, and avoid changing the strategy based on a reversal over a short stretch. Compare expectancy across sub-samples, such as by month or by setup, only when each bucket has enough trades to support the comparison.
What expectancy hides
Expectancy says nothing about the path. Two strategies with the same expectancy can produce very different drawdowns, because one takes frequent small losses and the other takes rare large ones. For that reason, expectancy should be read alongside the equity curve and maximum drawdown in R, not as a standalone verdict on whether to keep trading a setup.
Worked Example: Three Profiles From One Journal
The following examples use 100 hypothetical trades, each risking 1R. They illustrate how the three metrics can rank the same strategies differently, which is the core reason to read them together. None of the numbers describe a real account.
Profile A wins 35 trades at +3R and loses 65 at −1R. Net result is +40R, profit factor is 1.62 (105 ÷ 65), expectancy is +0.40R per trade, and the breakeven win rate is 25%. The win rate looks weak, but the payoff ratio carries the strategy.
Profile B wins 60 trades at +0.6R and loses 40 at −1R. Net result is −4R, profit factor is 0.90 (36 ÷ 40), expectancy is −0.04R per trade, and the breakeven win rate is 62.5%. A 60% win rate looks strong, yet the account is losing money.
Profile C wins 50 trades at +1.5R and loses 50 at −1R. Net result is +25R, profit factor is 1.50, expectancy is +0.25R per trade, and the breakeven win rate is 40%. It sits between the other two on every metric, which makes it the most balanced of the three.
Three profiles, one ranking problem
If you rank these profiles by win rate, Profile B comes first and Profile A comes last. If you rank them by expectancy, the order reverses. Profile A has the highest expected value per trade, and Profile B is the only one with negative expectancy. Ranking by win rate alone would direct capital toward the weakest strategy in the set.
Converting the example to dollars
At a constant risk of $100 per trade, Profile A produces +$4,000 net, Profile B produces −$400, and Profile C produces +$2,500. The dollar figures appear to make the ranking obvious, but they depend on the risk per trade. If the same trade results were taken at $200 risk, the dollar totals would double while the R-based metrics would stay unchanged. That is why the R framing is the stable basis for comparing strategies across different account sizes.
Reading the Three Together in Your Journal
Each metric answers one question well and others poorly. The table below shows which question each one answers and the blind spot that appears when it is read alone. The practical goal is to use each metric for the question it answers, then cross-check the conclusions against the others.
| Metric | Question It Answers | Blind Spot When Read Alone |
|---|---|---|
| Win rate | How often were trades profitable? | Ignores payoff size, so it cannot confirm whether the strategy makes money. |
| Profit factor | How much gross profit survives gross losses? | Sensitive to outliers and undefined when there are no losing trades. |
| Expectancy | What is the average expected result per trade? | Hides the path, so drawdown and variance are invisible without additional review. |
A reading order that avoids contradictions
Start with expectancy in R, after costs. If it is negative, the sample has failed regardless of the other two numbers, and profit factor or win rate will only explain the failure. If expectancy is positive, check profit factor to see whether gross profit is broadly distributed or concentrated. Use win rate last, as context for the shape of the distribution.
When expectancy is positive but profit factor sits close to 1.0, the edge is thin, and small increases in commissions or slippage can eliminate it. In that situation, the fix is usually a cost or execution problem, not a signal problem. Reduce the number of marginal trades before changing the entry logic.
Diagnosing the payoff structure with breakeven win rate
Compare your actual win rate with the breakeven win rate calculated from your realized payoff. A gap of several percentage points in your favor indicates a stable structure, while a gap that is shrinking over time usually signals that winners are being cut short or losers are being held longer than planned. Track this comparison monthly. It shows structural drift before expectancy turns negative.
Pro tip: Calculate breakeven win rate from realized averages, not from your target. Targets describe intent, while realized payoff shows what your exits actually produce.
Journal Setup for These Metrics
Disclosure: SpiceLog is our product, so weigh the setup advice below with that in mind. The metrics in this guide can be calculated in a spreadsheet, and a trading journal template is a reasonable starting point for a trader who logs a few dozen trades a month. Spreadsheets become fragile when fills come from several brokers, when partial exits create multiple rows per position, or when you need to tag trades by setup after the fact.

SpiceLog is a trading journal and analytics tool for US stock and ETF day traders. It imports fills from DAS Trader Pro, Schwab, Interactive Brokers, thinkorswim, and PropReports into a single view, and it is free. For DAS Trader Pro users, the DAS Trader Pro journal page covers the import workflow. The one feature that matters most for this analysis is consolidating fills from multiple brokerages into one ledger, because splitting a strategy across accounts makes the sample look thinner than it is.
Tagging trades by setup before aggregating
Blended metrics are useful for a summary, but they hide setup-level behavior. Tag each trade with its setup, market condition, and time window at entry, then calculate expectancy and profit factor for each tag. A tag that shows negative expectancy with a positive overall average is a candidate for removal, even if it is a small part of the total volume. Keep the tag list short, or each bucket will be too small to interpret.
Position sizing inputs that keep R consistent
R-based metrics depend on consistent planned risk. If your position size changes between trades, record the planned risk at entry, not the risk implied by the final fill. A position size calculator helps standardize that input before the order is sent, which keeps expectancy comparable across months. Without a fixed risk unit, a strategy that simply sized up on winners will appear to have a better edge than it does.
Frequently Asked Questions
Is a profit factor above 1.0 enough to call a strategy profitable?
A profit factor above 1.0 means gross profit exceeded gross loss in that sample, but it does not confirm a repeatable edge. Costs, sample size, and concentration of winners determine whether the result persists. Check expectancy after costs and recalculate the profit factor with your largest winners removed before drawing a conclusion.
Which metric should I check first, win rate or expectancy?
Check expectancy first, because it is the only one of the three that combines frequency and payoff into a single per-trade result. Its sign tells you whether the strategy has positive expected value. Use win rate afterward to understand the distribution of outcomes, and compare it with the breakeven win rate derived from your realized payoff.
Why does my profit factor show as undefined?
Profit factor is undefined when a sample contains no losing trades, because the gross loss in the denominator is zero. This usually means the sample is too short or that losing trades are being filtered out by accident. Extend the period or verify the filters before using the result.
Should breakeven trades count toward win rate?
Breakeven trades are usually excluded from the win rate calculation, so that a flat trade does not dilute the frequency of decisive outcomes. They should remain in the trade count used for expectancy, because they still represent exposure and costs. Apply whichever convention you choose consistently across all periods so that comparisons remain valid.
How many trades do I need before these metrics mean anything?
A few dozen trades is the minimum before treating these metrics as signal, and the estimates remain noisy at that size. Expectancy and profit factor become more stable as the sample grows, and the variance of results determines how many trades you need. Avoid making structural changes to a strategy based on a short run, and tag trades by setup only when each tag has enough observations to compare.
Can I calculate expectancy in R without logging planned risk?
You can calculate expectancy in dollars without planned risk, but it will drift whenever position size changes. Recording planned risk at entry, before the order is sent, is the only reliable way to express results in R. If your broker data does not include it, add it as a field in your journal so that each trade carries its risk unit.
Which of these three metrics has changed how you review your own trades, and what did your numbers show when they contradicted each other?
References
- ACY guide to trading journal metrics including expectancy, drawdowns, and R-multiples
- Spreadsheets Hub formulas for profit factor, win rate, and expectancy
- Investopedia article on the limits of profit to loss ratios
- Trader's Second Brain guide to the trading expectancy formula
Written by the team behind SpiceLog (https://www.spicelog.com/).
No comments:
Post a Comment