This article explains how to read one row of the closed trades table, and how the R metric is calculated. It explains the numbers, rather than publishing results — the actual figures live on the Trades page.
Six columns per trade
Each row is one real broker trade, one-to-one. Nothing is merged, split, or rounded in size.
| Column | Meaning | Note |
|---|---|---|
| Asset | Instrument symbol | At most one position per asset at any time |
| Direction | Buy or sell | Always aligned with the large-timeframe reading |
| Size | Filled volume | Derived from stop distance, not chosen in advance |
| Entry / exit price | Actual fill prices | The broker’s prices, not desired ones |
| Time | Open and close | Includes time held |
| Close reason | Why the trade ended | See the section below |
If a trade is entered in several fills, each fill is its own row. That is why row count can exceed decision count.
The “close reason” column has more values than you would expect
Not every trade ends by hitting take profit or stop loss. The system is allowed to exit early when the entry conditions no longer hold. The reason groups are:
- Target reached — price travelled to the take-profit zone.
- Stop hit — price broke the structure the stop was placed behind.
- Early exit — price approached the target so it was closed early, or the stop had been moved to breakeven and price went sideways.
- Cancelled by system decision — entry conditions no longer held before the trade got anywhere.
Because of the third and fourth groups, a trade can close without touching either take profit or stop loss. That is normal behaviour, not a data error.
What R is and how it is calculated
R is the number of times a trade’s risk. That risk is the distance from entry to stop, multiplied by size.
An illustrative example, only to show the arithmetic — not an account figure:
- Entry
2,000.00, stop1,990.00⇒ risk distance10.00. - Size is chosen so that distance equals
100currency units. So1R = 100. - The trade closes at
2,030.00⇒30.00per unit profit ⇒300⇒+3.0R. - If it closed at
1,990.00⇒-1.0R.
The most important reading: R states profit relative to risk, not an amount of money. A +3R trade risking 100 makes 300; a +0.5R trade risking 400 makes 200. Read R to judge whether a trade was good relative to the risk accepted; read the money to judge scale.
Why per-trade PnL does not add up to ROI
Per-trade PnL is an amount. Account ROI is total PnL divided by the declared initial capital, not by the current balance.
Three reasons the two numbers disagree when you add them up by hand:
- Fees and spread. Displayed PnL follows fill prices; trading costs are charged separately by the broker.
- Deposits and withdrawals. ROI keeps initial capital as its denominator, so a deposit does not dilute it and a withdrawal does not inflate it.
- Trades outside the displayed window. The table shows the most recent trades only, while the aggregate metrics are computed over the whole published history.
To reconcile properly, compare the trades table against the broker statement, not the balance.
Why some cells show “—”
A dash means that metric is not measurable yet, not that it is zero.
The clearest example is profit factor: it is total profit divided by total loss. With no losing trades yet, the division has no denominator. The site leaves it blank instead of printing a very large number, because “very large” reads as strong performance when it actually only means insufficient data.
The general rule: a blank cell is information, while a printed 0.00 would be misread. The site never prints zero in place of “none yet”.
Verify it yourself
Every row carries the instrument, size, entry price, exit price and timestamps, so you can reconcile it directly against the broker statement. The aggregate metrics are recalculated from the very list of trades on display, not from another source — so if the table is right, the metrics follow, and the metrics cannot look better than the table.
When you need figures with legal weight, use the report produced by the broker itself.