Charter Elite Analytics

Winrate Over Time Tab Guide

~6 min – the rolling truth serum that finally shows whether your win rate is improving, decaying, or just oscillating around 50% like a drunk coin flip

You’ve already ranked your playbook tags by R. You’ve dissected holding durations and exit quality. You’ve watched time-of-day bleed in Temporal Performance.

Now open Winrate Over Time (tenth tab in CharterElite, TrendingUp icon).

This tab ignores setups, regimes, and psychology in isolation. It tracks one number over time: your win rate—both rolling (last N trades) and cumulative (all trades so far)—sorted by exit date, with a 50% baseline to remind you where random lives.

It answers the question most traders dodge until it’s too late: “Is my edge getting sharper… or am I slowly becoming a breakeven gambler?”

Where to Find It

  • Sidebar → CharterElite
  • Tenth tab → Winrate Over Time (TrendingUp icon)
  • Expand tab help accordion (top) for quick tips (“rolling shows short-term trends, cumulative shows long-term progression”, “different window sizes reveal sensitivity”)

Filters – Exit-Date Focused

Top card:

  • Portfolio — All or single
  • Setup — Multi-select
  • Side — LONG / SHORT / Both
  • Window Size — 5 / 10 / 20 / 50 trades (affects rolling line + “Current Winrate”)
  • From / To — Date range on exit (exit_date / date)

Only completed trades count (PnL + date required). Trades sorted by exit date for rolling/cumulative calculation.

How Win Rate Is Computed

  • Trades sorted by date (exitDate / exit_date / date via getTradeDate/parseTradeDate)
  • For i-th trade (0-based):
  • Cumulative: wins so far / trades so far × 100
  • Rolling: wins in last N trades (max(0, i - N + 1) to i) / N × 100
  • Win = PnL > 0 (pnl / net_pnl / gross_pnl)
  • Overall = total wins / total trades × 100

Six Metric Cards – Instant Trend Snapshot

  • Current Winrate — Rolling win rate at last trade (N = Window Size)

Subtitle: “N trade window”

  • Overall Winrate — All filtered trades

Subtitle: total trades

  • Best Rolling Winrate — Max rolling % over all points
  • Worst Rolling Winrate — Min rolling % over all points
  • Total Trades — Filtered count
  • Total Wins — Count with PnL > 0

Winrate Progression Over Time Chart – The Money Line

Dual-line chart:

  • X: trade exit date (formatted MMM D)
  • Y: 0–100%
  • Rolling N Trades — solid blue (N from Window Size)
  • Cumulative Winrate — dashed green
  • 50% baseline — grey dashed reference

Tooltip: date + both % values

Empty? → “No Winrate Data Available” (no trades with valid date after filters)

Behavioral Correlation with Win Rate – Tags in Hot vs Cold Streaks

Shown when enough high/low periods:

  • High-win-rate period: rolling ≥ overall + 10%
  • Low-win-rate period: rolling ≤ overall − 10%
  • For each taxonomy item: frequency in high vs low periods
  • Impact = highFreq − lowFreq (as %)
  • Table (top 5 by |impact|): Behavior, Category, Sentiment badge, High WR Freq %, Low WR Freq %, Impact (% green/red)

Empty? → “No significant taxonomy correlations found” + tag suggestion

Win Rate Drop Patterns – Behaviors That Kill Win Rate

Shown when enough data:

  • For each taxonomy item: split trades “with item” vs “without” (≥5 each)
  • Win rate present vs absent
  • Drop = absent WR − present WR (>5% shown)
  • Table (top 5 by drop): Behavior, Count (with item), WR Present %, WR Absent %, Win Rate Drop %

Empty? → “No patterns detected” + tag suggestion

Exit Quality vs Win Rate Correlation – Quality Pays?

Shown when exit_quality_score exists:

  • High quality: score ≥60 → win rate + count
  • Low quality: score <40 → win rate + count
  • Insight if high WR > low WR (difference shown; “significant” if >15%)

Empty? → “No exit quality data found” + complete trades with scores

Quick Workflow – Win-Rate Murder Ritual

  1. Open Winrate Over Time → set filters + Window Size (start with 20)
  2. Read six metric cards → current rolling vs overall? Best/worst rolling extremes?
  3. Study chart → rolling trending up/down? Cumulative drifting from 50%?
  4. Check Behavioral Correlation → tags more frequent in high WR periods? → double down

Tags more in low WR? → kill them

  1. Win Rate Drop Patterns → top drop items? → avoid those behaviors
  2. Exit Quality → high-score WR >> low-score? → enforce quality rules
  3. Action: rolling trending down? → cross to Behavioral Audit or Exit Analysis for leak

Cumulative flat at ~50%? → edge is random—audit setups hard

Quick Reality Checks

  • Rolling oscillating around 50%? → No short-term edge—random trading
  • Cumulative drifting below 50%? → Long-term decay—check Evolution
  • No correlations/drop patterns? → Tag taxonomy harder (entry/execution/exit)
  • No quality correlation? → Fill exit_quality_score on completions
  • Best rolling high but current low? → Recent tilt—check Calendar for streaks

Next: Episode 33 – Full Flywheel Mastery: Integrating Weekly Alpha → Calendar Analytics → CharterElite (Winrate Over Time, Holding Time, Trade Management, Playbook Analysis, Exit Analysis, R Distribution, Temporal, Performance Ratios, PEE) → Council (Kill List, Reality Check, Setup DNA) → Evolution into the self-reinforcing compounding loop that turns monthly audits into weekly micro-kills and quarterly A-grade upgrades—without ever increasing risk % or chasing new shiny setups.

Or open CharterElite → Winrate Over Time right now. Set Window Size 20 + last 12 months.

Look at the Rolling line vs Cumulative.

Rolling dipping below cumulative? That’s recent bleed.

Now check Behavioral Correlation.

Which tag spikes in low-WR periods?

That’s your current killer.

Tag it. Avoid it. Kill it.

Your win rate isn’t fate. It’s data.

Make the line go up.

One trade at a time.

Your grade is watching. 😈

Ready to put this into practice?

Run compliance scoring, tag ranking, and Kill List rules on every trade — not once a month when the account feels off.