---
type: methodology
status: active
version: 0.1
created: 2026-06-21
source: Calibration Session 1 (2026-06-21) — derived from 7 standard discretionary macro anti-patterns
---

# Anti-Patterns

The seven recurring mistakes that destroy discretionary macro performance. State them once. Recognize them in real time. Each maps to a violation of `process.md` or `risk-framework.md` — fix the process, not just the trade.

## How to use this doc

When you catch yourself doing any of these mid-trade or pre-trade, **stop and write it down**. Not in your head. In the trade's management log (`02-trades/<id>/management-log.md`) or the daily journal. Patterns you can't see in your own writing are patterns you'll repeat.

Each anti-pattern below has the same structure:
1. **What it looks like** — the observable behavior
2. **Why it feels right** — the mechanism that makes it seductive
3. **Why it's wrong** — the actual cost
4. **Replacement behavior** — what to do instead

---

## 1. No invalidation

**What it looks like.** Entering a trade without a fact-based kill switch in the thesis. The "invalidation" is vague — "I'll know it when I see it," "if the chart breaks down," "if I feel wrong about it."

**Why it feels right.** Flexibility. You don't want to be tied to an exit if new information arrives. You want to be able to "feel" the trade.

**Why it's wrong.** Without an invalidation condition that's a **fact, not a price**, every losing position becomes a judgment call. You'll find reasons to hold. The trade morphs from "thesis X" into "thesis X but also maybe thesis Y now." The original edge evaporates and you're holding a different, undocumented bet. This is how -5% drawdowns become -15%.

**Replacement behavior.** Per `process.md` §4.1, the invalidation condition is a required thesis field and it must be **a fact, not a price**. Example: "If core CPI prints >0.4% m/m, thesis is dead." If you can't write the fact, you don't have a thesis — you have a view. Views don't get sized.

---

## 2. Averaging down a loser

**What it looks like.** A trade goes against you. Instead of taking the stop, you add to the position at a worse level, "lowering your average cost." You feel smart because your breakeven got closer.

**Why it feels right.** "It'll come back. The thesis is still intact. I'm just getting a better entry." Averaging down is what value investors do, right?

**Why it's wrong.** Averaging down inverts the asymmetry. The original trade was sized on a probability estimate (e.g., 60% it works, 40% it doesn't). After it moves against you, the new information should *update* that probability downward — not keep it the same. By adding, you're increasing size into a deteriorating probability. The original thesis being "still intact" is your bias talking; the market is telling you something.

The difference between averaging down in equities (Buffett) and macro futures: in equities you can hold through drawdowns because the instrument has finite downside (can go to zero) and infinite upside (equity optionality). In macro futures with a stop, the math is different — you're levered and the carry plus mark-to-market loss compounds.

**Replacement behavior.** The stop is the stop. If the trade thesis is intact after the adverse move, the **thesis was wrong about timing or magnitude**, not direction. Close it, re-write the thesis, re-enter if the new setup merits it. Sizing up a winner is fine; sizing up a loser is not.

---

## 3. Moving the stop

**What it looks like.** Trade has a stop. Price approaches it. You move the stop further away — "just a bit more room," "the wick was clearly stop-hunting," "let me give it one more day."

**Why it feels right.** You don't want to take the loss. The move felt like noise, not signal. The thesis still seems right. If you just give it room, it'll recover.

**Why it's wrong.** This is the slow destruction of risk management. You size positions on the basis of "max loss = stop distance × contracts." When you move the stop, you've silently increased your risk per trade — and you probably didn't recheck whether the new stop still respects your 25–75bp band per `risk-framework.md` §1, or your 250bp portfolio open-risk cap per §2. You're now in a position that's larger than your process says you should be in, and you don't even know by how much.

Worse: every time you move the stop and price recovers, you reinforce the behavior. The brain learns "moving the stop works." Then one day it doesn't, and you're holding a position sized for a 50bp loss that's now down 300bp.

**Replacement behavior.** When price approaches the stop, ask one question: **has the thesis been invalidated by a fact?** If yes, exit. If no, hold. The stop distance is calibrated to the thesis; do not adjust it without a documented reason in the management log. If you're repeatedly finding your stops are too tight, that's a signal-spec problem, not a per-trade stop problem.

---

## 4. Narrative without pricing

**What it looks like.** You have a story — "the Fed is going to cut," "China is reopening," "the consumer is rolling over." You go long or short based on the story without checking what the market is already pricing.

**Why it feels right.** The story is true. You can articulate why. The conclusion seems obvious. Why would you not trade it?

**Why it's wrong.** Markets are forward-looking. The narrative you're trading is **the narrative that's already in the price**. If 10y is at 4.50% and Fed funds futures are pricing 75bp of cuts over the next 6 months, then "Fed is going to cut" is priced. The trade only works if (a) the market is wrong about the magnitude, (b) you're right about the timing, or (c) some second-order effect you can articulate hasn't been priced.

Without checking pricing, you can be right on the story and still lose money — because the move happened before you got there. "Narrative without pricing" is the #1 way discretionary traders get run over. They sell the news; the news has been bought.

**Replacement behavior.** Every thesis must include the pricing check. Before entry: "Market is pricing X. My view is Y. The trade works if Y > X." If you can't articulate the gap between market pricing and your view, you don't have a thesis — you have a forecast. Forecasts don't get sized.

---

## 5. Confusing activity with progress

**What it looks like.** High trade count. Lots of thesis docs. Lots of management log entries. P&L is flat or negative. Fees and slippage are eating returns.

**Why it feels right.** Activity feels productive. Writing theses feels like work. Reviewing positions feels engaged. The brain rewards motion, especially when you're uncertain about the regime.

**Why it's wrong.** Trading is a P&L game, not a thesis-writing game. Every trade has costs: spread, slippage, fees, opportunity cost, cognitive load, and the risk of taking a loss. If your edge is real but small, you can be net-negative just by over-trading. The 25–75bp risk per trade per `risk-framework.md` §1 doesn't help if you're taking 50 trades per month with a 45% win rate — even with positive expectancy on the underlying signal, the noise around the entries can drag you.

The harder version: when you have nothing to do, you feel like you should be doing something. That's the time to *not* trade. Sitting on hands when the setup isn't there is a skill.

**Replacement behavior.** Track the ratio of trade count to P&L. If trade count is rising and P&L isn't, you're paying fees for nothing. Reduce sizing or trade count until the ratio improves. If you're sitting out for a week because no setups qualify, that's a feature, not a bug — write a one-paragraph note in the journal explaining what would change your mind.

---

## 6. Position size drift

**What it looks like.** After a winning streak, you start sizing up — "I'm in a flow state, the edge is real." After a losing streak, you either shrink (good) or revenge-trade larger (very bad) to "make it back."

**Why it feels right.** Confidence calibration feels like it should match performance. Recent wins = high confidence = size up. The asymmetry of payoffs seems to demand aggressive sizing on the winners.

**Why it's wrong.** Sizing up after wins is sizing into **already-priced information**. The market doesn't know you had a winning streak; if your edge is real, it was real before the streak. Sizing up just means more risk on the next trade without more edge. The reverse mistake — sizing down after losses — is sometimes correct (if the losses revealed something about your process) but more often it's fear-driven and kills the recovery.

Worse: sizing drift **violates the 25–75bp per-trade band without you noticing**. You set the stop based on the new (larger) size, the bp number goes up, and your portfolio open-risk cap is breached. Drift in size = drift in risk.

**Replacement behavior.** Position sizing is rule-based, not feeling-based. The 25–75bp band per `risk-framework.md` §1 sets the contract count relative to the stop. The contract count doesn't change based on recent P&L. If you're in a drawdown, the trade-construction checks in `risk-framework.md` §6 still apply — bucket caps, open-risk cap, margin ceiling. If you can't meet those at the standard size, you don't take the trade.

---

## 7. FOMO / late-cycle entry

**What it looks like.** A move has already run — gold up 8% in three weeks, the dollar down 4%, ES at all-time highs. You weren't in it. You jump in at the move's 80% mark because the narrative feels compelling and you don't want to miss it.

**Why it feels right.** The move is real. The narrative is real. If you don't get in now, you'll regret it. The risk of missing the move feels larger than the risk of entering late.

**Why it's wrong.** By the time the move is obvious, **the risk-reward is the worst it'll be on the cycle**. Early entrants have tight stops relative to current price. Late entrants have wide stops (because invalidation is now far away) relative to the remaining move. The asymmetric payoff that existed at the start of the move has compressed to near-symmetry — or worse, you're buying into a reflexivity exhaustion point where positioning is one-sided and the next marginal buyer is no longer there.

This combines two of the other anti-patterns: narrative without pricing (the move is priced) and missing the invalidation logic (you don't know where the thesis breaks because you're entering at a non-structural level).

**Replacement behavior.** If you missed the move, the next trade is the **reversal setup** (if your framework says it's topping) or the **continuation on a pullback** (if your framework says it's trending). You do not chase. The FOMO impulse is a signal that you're late, and the trade to take is the one that has the asymmetric payoff — which by definition is the next one, not this one.

---

## Audit protocol

Add to the quarterly process audit (`process.md` §5): review the last 90 days of `02-trades/<id>/management-log.md` entries. For each closed trade, tag which (if any) anti-patterns were observed. A pattern that recurs across multiple trades is a process problem, not a trading problem — file a process change in `90-archive/process-changelog.md`.

The single highest-leverage audit question: **"On my losing trades, which anti-pattern was I in?"** If the same one shows up 3+ times in a quarter, that's where the next process change goes.
