Cumulative realized PnL by trade sequence. Shaded band = drawdown from running peak.
Trading Calendar
Daily realized PnL. Color by day result; rows summarize the week.
Advanced Statistics
Definitions and known limitations are documented below the panel.
Definitions & caveats — how each number is computed
Trade = one row
Each CSV row is a position-close event with its own realized PnL. A close that flattens a multi-contract position still counts as one row here, exactly as the broker exported it.
Win / Loss / Scratch
Win = realized PnL > 0, Loss = < 0, Scratch = exactly 0. Win Rate = wins ÷ total trades (scratches stay in the denominator).
Profit Factor
Gross profit ÷ |gross loss|. Above 1 means winners outweigh losers in dollars; it says nothing about win rate.
Avg Win / Loss
The ratio of average winning trade to |average losing trade|. Paired with win rate it tells you whether the edge is frequency or size.
Max Drawdown is REALIZED only
Computed on the closed-trade equity curve (cumulative realized PnL), peak-to-trough. It does NOT capture open-position heat between entry and exit — true intratrade drawdown is larger and is not in this export.
Trade length unavailable
The balance export contains only close timestamps, not entries, so holding time cannot be computed. Shown as —.
Commissions absent
Paper-trading export carries no fees, so all PnL is gross and Total Commissions is $0. Live results will differ.
Calendar-day grouping
Days are grouped by the literal date in the Time column, not by the CME session day (Globex opens ~17:00 prior day). Overnight trades may land on a different "day" than your session view. Sharpe uses daily PnL, population std, not annualized — near-meaningless on a handful of days.