Portfolio Heat: Managing Total Risk Across Multiple Open Positions
Overview #
Every experienced trader knows the one-percent rule: never risk more than 1-2% of your account on a single trade. Most traders apply this rule and consider their risk management handled. They're half right — and the missing half is what creates unexpected drawdowns on good-trading days.
The missing concept is portfolio heat: the aggregate risk across all your currently open positions simultaneously. If you have five 1% risk trades open and all five stops get hit in the same session — not uncommon during a correlated market move — you've taken a 5% loss despite following the per-trade rule perfectly. Portfolio heat is the measure that captures this exposure.
Managing portfolio heat means running two rules, not one. The per-trade limit controls individual position sizing. The global heat limit controls how much total account capital can be at risk at any moment. Without the second rule, the first rule gives false precision.
This article covers how portfolio heat is calculated, how to set heat budgets appropriate for your trading style, how correlation adjustments change the math, and how to implement practical monitoring systems without complex software.
What Portfolio Heat Actually Is #
Portfolio heat is the total dollar amount your account would lose if every open stop were triggered simultaneously. It's a snapshot of maximum current exposure — not expected loss, not average loss, but worst-case simultaneous-stop-hit loss.
The core calculation for a single position:
Position Risk ($) = (Entry Price − Stop Price) × Contracts × Contract Multiplier
For ES futures at $50 per point: if you're long 2 contracts from 5,000 with a stop at 4,990, your position risk is (5,000 − 4,990) × 2 × $50 = $1,000.
Portfolio heat is the sum of these position risks across all open positions:
Total Portfolio Heat = Σ (Position Risk for each open trade)
A trader with three open positions — each risking $500 — has $1,500 in total portfolio heat. If their account is $50,000, that's 3% of equity at risk of simultaneous loss.
The reason traders underestimate this number is that they think about their positions independently. "This NQ trade is a 1% risk. This CL trade is a 1% risk. This GC trade is a 1% risk." That framing obscures the fact that a correlated market shock can hit all three at once.
@Fat Tails on managing multiple instruments: "The maximum position size should not only be determined for each instrument separately, but for all instruments combined." The global limit is the one most traders skip — and it's the one that prevents account blow-ups during correlated selloffs.
Portfolio heat is dynamic. It changes with every new position opened, every stop moved, and every position closed. An active trader can have their heat spike much between morning and afternoon sessions if they're adding positions without tracking the running total.
The Two-Rule Framework: Per-Trade Plus Global Limit #
The canonical approach to portfolio heat management uses two independent limits that must both be respected:
Rule 1: Per-Trade Risk Limit — Never risk more than X% of account on a single trade. The most common range is 0.5% (conservative) to 2% (aggressive), with 1% being the most frequently cited professional standard.
Rule 2: Global Heat Limit — Never have more than Y% of total equity at risk simultaneously. Fat Tails on NexusFi explicitly documents a 5% global limit alongside his 1% per-trade rule — allowing up to five simultaneous maximum-size positions.
The math of why both rules are necessary:
- With only a per-trade limit, a trader following the "2% rule" could theoretically hold 50 positions simultaneously and lose the entire account if all stop out at once
- With only a global limit, a single oversized position could absorb all available heat budget and prevent diversification
- With both rules, the portfolio operates within a defined risk envelope that survives correlated market events
The practical effect of the two-rule framework on position capacity:
- 1% per-trade, 5% global limit → maximum 5 simultaneous full-size positions
- 1% per-trade, 6% global limit → maximum 6 simultaneous full-size positions
- 0.5% per-trade, 5% global limit → maximum 10 positions, or 5 positions at twice the standard size
Most active futures traders settle on a 5-8% global heat cap. Below 5%, you're often forced to pass on good setups because heat is full. Above 8%, correlated drawdowns produce uncomfortable session losses. The right number depends on your strategy's correlation structure — more correlated strategies should use lower global limits.
Calculating Your Portfolio Heat #
The basic calculation requires three inputs per position: entry price, current stop price, and contract quantity. The formula for a futures position:
Position Risk = |Entry − Stop| × Contracts × Point Value
For common futures instruments:
- ES (S&P 500 E-mini): $50 per point. Long 1 contract at 5,000, stop at 4,985: (5,000 − 4,985) × 1 × $50 = $750
- NQ (Nasdaq E-mini): $20 per point. Long 1 contract at 20,000, stop at 19,950: (20,000 − 19,950) × 1 × $20 = $1,000
- CL (Crude Oil): $1,000 per point ($10 per tick). Long 1 contract at $72.00, stop at $71.50: ($72.00 − $71.50) × 1,000 = $500
- GC (Gold): $100 per point ($10 per tick). Long 1 contract at $2,000, stop at $1,990: ($2,000 − $1,990) × 100 = $1,000
To calculate portfolio heat in real time, maintain a simple spreadsheet or mental tally:
- Open each position, record entry and stop
- Calculate position risk for each using the formula above
- Sum all position risks = total current heat
- Divide by account equity = heat as % of account
- Compare against your global heat limit before adding any new position
The key discipline point: check heat before entering, not after. Many traders open a position, then realize they've exceeded their heat budget — and make excuses for why this one is different. The calculation takes 30 seconds with a simple tracker. There's no reason to operate blind.
From @jamiej83's trading journal: "On days I had 2 consecutive losers, my read was generally off." This behavioral signal — not a formula — is portfolio heat management in human terms. Two consecutive stops is often the point where heat monitoring would have flagged the session as elevated-risk and prompted a pause.
Correlation Adjustments #
The simple sum of position risks assumes your trades are independent. They rarely are. Correlation adjustments are the most technically complex dimension of portfolio heat — and the one traders skip most often.
The correlation-adjusted heat formula:
Effective Heat = Total Heat × [1 + (N − 1) × Avg_Correlation]
Where N is the number of open positions and Avg_Correlation is the average pairwise correlation coefficient between your positions.
Examples with three $500 positions ($1,500 total simple heat):
- Zero correlation (independent positions): Effective heat = $1,500 × [1 + (3−1) × 0] = $1,500
- Moderate correlation (0.5): $1,500 × [1 + 2 × 0.5] = $1,500 × 2 = $3,000 effective heat
- High correlation (0.8): $1,500 × [1 + 2 × 0.8] = $1,500 × 2.6 = $3,900 effective heat
The practical implication: two ES positions don't count as 2× heat — they count as roughly 2.6× heat because ES intraday positions are highly correlated to each other. A trader holding both long ES and long NQ might believe they have two independent positions. They don't. Nasdaq and S&P typically correlate at 0.85+ during normal sessions and approach 1.0 during risk-off events.
You don't need precise correlation coefficients to use this framework. Practical grouping works fine:
- High correlation group (treat as 0.8+): ES + NQ, different equity index contracts, correlated currency pairs
- Moderate correlation group (0.4-0.6): Equity index + crude oil, different commodity sectors
- Low correlation group (0.1-0.2): Equity + gold during risk events, bonds + equity index during flight-to-safety moves
Fat Tails' key observation is that even zero correlation doesn't eliminate simultaneous loss risk. With three uncorrelated 50%-win-rate positions, there's still a 12.5% probability all three lose in the same session. At 1% risk each, that's a 3% single-session drawdown from trades that individually looked unrelated. The correlation adjustment formula captures the upside; the base probability math captures the downside floor.
Correlations are also dynamic. Positions that trade independently during normal sessions can suddenly become highly correlated during news events. A CPI release, FOMC announcement, or major geopolitical event can instantly correlate assets that were decorrelated for weeks. Professional risk managers run dynamic correlation models. Individual traders should apply a stress-test assumption: before any major scheduled news release, assume your entire portfolio is perfectly correlated and treat total heat as applying to a single large position.
Volatility-Scaled Position Sizing #
Static dollar stops attached to fixed price levels produce inconsistent portfolio heat. A 10-point ES stop costs $500 per contract regardless of whether ES's daily range is 20 points or 80 points. In high-volatility environments, a 10-point stop gets hit frequently not because your trade is wrong, but because it's inside the noise band. In low-volatility environments, the same 10-point stop is overgenerous and wastes risk budget.
Volatility-scaled sizing solves this by anchoring stop distance to market volatility rather than to arbitrary price levels. The institutional formula:
Contracts = Target Dollar Risk / (Contract Size × Implied Volatility × √T)
For individual traders, a practical ATR-based proxy:
ATR Stop = 2× ATR(14) on your entry timeframe Contracts = Max Per-Trade Risk ($) / (ATR Stop in Points × Point Value)
Example for ES on the 60-minute chart:
- ATR(14) = 5 points → 2× ATR stop = 10 points
- Point value = $50, so 10-point stop = $500 per contract
- 1% risk on $50,000 account = $500
- → Trade 1 contract
Same setup when ATR spikes to 15 points:
- 2× ATR stop = 30 points = $1,500 per contract
- $500 budget / $1,500 per contract → can't trade a full ES contract with this risk budget
- → Trade 1 MES (micro ES) with $150 risk, or skip this setup, or increase account-level risk budget
Volatility scaling naturally reduces portfolio heat during high-volatility periods by forcing smaller positions. This is the correct behavior: when markets are more volatile, individual position heat is higher per contract, and rational risk management reduces size. Many traders do the opposite — they increase size during high-volatility periods because "the moves are bigger" and then wonder why their heat budget explodes.
The ATR recalculation should happen with each new entry. Don't use ATR from when you first set up the trade — use current ATR at the moment of execution. @Fadi on NexusFi documented this: position sizing must be recalculated when volatility changes, not just at entry.
Tiered Heat Zones: Green, Yellow, Red, Kill #
A single global heat limit is a binary rule: under the limit is fine, over the limit is not. In practice, this produces stop-and-go behavior — traders run heat to 99% of budget, then can't take a good setup, then close one position and immediately enter a new one. The two-zone system doesn't allow for graduated response to rising heat.
A tiered heat zone system addresses this by creating gradual response thresholds:
- Green Zone (0--50% of max budget): Normal operations. Take all qualifying setups at full size. No heat restrictions.
- Yellow Zone (50--70% of max budget): Elevated monitoring. New entries require stronger-than-normal setup quality. Consider half-size on marginal setups. No new positions that increase heat in the same direction as existing correlated positions.
- Red Zone (70--85% of max budget): Pause new entries. Monitor existing positions closely. Accept that the next trade must come from closing an existing position first.
- Kill Zone (>85% of max budget): Forced de-risking. Reduce the most volatile or weakest position until heat falls below Red zone. Do not add any new positions.
The specific percentages can be adjusted to your style. What matters is that you have intermediate response levels, not just "under limit" and "over limit." The Yellow zone is where most heat management discipline plays out — the Kill zone should rarely be reached if Yellow and Red are enforced.
The tiered system also changes behavior during drawdowns. When an account is down 3% on the day, the heat budget measured as a dollar amount is the same, but measured as a percentage of current equity it's slightly higher. This natural scaling means surviving a bad day automatically reduces your available heat in dollar terms for the remainder of the session — a built-in circuit breaker.
Heat Budgets and Practical Limits #
The right global heat budget depends on your strategy's correlation structure, your account size, and your psychological capacity to manage multiple positions. Community consensus from NexusFi and institutional practice suggests these ranges:
- Conservative (single-strategy traders, correlated instruments): 3--5% global heat cap. Example: Only trading ES, one position at a time, per-trade risk 1--2%.
- Standard (multi-instrument traders, moderate correlation): 5--8% global heat cap. Example: Trading ES + CL + GC with decorrelated setups.
- Aggressive (systematic/multi-strategy, diversified): 8--12% global heat cap. Example: Multiple uncorrelated strategies running simultaneously with dynamic position sizing.
The secondary limits that reinforce the global heat cap:
- Daily loss limit: Stop trading when realized losses hit X%. @jamiej83 uses 1% daily. $mastadee uses $300 on a $5,000 account (6%). The daily loss limit is a realized-loss circuit breaker; portfolio heat is an unrealized-risk circuit breaker. Both are needed.
- Weekly loss limit: 2--3× the daily limit. @jamiej83 documents 3% weekly.
- Monthly loss limit: 6% monthly (jamiej83). If hit, stop trading for the month.
- Ruin stop (drawdown from peak): 20% peak-to-valley (jamiej83). Below this level, stop all trading and reassess the strategy.
These limits form a multi-layer defense. Portfolio heat controls simultaneous risk. The daily loss limit controls realized damage in a session. Weekly and monthly limits prevent a single bad week from destroying a month or a single bad month from destroying a quarter. The ruin stop prevents the catastrophic continuation of a strategy that has stopped working.
Margin utilization is a separate but related consideration. Most institutions cap margin utilization at 60--70% of available margin, which prevents forced liquidation cascades. Individual traders often use 100% of available margin on their positions, which creates forced-close risk during margin calls. Using a portfolio heat framework naturally limits margin utilization by constraining position size through risk calculations rather than margin maximums.
Automating Heat Monitoring #
Manual heat tracking works if you're disciplined, but it breaks down under trading stress. The moments when heat monitoring matters most — during volatile sessions when multiple positions are moving — are exactly the moments when mental tracking is least reliable. Automation removes the cognitive load and the potential for self-deception.
Spreadsheet-Based Monitoring
The simplest implementation: a spreadsheet with one row per open position. Columns: instrument, entry price, stop price, contracts, point value, calculated risk ($). A final row sums the risk column. This gives a real-time heat number that updates when you type in a new entry or stop adjustment.
The key discipline: update the spreadsheet before entering any new position. The act of entering the numbers surfaces the heat calculation before the decision is made.
Platform-Based Risk Alerts
NinjaTrader and Sierra Chart support custom position risk calculations. Fat Tails' PositionSizer indicator for NinjaTrader calculates position risk from stop distance and automatically shows portfolio-level risk across multiple open positions. This removes the spreadsheet requirement but requires initial setup.
Hard Stops on the Broker Level
Many FCMs and prop firm platforms allow hard maximum daily loss limits at the broker level that automatically halt trading when the daily loss limit is hit. This is the ultimate circuit breaker — not subject to override in the moment. Setting this to 70% of your daily loss limit (so it triggers at the top of your Yellow zone, not your Kill zone) creates a technical enforcement layer below your mental discipline layer.
Position Sizing Calculators
The formula @snax documented on NexusFi:
Position Size = Max Account Risk ($) / (Trade Risk in Ticks × Tick Value)
Pre-calculating this for different stop-distance scenarios before the trading session means you're not doing math during execution. Know before market open that a 10-tick stop on ES uses $500 of heat budget, a 15-tick stop uses $750, and a 20-tick stop uses $1,000. When heat is at 60% of budget, you know exactly which stop distances are permitted.
The automation principle: remove discretion from heat management. The limit isn't a guideline to override when you feel confident — it's a hard constraint that governs what trades are available given your current heat state.
Knowledge Map
Go Deeper
Build on this knowledgeCitations
- — Account size when trading multiple instruments (2012) 👍 5“The maximum position size should not only be determined for each instrument separately, but for all instruments combined. You need a global limit for all open positions.”
- — Concerning risk per trade sizing (2014) 👍 18“On days I had 2 consecutive losers, my read was generally off. Daily limit 1%, weekly 3%, monthly 6%, and if I hit 20% peak-to-valley I stop trading for the year. That's the whole framework.”
- — Risk of Ruin (2014) 👍 14“Zero correlation also does not help to reduce the size of the maximum drawdown. Three 50%-win-rate positions: there is still a 12.5% probability all three lose in the same session.”
- — Money management help pls (2016) 👍 10“Correlations between instruments are changing. A position-sizing framework has to account for this -- static correlation assumptions break down during market stress events.”
- — NYSE TICK and ADD (2012) 👍 8“You can allow yourself 4 units total risk per trade, which would be putting 8% of your capital at risk. Always ask before adding: would I initiate a trade from this point if I didn't already have this position on?”
- — PositionSizer for NinjaTrader (2011) 👍 17“The indicator calculates position risk from stop distance and automatically shows portfolio-level risk across multiple open positions. Automation removes the cognitive load from heat management.”
- — Optimum account size (2015) 👍 4“Use 2x ATR(14) as stop distance, back-calculate contract count such that this distance equals the per-trade risk budget. Position sizing must be recalculated when volatility changes, not just at entry.”
- — Optimal position sizing strategy (Kelly criterion) (2016) 👍 6“The Kelly criterion provides an upper bound on acceptable bet size -- but real-world risk of ruin is higher than Kelly models suggest because they don't capture model failures. Quarter-Kelly is recommended as a practical ceiling.”
- — Portfolio Heat Management: Control Your Total Risk Exposure (2024)
- — Portfolio Heat Calculator (2024)
