Portfolio Heat Calculator: Correlation-Adjusted Forex Risk
Portfolio heat is the total percentage of your account at risk across all open trades at once. This calculator shows two numbers: naive heat (the simple sum of every position's stop-loss risk) and effective heat, which adjusts that sum for pair correlation using effectiveHeat = √(ΣΣ riskᵢ·riskⱼ·corr·dir) ÷ balance × 100.
- Naive heat sums each position's dollar risk (stop distance in pips × pip value) and divides by account balance; effective heat re-weights that sum by the 1-day correlation between every pair of positions.
- Same-direction trades on correlated pairs (e.g. EUR/USD and GBP/USD, 0.86 correlated) keep most of their combined risk; opposite directions flip the correlation sign and partially hedge, lowering effective heat.
- Heat bands are fixed: under 3% is Conservative, under 5% Moderate, under 8% Aggressive, and 8% or higher Dangerous.
- The default account balance is $10,000 and the default Max Heat limit is 6%; a warning fires when effective heat exceeds that limit, and a softer alert at 80% of it.
- The Diversification Score runs 0-100 as round((1 − average direction-adjusted correlation) × 100), where each pair contributes the absolute value of its correlation multiplied by +1 for same-direction or −1 for opposite-direction trades; a single position scores 100.
Add Position
Open Positions
| Pair | Dir | Lots | Entry | SL | TP | Risk | R:R | |
|---|---|---|---|---|---|---|---|---|
| No positions added. Use the form above to add your open trades. | ||||||||
Currency Exposure
Correlation Warnings
What-If Simulator
Simulate adding a position to see impact on portfolio heat before opening the trade.
What is portfolio heat in forex trading?
Portfolio heat is the combined risk of every position you currently hold, expressed as a percentage of your account balance. A single trade risking 1% is easy to judge. Five open trades are not, because their risks do not simply add up when the pairs move together.
This tool reports two figures side by side:
- Naive Risk (Simple Sum) — adds up the stop-loss dollar risk of every position and divides by your balance. It assumes the positions are unrelated.
- Effective Risk (Correlation-Adjusted) — recomputes that total using the historical correlation between each pair of positions, so highly correlated same-direction trades are treated more like one larger trade.
The point is to expose hidden concentration. Three long trades on EUR/USD, GBP/USD and AUD/USD look like three separate bets but behave largely as one big short-dollar bet.
How do you use the Portfolio Heat Calculator?
- Set your Account Balance (default $10,000) and your Max Heat % limit (default 6%) in the top bar.
- In the Add Position form, choose a pair, direction (long or short), lot size, entry price and stop loss. Take profit is optional and only used to show the R:R column.
- Each position is added to the Open Positions table with its individual percentage risk, dollar risk and reward-to-risk ratio.
- Read the two heat gauges at the top: naive versus effective. The Currency Exposure panel shows your net long/short bias per currency, and the Correlation Warnings panel flags dangerous pairings.
- Use the What-If Simulator to test a trade before opening it. It shows your naive and effective heat before and after, plus the change.
Positions, balance and limit are saved in your browser, and you can back up or import the portfolio as JSON.
How is correlation-adjusted heat calculated?
Each position's dollar risk is the stop distance in pips multiplied by pip value, where pip value = pip size × contract size × lots. For a standard lot (100,000 units) on a pair like EUR/USD that is $10 per pip.
Naive heat is the straight sum:
naiveHeat = (Σ dollarRisk) ÷ balance × 100
Effective heat aggregates the same dollar risks like portfolio volatility, weighting every pair of positions by their correlation:
effectiveHeat = √( ΣᵢΣⱼ riskᵢ · riskⱼ · corr(i,j) · dir ) ÷ balance × 100
Here corr(i,j) is the 1-day correlation between the two pairs (a position with itself is 1.0), and dir is +1 when both positions point the same way and −1 when they oppose. Opposite-direction trades therefore subtract risk, modelling a partial hedge. Because of the square root, two perfectly uncorrelated trades produce an effective heat below their naive sum, while two perfectly correlated same-direction trades produce an effective heat equal to it.
What do the heat levels and diversification score mean?
Both gauges are colour-coded against fixed thresholds applied to the percentage value:
| Effective heat | Label |
|---|---|
| Under 3% | Conservative |
| 3% to under 5% | Moderate |
| 5% to under 8% | Aggressive |
| 8% and above | Dangerous |
If your effective heat exceeds your Max Heat limit, a red banner warns you are over the limit. Between 80% and 100% of the limit, a softer amber alert appears.
The Diversification Score is round((1 − average direction-adjusted correlation) × 100) across all position pairs, clamped to 0-100. Each pair contributes the absolute value of its correlation multiplied by +1 for same-direction or −1 for opposite-direction trades. A single position scores 100. A book of strongly correlated same-direction trades scores low (green at 60+, amber 30-59, red below 30). A Correlation Warning is raised whenever two positions have an effective correlation above 0.70 after accounting for direction.
Worked example: two correlated longs
Account balance $10,000. You open two positions, each 1.00 standard lot with a 20-pip stop:
- EUR/USD long — pip value = 0.0001 × 100,000 × 1.0 = $10/pip; risk = 20 × $10 = $200 (2.0%).
- GBP/USD long — same maths = $200 (2.0%).
Naive heat = ($200 + $200) ÷ $10,000 × 100 = 4.0% ($400), labelled Moderate.
Effective heat: the 1-day correlation between EUR/USD and GBP/USD is 0.86, same direction so dir = +1. The inner sum is 200² + 200² + 2(200 × 200 × 0.86) = 40,000 + 40,000 + 68,800 = 148,800. Its square root is $385.75, so effective heat = 385.75 ÷ 10,000 × 100 = 3.9% ($386), still Moderate.
Because both longs are short-dollar bets that move together, the correlation adjustment barely reduces the 4.0% sum — confirming these are nearly one trade, not two. The Diversification Score is round((1 − 0.86) × 100) = 14/100 (red), and a Correlation Warning fires because 0.86 exceeds 0.70.
Frequently Asked Questions
-
This tool treats under 3% effective heat as Conservative, 3-5% as Moderate, 5-8% as Aggressive, and 8% or more as Dangerous. The built-in default Max Heat limit is 6%, with a warning once effective heat crosses it. Many risk-managed traders cap total open risk at 4-6%, but the right ceiling depends on your strategy and drawdown tolerance.
-
Naive heat simply adds the stop-loss dollar risk of every open position and divides by your balance, assuming the trades are independent. Effective heat re-aggregates those same risks using each pair's 1-day correlation, so correlated same-direction trades count as more concentrated. The two numbers match when there is a single position or when all positions are perfectly correlated and same-direction; otherwise effective heat is lower.
-
It looks up the historical 1-day correlation between every pair of open positions and feeds it into the effective-heat formula. Same-direction trades use the correlation as-is; opposite-direction trades flip its sign, modelling a partial hedge. Any two positions whose direction-adjusted correlation exceeds 0.70 trigger a visible Correlation Warning so you can spot hidden concentration.
-
The score is round((1 − average direction-adjusted correlation) × 100), clamped between 0 and 100, measured across every pair of open positions. Each pair contributes the absolute value of its correlation multiplied by +1 for same-direction trades or −1 for opposite-direction trades. A single position scores 100. Strongly correlated same-direction trades push the average up and the score down. It is colour-coded green at 60 and above, amber from 30 to 59, and red below 30.
-
No. You enter the account balance, lot sizes, entry and stop prices manually, and risk is computed from those inputs using fixed pip values and stored historical correlations. Nothing is connected to a live broker feed or your real account. Positions and settings are saved only in your own browser and can be exported as a JSON backup.
-
Each position requires a pair, a direction (long or short), a lot size, an entry price and a stop loss. Take profit is optional; it is used only to display the reward-to-risk ratio and does not affect heat. Dollar risk is computed as the stop distance in pips multiplied by the pip value for that lot size.

