> **Educational use only — not investment advice.** See full disclaimer in [README.md](README.md).
**This is the most important file in the manual.** Strategy selection determines *whether* you make money over many trades; position sizing determines *whether you’re still in the game* to collect it. Most traders who fail don’t fail because they pick bad strategies — they fail because one oversized trade wipes out months of gains. Decide these numbers once, write them down, and never override them at the screen.
> **The prime directive:** *No single trade may be able to materially hurt your account.* If a position blowing up to its worst case would end your trading, it is too big — regardless of how confident you are.
—
## 1. Set your fixed limits (do this once, before any trade)
Pick numbers and commit. These are starting points used by most professional retail risk frameworks; adjust *down* if you’re newer or the account is your livelihood.
| Limit | Conservative | Standard | Aggressive | Notes |
|——-|————-|———-|———–|——-|
| **Max risk per trade** (defined-risk) | 1% of account | 2% | 3% | “Risk” = max loss the position can take, not capital deployed |
| **Max risk per trade** (undefined/naked) | treat as 2–3× a defined trade’s risk | — | — | Size off a *stress scenario*, not the credit |
| **Max risk per underlying** | 3% | 5% | 8% | All positions on one name combined |
| **Max total portfolio at risk** | 15% | 25% | 35% | Sum of all max-losses live at once |
| **Max in one sector / correlated group** | 10% | 15% | 20% | Tech megacaps move together — don’t fool yourself |
| **Max number of open positions** | 5–8 | 8–12 | 12–20 | More than you can manage = none managed well |
| **Capital in undefined-risk at once** | 0% | small | moderate | Only if L4-approved and you understand the tail |
> **Why “risk per trade,” not “capital per trade”?** A bull put spread might tie up $300 of buying power but its *max loss* is $300 too — for defined-risk, capital ≈ risk. But a long call costs (and risks) its full premium, while a naked put ties up large BP yet its real risk is the strike-to-zero distance. Always size off **the worst realistic outcome**, which the strategy files give you as “Max loss.”
—
## 2. The core sizing formula (defined-risk)
“`
Contracts = floor( (Account value × Risk-per-trade %) ÷ (Max loss per contract) )
“`
Where **Max loss per contract** comes straight from the strategy file’s P&L math (× 100).
**Example — bull put credit spread:**
– Account = $50,000. Risk-per-trade = 2% → **$1,000** max risk for this trade.
– You’re selling a 5-wide SPY bull put spread for **$1.50** credit.
– Max loss per spread = (width − credit) × 100 = (5.00 − 1.50) × 100 = **$350**.
– Contracts = floor(1,000 ÷ 350) = **2 spreads.** (Risking $700; the 3rd would breach $1,000.)
**Example — long call (debit):**
– Same account, 2% = $1,000. A long call costs **$4.20** = **$420 max loss per contract** (premium is the whole risk).
– Contracts = floor(1,000 ÷ 420) = **2 contracts.**
> **Round DOWN, always.** Fractional risk discipline is the difference between a bad month and a bad year.
—
## 3. Sizing undefined-risk (naked) trades — different math
Naked shorts (short puts, short strangles, short straddles) have no fixed max loss, so the formula above doesn’t apply. Use a **stress test** instead:
– **Short put / strangle put side:** size as if the underlying drops to a stress level (e.g., a 2-standard-deviation move, or simply “what if it gaps to the strike / 15–20% down?”). Your loss ≈ (strike − stress price − credit) × 100 × contracts. Keep *that* number within ~2–3× your normal per-trade risk.
– **Short call side:** theoretically unlimited. Stress a sharp rally (e.g., +15–20% or a buyout gap). This is why naked calls are the most dangerous single position in options and why many pros simply never sell them.
– **Buying-power reality:** brokers reserve large BP for naked positions (often ~20% of notional, formula varies). You’ll hit a BP wall long before a contract-count limit — respect it; don’t max out BP, because a vol spike *raises* the BP requirement and can force liquidation at the worst moment.
> If undefined-risk math feels uncomfortable, that discomfort is correct information. The **defined-risk substitute** (iron condor instead of strangle, etc.) caps the tail for a modest haircut in credit. For most traders, most of the time, that trade-off is worth it.
—
## 4. Portfolio-level risk: the part people skip
Per-trade discipline is not enough if all your trades are secretly the *same* trade.
– **Aggregate max loss:** sum the max-loss of every open position. Keep it under your *Max total portfolio at risk* line. When you’re near the cap, **new trades wait.**
– **Correlation is hidden leverage:** five bullish credit spreads on AAPL, MSFT, NVDA, QQQ, and SMH are *one* tech-beta bet. A single bad tech day takes them all. Beta-weight your book to SPY (see [ref-greeks-iv-mechanics.md](ref-greeks-iv-mechanics.md) §4) and watch your **net beta-weighted delta** — that’s your true directional exposure.
– **Net vega:** if you’re a premium seller, you’re probably net *short vega* across the book. A market-wide IV spike hits *every* position at once. Cap aggregate short vega and know what a +5 VIX day does to your account.
– **Occupancy:** keep dry powder. Being 100% deployed means you can’t act on the best opportunities (which appear in panics) and can’t withstand a drawdown. Many premium-sellers cap deployed capital around 50%.
—
## 5. Adjusting size for conditions
Your *base* size from §2 is for normal conditions. Scale it:
| Condition | Size adjustment |
|—|—|
| **Very high IVR (>70) / VIX > 30** | **Cut to ⅓–½.** Rich premium, but violent realized moves. |
| **Low liquidity / wide markets** | Cut hard or skip. Slippage *is* a loss. |
| **Earnings or binary event in the position** | Size for the *gap*, not the normal day. |
| **Strong conviction + clean setup + ideal IVR** | Base size — *not* more. Conviction is not a sizing input; it lies. |
| **After 2–3 consecutive losses** | Cut size, slow down. Tilt is real; protect against yourself. |
| **New strategy you haven’t traded live** | Trade it at **minimum size** until you’ve run it ~10 times. |
> **Never average down a losing options trade to “lower your cost basis.”** Unlike stock, options decay and expire. Adding to a loser usually just enlarges the loss. Add to *winners* (if at all), defend or close losers per [ref-management-adjustments.md](ref-management-adjustments.md).
—
## 6. The Kelly sidebar (for the analytically inclined)
The Kelly criterion gives the *theoretically* growth-optimal fraction to risk given your edge:
“`
Kelly fraction f* = W − (1 − W) / R
W = win probability, R = avg win / avg loss
“`
Full Kelly is far too aggressive for real trading (it assumes your edge estimate is perfect and tolerates gut-wrenching drawdowns). **Use fractional Kelly — ¼ to ½ at most** — and even then, only as a sanity check against the fixed % limits in §1, never to *exceed* them. If Kelly says risk 12% and your rule says 2%, you risk 2%. The rule wins.
—
## 7. The pre-trade sizing checklist
– [ ] I know this trade’s **max loss per contract** (from the strategy file).
– [ ] Contracts = floor(account × risk% ÷ max-loss-per-contract), **rounded down**.
– [ ] Max loss ≤ my **per-trade** limit (and for naked, my stress-loss ≤ 2–3× that).
– [ ] Adding this, I’m within my **per-underlying** and **per-sector** limits.
– [ ] Aggregate portfolio max-loss is still under my **total** cap.
– [ ] This doesn’t push **net beta-weighted delta** or **net vega** past my comfort.
– [ ] Buying-power used leaves a buffer for a vol spike (I’m not maxing BP).
– [ ] Size is adjusted for IVR/liquidity/events per §5.
– [ ] If the minimum viable size (1 contract) **still** exceeds my risk limit → **I pass.** The trade is too big for this account.
> **The discipline that makes everything else work:** position sizing is the one rule you must never break “just this once.” Every trader who’s been wiped out had a “just this once.”
—
*Next: confirm your account can run the chosen strategy → [04-account-and-approval.md](04-account-and-approval.md). Then run the pre-flight → [05-checklists.md](05-checklists.md).*