# Learning-loop review — 2026-07-28 36 closed trades reviewed, 13 currently open. Proposal only — nothing here is applied automatically (CLAUDE.md §4: the AI review proposes, dan disposes). # AI Review — Paper Trading Journal ## 1. Is overall expectancy holding? Overall expectancy is **+0.36% per trade** across 36 closed trades, with profit factor 1.10 and Wilson-lower-bound win rate of **37.0%** (raw 52.8%). The gap between raw and Wilson-lower win rate is large — at n=36 we cannot yet rule out this being noise. 36 trades is barely above the ~20-trade floor for even the *coarsest* cut, and it's a blend of four very different strategies, so the "overall" number isn't really a single coherent edge to judge. **Verdict: nominally positive, not yet statistically meaningful.** ## 2. Which bucket is the biggest drag? Only one bucket clears the ~20-trade minimum with a meaningful label: **orb-v1, n=27** (by strategy). It shows expectancy **-0.19%**, profit factor **0.75**, total P&L **-$123** — the only strategy losing money, and it's carrying most of the book (27 of 36 trades). (Note: the "unknown" buckets in the RSI/MA50/relvol/regime cuts also show n=27, but these are trades with *missing* snapshot data, not a real attribution cut — they can't be used to reason about RSI/MA50/regime. qsr, vwap-mr-v1, and every symbol/exit-reason bucket except stop_loss (n=15, still under 20) are all below the 20-trade bar and are hypotheses, not results.) ## 3. Entry, exit, or regime problem? Regime is not separable here (regime data is "unknown" for orb-v1's trades), so we lean on exit-reason and MAE/MFE. Within orb-v1's footprint (which dominates the overall MAE/MFE stats since it's 75% of trades): - **stop_loss exits: n=15, 0% win rate, expectancy -1.31%, total -$482, avg hold 0.1 days.** Over half of orb-v1's trades die almost immediately on the stop. - **MAE losers avg -1.18%** vs **MAE winners avg -0.69%** — losers move meaningfully against the position before failing, and they do so fast (0.1d hold on stop_loss trades). - **MFE losers avg only +0.43%** — losing trades barely showed any favorable excursion before reversing. This is the key discriminator: if it were an exit/take-profit problem, we'd expect losers to show a large MFE (up several % then given back). +0.43% is small — these trades weren't "working and then given back," they were **wrong almost immediately**. This pattern — fast stop-outs, low MFE on losers, adverse excursion right out of the gate — is an **entry problem**, not an exit problem: orb-v1 appears to be taking breakouts that are false/weak and reversing right away, consistent with insufficient breakout confirmation rather than a too-tight stop or a mismanaged take-profit. ## 4. Proposed parameter change **orb-v1.volumeConfirmMult: 1.5 → 2.0** Reasoning: the drag is concentrated in fast, immediate stop-outs (56% of orb-v1 trades, 0.1-day average hold, low MFE-on-losers) consistent with the strategy entering on weak/false breakouts. `volumeConfirmMult` is the direct lever gating entry quality (how much above-average volume must confirm the opening-range breakout). Raising it from 1.5 to 2.0 tightens that filter, which should reduce the false-breakout rate without touching any other parameter — a single, isolated, testable change per the one-change-at-a-time rule. This should be measured only on orb-v1 trades placed *after* the change, over the next few weeks, before drawing conclusions. No other parameters (targetRMultiple, entryCutoffMinute, stops, etc.) should be touched simultaneously. ## 5. Notable open positions (context only, not evidence for #4) - **qsr** has a cluster of positions all aging identically at **6.3 days** (AEM ×2, HDB ×2, NFLX, NXPI ×2, TXN ×2) with **no calendar time-stop** (`maxHoldDays: null`) — several are sitting well past the ~4-day average hold seen in the closed qsr sample. - **NXPI (qsr)** is deeply underwater at **-12.14% unrealized** on both open tranches — worth watching closely given qsr's live `hardSellPct` is 4% and `trailActivationPct`/`trailPct` are 5%/3%, yet the position is far past those thresholds, suggesting the stop/trail logic may not be firing as expected (or is being overridden) — worth investigating operationally, separate from any parameter-tuning decision. - **TXN (qsr)** also underwater (-3.77% ×2), same 6.3-day aging cohort. - **NFLX (qsr)** is the bright spot in that cohort, +4.82% unrealized. - The two **crypto-trend-v1** positions (BTC/USD, ETH/USD) have been open 7.2 days with no calendar time-stop — not evidence for any strategy above (no closed crypto trades exist yet), but flagged as an aging position with no time-based exit path. These are situational observations only — none of this open-position data is used to support the parameter change in #4, since none of it has a confirmed outcome yet.