The distribution panel on the Performance page offers five metrics: PnL percent, R-multiple, hold time, maximum favourable excursion and maximum adverse excursion. On the real-money capture I am working from, two of them come back with nothing. Hold time reads n equals 0. The excursion histogram reads n equals 0 and carries a one-line note underneath: MFE/MAE is only recorded on paper trades.
That note is more useful than most of the numbers on the page, because it draws the boundary of the dataset for you. If your exit review depends on excursion, and on a desk that reviews exits it has to, you are going to build that series yourself for the live book. Here is what the gap actually is, how to close it from bar data, and the four conventions that decide whether the resulting numbers are comparable to anything else you produce.
What a fill record holds and what excursion needs
A trade record is a set of endpoints. Instrument, side, size, entry timestamp, entry price, exit timestamp, exit price, fees. Every one of those fields is a fact the venue confirmed to you, and together they are sufficient to compute realised PnL, R against a stop you declared, hold time and every summary statistic that sits on top of those.
Excursion is not an endpoint measure. Maximum favourable excursion is the best mark the position ever printed between entry and exit. Maximum adverse excursion is the worst. Both are properties of the price path over the holding period, and the path is not something the venue sends you when a position closes. A simulated book has the path available because the fill is produced by walking a price series in the first place, which is why the platform can record excursion there and not on live fills.
The practical consequence is that excursion for a live book is a reconstruction, not a record. It will be approximately right, its error is directional and knowable, and it needs to be documented as derived data wherever it appears in a report.

Rebuilding the path from bars
The reconstruction is mechanical. Export the blotter from the Performance page, which has an export control in the header next to the share button, and make sure you export with the account scope and date range explicitly set rather than left on whatever the session inherited. Then for each closed position:
- Take the entry timestamp and the exit timestamp and build a window. For a position built from multiple fills, the window runs from the first entry fill to the last exit fill.
- Pull OHLC bars for the instrument over that window at a resolution meaningfully finer than the position hold time. If your median hold is two days, one-hour bars are adequate and daily bars are not.
- For a long, MFE is the highest high in the window divided by the entry price minus one, and MAE is the lowest low divided by the entry price minus one. For a short, swap the two and flip the sign.
- Divide both by the risk you actually committed on that trade, so the output is in R rather than percent. Excursion in percent is not comparable across a levered perp and a cash equity position, and R is.
That is a few hundred lines and an afternoon. The work that follows it is what makes the series usable.
The four conventions that decide whether the numbers travel
Every one of these is a choice, none of them has a right answer, and all four have to be written down in the same place as the output. A reconstructed excursion series without its conventions attached is not evidence, because nobody can reproduce it.
Bar resolution. Coarse bars miss intrabar extremes, so MAE computed on daily bars is systematically less bad than the truth and MFE is systematically less good. The bias has a known direction and it shrinks as you go finer. Fix one resolution, use it for every trade in the study, and record it. A book reviewed on one-minute bars in January and one-hour bars in April has two incomparable quarters.
Price source. Venue bars, an aggregated index, or a third-party vendor. These disagree during exactly the moments excursion is trying to measure, and a wick that exists on one venue and not the index will change MAE materially. Use the bars from the venue you actually traded on wherever you can get them, because that is the price your stop would have seen.
Timestamp alignment. Venue fill timestamps, vendor bar timestamps and your own system clock will not agree. Decide whether a bar is stamped at its open or its close, normalise everything to UTC, and check a handful of trades by hand before you trust ten thousand. Off-by-one-bar errors at the entry are the single most common way a reconstruction comes back with an implausibly good MFE.
Position construction. Scaled entries and partial exits make position-level excursion ambiguous. Pick one convention, either volume-weighted entry with a single window per position or excursion computed per fill and aggregated, and apply it everywhere. Keep fees and funding out of the excursion column entirely, since excursion is a price measure and blending costs into it destroys the only thing it is good for.
Calibrating against the book that already has the data
The advantage of the platform recording excursion on paper trades is that it gives you a control set. Run the same strategy in the paper scope for a period alongside the live one, then run your reconstruction over those same paper trades and compare your output to the recorded histograms in the panel. Any systematic gap you find is your pipeline, not the market.
This is worth doing before the reconstruction is used in anything anyone signs. It will catch the timestamp errors, it will tell you how much bar resolution is costing you, and it converts a homemade series into one you can describe as validated against a recorded benchmark. That sentence is the difference between a number that survives a review and a number that does not.
The scope buttons at the top of the page are where you switch between the two books, and the page states in its own subtitle that the default view reflects real-money trades with paper held separately. Read that as a reminder to check which scope is selected before you screenshot anything, because the whole page including the header tiles responds to those buttons.
What the reconstructed series is actually for
Three uses justify the build, and all three are exit questions rather than entry questions.
The first is capture ratio. Realised PnL divided by MFE, per trade, tells you what fraction of the available move you took. A strategy with a healthy edge ratio and a poor capture ratio is not a signal problem, it is an exit problem, and those are cheaper to fix.
The second is stop placement from the MAE distribution. Look at the MAE of trades that eventually finished positive. The quantile of that distribution is the stop distance that would have cut the fewest eventual winners, and comparing it against the stop you actually run is a one-number answer to a question desks usually argue about qualitatively.
The third is regime drift. Excursion widens before realised PnL deteriorates, because the path gets rougher before the endpoints do. Tracking mean MAE per month gives you an early read on whether the environment is changing, and it is independent of whether you happened to win.
One caution before you carry any of this into a report. The same metric name appears on more than one Blockcircle surface and the values need not agree, since a figure computed over an equity curve and a figure computed over trade records answer different questions even when both are correct. Pin the surface, the scope and the date range next to every number you publish, and where you have reconstructed the data yourself, say so on the same line.