NexusFi: Find Your Edge


Home Menu

 



Dynamic Position Sizing for Futures Trading: Adapting Risk to Volatility, Performance, and Drawdown State

Overview #

Dynamic position sizing adapts how many contracts you trade based on three real-time inputs: current market volatility (measured by ATR), recent strategy performance (measured by rolling R-multiples), and your current drawdown state. Add hard circuit breakers that override all sizing logic, and you have a complete adaptive risk management system.

The core insight: static position sizing treats a calm Tuesday morning and a post-CPI volatility spike as identical situations. Dynamic sizing doesn't. It automatically trades smaller when ATR is elevated, reduces risk when your strategy is underperforming, and protects your account aggressively when equity falls from its peak. The result is shallower drawdowns and better capital preservation without requiring you to make sizing decisions mid-session.

This article covers the complete implementation: the base formula, volatility normalization, performance-triggered scaling tiers, drawdown state machine, circuit breakers, common failure modes, and starting parameters calibrated for real futures trading.

Why Static Position Sizing Is a Hidden Time Bomb #

Most traders size positions the same way they did when they opened their account. Fixed number of contracts. Same risk percentage every trade. Works fine when markets behave. Works like a self-destruct mechanism when they don't.

Static sizing treats a calm Tuesday morning in November the same as the hour after a surprise CPI print in March. It treats a trader on a 10-trade winning streak the same as one who just took four consecutive max-stop losses. It takes no input from the market and gives no feedback to the trader's performance — it just keeps firing at the same rate regardless of conditions.

Dynamic position sizing fixes this. Instead of a fixed number, you're targeting a consistent dollar risk that adapts to current volatility, adjusts based on how your strategy is actually performing right now, and automatically protects your account when you're in drawdown. Hard circuit breakers stop you from trading at all when conditions cross defined danger thresholds.

The result: shallower drawdowns, better capital preservation during losing streaks, and disciplined scaling when the market is actually working for you. Not because you're making better trading decisions — but because your sizing algorithm is making better sizing decisions for you.

Dynamic position sizing pipeline showing base risk, ATR normalization, volatility scale, performance scale, drawdown scale, and circuit breakers
The complete dynamic sizing pipeline -- each layer adjusts the contract count before the next layer. Circuit breakers override everything else.

The Core Formula: Sizing to Dollar Risk, Not to Contracts #

The foundation of dynamic sizing is simple. Stop thinking in contracts and start thinking in dollars of risk per trade.

The base formula:

Contracts = floor( (Account Equity x Risk%) / (Stop Distance x $/point) )

For an ES trader with a $50,000 account targeting 0.5% risk per trade with a 30-point stop:

$50,000 x 0.5% = $250 target risk
Stop cost: 30 pts x $50/pt = $1,500 per contract
Contracts = floor($250 / $1,500) = 0 --> trade MES instead (0.1x size, $5/pt)

For a larger account — $200,000 targeting 0.5% with the same setup:

$200,000 x 0.5% = $1,000 target risk
Contracts = floor($1,000 / $1,500) = 0... wait, still not quite 1 full ES.

This reveals something important immediately: many retail traders are severely undercapitalized for the risk they're trying to take, or they're actually risking far more than they think. Running this formula on your own account is often a wake-up call.

The ATR-Based Stop Distance

Static stops (fixed point stops) give the market the same stop distance whether it's moving 8 points per hour or 50 points per hour. Volatility-based stops adapt. The cleanest approach:

Stop Distance = k x ATR(14 or 20)
where k = 1.5 to 2.5 depending on your strategy

A shorter-term scalping strategy might use k=1.0. A longer-term swing trade might use k=2.5. The ATR lookback period should match your trading timeframe — 14 bars for a 5-minute chart means 70 minutes of history; 14 bars on a daily chart is 2.8 weeks.

Use a smoothed ATR (EMA of ATR rather than raw ATR) to avoid single-bar spike distortions. @wldman on NexusFi described this precisely: "Start with ATR, specifically a 20 day exponential moving average of the true range. NOTE that I am using a Day time frame, that is extremely important." The smoothing prevents your position size from collapsing on a single news spike.

Dollar ATR: The Cross-Instrument Standard

Raw ATR in price units is meaningless for comparing across instruments. A 20-point ES ATR and a 2-point CL ATR are completely different risk profiles.

Dollar ATR = ATR (in points or price units) x point value ($/point)

ES:  ATR 20 pts x $50/pt  = $1,000 dollar ATR
CL:  ATR 1.5 pts x $1,000/pt = $1,500 dollar ATR
NQ:  ATR 60 pts x $20/pt  = $1,200 dollar ATR

This is the number that actually matters. Your sizing formula should use dollar ATR as the denominator, not raw ATR. Once you're working in dollar ATR, you can size any futures instrument on the same risk-dollar basis.

On the NexusFi forum,

“2% of equity risk, based on a 1.5 ATR stop. This allows me to have a realistic expectation of my risk/reward based on the current volatility of the market and the cost of my insurance.”

That's the formula in practice — equity-percent risk divided by ATR-scaled stop.

@"I use a 2% of equity risk, based on a 1.5 ATR stop. This allows me to have a realistic expectation of my risk/reward based on the current volatility of the market and the cost of my insurance." — @tigertrader, Traders Hideout

“”
“Most longer term futures traders use volatility based position sizing. Using an indicator like ATR, and multiples of, gives you a ball park of the risk on any given trade in dollar terms.”
Drawdown state machine showing four states: Normal, Reduced, Critical, and Halted with hysteresis thresholds
The drawdown state machine automatically reduces position size as equity falls from the high-water mark. Recovery requires DD to fall below a lower threshold -- preventing 'chatter' around the boundary.

Volatility Scaling: Adjusting Size as Market Volatility Changes #

The ATR-based contract formula already adapts to current volatility — as ATR rises, your stop distance grows, so your contract count falls. But you can add an additional volatility scaling layer to normalize against a reference volatility level.

The scaling factor:

VolScale = clamp( TargetATR / CurrentATR, 0.5, 1.25 )

Where TargetATR is your "normal" ATR — typically the median ATR over the last 60-90 days. When current ATR is above normal, VolScale drops below 1.0 and you trade smaller. When current ATR is below normal, VolScale rises above 1.0 and you trade larger (capped at 1.25x).

The clamps matter. Without them, an ATR spike to 5x normal would reduce your position to 20% of normal — possibly appropriate, but the reaction should be smooth and bounded, not extreme. Similarly, allowing VolScale to go above 1.5x in low-volatility environments creates outsized risk if volatility suddenly normalizes.

Tip

A volatility regime ratio (short ATR / long ATR) detects regime shifts better than simple ATR comparison. When short-term vol is elevated relative to long-term (ratio > 1.0), you're likely in a regime change — reduce exposure.

The Volatility Regime Ratio

A more sophisticated approach replaces the reference ATR comparison with a volatility regime ratio:

VR = ATR(short period) / ATR(long period)

When short-term volatility is elevated relative to long-term (VR > 1.0), you're likely in a regime shift — reduce exposure. When short-term vol is compressed relative to long-term (VR < 1.0), the market may be building energy for a breakout — stay at normal size but watch carefully.

Important warning: if your stop distance is already based on ATR (e.g., k x ATR), don't also apply a separate ATR scaling multiplier without careful design. You risk double-counting the volatility adjustment and over-shrinking your position in high-vol environments. Choose one approach and be consistent.

Performance tier system showing five tiers from 0.50x to 1.50x multiplier based on rolling R-multiple sums
Five performance tiers driven by rolling R-multiples. Promotion is slow and gated; demotion is fast. Use R-multiples (P&L ÷ initial risk), not raw P&L, to compare across different volatility environments.

Performance-Triggered Scaling: Adapting to How Your Strategy Is Actually Working #

Volatility scaling addresses market conditions. Performance scaling addresses strategy conditions — is your edge actually working right now?

The key metric is the R-multiple: trade P&L divided by initial risk per trade. A winning trade that captured 2x your initial risk = +2R. A stop-out = -1R. An R-multiple of +1.5 over 20 trades means you captured 1.5x your initial risk on average.

Why R-multiples instead of raw P&L? Because they normalize for size. A $300 win when you risked $100 (+3R) is very different from a $300 win when you risked $500 (+0.6R). R-multiples let you compare across different volatility regimes where your position sizes were different.

The Tier System

Track rolling R-multiple sums over the last 10-30 trades. Map this to a performance tier:

  • Tier 0 (0.50x risk): R10 below -2R or 3+ consecutive losses. Capital protection mode.
  • Tier 1 (0.75x risk): R10 between -2R and -0.5R. Strategy struggling, reduce exposure.
  • Tier 2 (1.00x risk): R10 between -0.5R and +1.5R. Normal operation.
  • Tier 3 (1.25x risk): R10 above +1.5R. Strategy running well, slight scale-up.
  • Tier 4 (1.50x risk): R10 above +3R AND all other conditions favorable. Strictly gated.

@sstheo on NexusFi tested multiple approaches for a OneUp-funded account: "Combo scaling, where I started with 3 and add or subtract based on performance. Regressive scaling, where I start with the max and reduce the contracts when doing poorly. In each case, I tested and analyzed performance." The tiered system formalizes this intuition.

@"Combo scaling, where I started with 3 and add or subtract based on performance. Regressive scaling, where I start with the max and reduce the contracts when doing poorly. In each case, I tested and analyzed performance." — @sstheo, My MES Live Account Journal

“”

Hysteresis: Asymmetric Promotion and Demotion

Critical rule: use asymmetric thresholds for moving up versus moving down in tiers. Promotion should be harder than demotion.

To promote from Tier 2 to Tier 3: require R10 > +2.0R (strict)
To demote from Tier 3 to Tier 2: only need R10 < +0.5R (lenient)

This prevents "chatter" — the position size oscillating up and down every few trades. It also reflects the core philosophy: be quick to reduce risk, slow to add it back.

“As I hit new equity highs (UP), I use the original calculation method. As I fall back on the equity curve (DOWN), I adjust the number of contracts.”

The equity high-water mark becomes the gating mechanism for scaling up.

What NOT to Use

Avoid raw P&L as the performance trigger. Raw P&L changes as your account grows and your position sizes grow — a $500 losing day when you have a $20,000 account is not the same as a $500 losing day when you have a $100,000 account. R-multiples eliminate this problem.

Avoid win rate alone. A strategy with a 30% win rate and 3:1 reward-to-risk is profitable. A strategy with a 70% win rate and 0.3:1 reward-to-risk is not. Win rate without expectancy is meaningless as a scaling trigger.

ATR volatility normalization chart showing how contract count decreases as ATR increases to maintain constant dollar risk
ATR-based position sizing automatically adjusts contract count to maintain consistent dollar risk. As volatility doubles, contracts halve. Always convert ATR to dollar ATR (ATR × point value) for cross-instrument sizing.

Drawdown-State Rules: The Gate That Controls Everything Else #

Drawdown scaling is the most important layer because it answers the most important question: how much damage has already been done?

The fundamental insight from @Fat Tails on NexusFi, from extensive mathematical analysis of position sizing: "I will definitely stop trading after a drawdown of 50% (ruin). My tolerated risk level for that drawdown is 1%. I am following a fixed-fractional approach for position sizing." The drawdown state doesn't just trigger a vague "be careful" feeling — it triggers specific, quantified risk reductions.

The Drawdown State Machine

Define four states based on peak-to-trough drawdown as a percentage of account equity:

  • Normal (DD < 2%): Risk multiplier 1.0x. Full risk permitted.
  • Reduced (DD 2-4%): Risk multiplier 0.5-0.6x. Half risk. Market may be temporarily misaligned with strategy.
  • Critical (DD 4-6%): Risk multiplier 0.25x. Quarter risk. Something meaningful is going wrong.
  • Halted (DD > 6%): Risk multiplier 0x. No new entries. Review required before resumption.

These thresholds assume roughly 0.5% risk per trade. If you're running 1% risk per trade, the thresholds should be tighter (DD of 3% already represents 3 consecutive max-stop losses). Calibrate your state thresholds to your risk per trade.

Hysteresis for Re-Entry

Don't re-enable full trading the moment your drawdown falls back below the threshold. Use recovery thresholds:

Halt at DD > 6%, resume at DD < 4.5%
Enter Critical at DD > 4%, exit Critical at DD < 3%
Enter Reduced at DD > 2%, exit Reduced at DD < 1.5%

The gap between entry and exit threshold (hysteresis) prevents the system from oscillating at the boundary — jumping from halted to full trading and back again on small P&L fluctuations.

Continuous Curve Alternative

Instead of discrete states, some traders prefer a smooth function:

ddScale = max(0.25, 1 - (currentDD / maxToleratedDD))

If your maximum tolerated drawdown is 10%, at 5% DD your multiplier is 0.5. At 8% DD it's 0.2. At 10% it floors at 0.25 (you never reduce below this unless triggering a hard circuit breaker).

The continuous curve has the advantage of providing proportional feedback without hard state boundaries. The state machine has the advantage of clarity — you always know what tier you're in and why.

The Critical Rule: Drawdown Gates Performance Scaling

Positive recent performance does NOT override drawdown gating. Ever. If you're in a 5% drawdown (Critical state) but your last 10 trades have been profitable, you're still in the Critical state. Performance scaling applies within states, not as an escape from them.

This prevents a specific failure mode: recovering from a significant drawdown by trading larger (because recent trades are positive) and then taking another large loss. The drawdown happened for a reason. Let it recover before you scale back up.

Equity curve comparison between static and dynamic position sizing using the same trade signals
Same trades, same signals -- dynamic sizing reduces exposure during losing streaks and scales up during winning runs. The result is shallower drawdowns and better risk-adjusted returns, even if peak gains are similar.

Circuit Breakers: The Hard Overrides #

Circuit breakers are different from the scaling layers above. They're binary — on or off — and they override everything else. When a circuit breaker fires, the sizing formula returns zero regardless of what the other layers say.

Account-Level Breakers

  • Daily loss >= 2R: Stop trading for the rest of the day. Not "size down" -- stop. Come back tomorrow with a clean slate.
  • Weekly loss >= 5R: Reduce position sizing by 50% for the following week. Something systematic may be wrong with your strategy's current alignment.
  • Peak-to-trough drawdown >= 8-12%: Halt all new entries. This is not a scaling adjustment -- it's a full review trigger.
  • 3 consecutive stop-outs: Step down to Tier 0 (minimum risk). Consecutive losses often indicate either a bad day for the strategy or poor execution.
“I plan on using 1% of the account or $1500 as my per day initial risk for scalping. Once I've used my daily risk budget, I stop trading for the day.”

With a defined daily risk budget, the daily loss breaker becomes automatic.

Market-Level Breakers

  • ATR > 95th percentile of last 60 days: Reduce size by 50% or disable entries. Extreme volatility distorts every aspect of the sizing calculation.
  • FOMC, CPI, NFP within 15 minutes: No new entries. These events produce instantaneous price moves that make ATR-based stops meaningless for that brief window.
  • Market halt or limit move: Flatten all positions. You cannot exit a position you can't trade.
  • Spread > 3x normal: Skip the entry. Abnormally wide spreads add transaction costs that eat your R calculation.

System-Level Breakers

  • Data feed interrupted: Freeze all new entries until data integrity confirmed. You cannot make ATR or equity calculations with missing data.
  • Order fill anomaly: Stop + manual review. If orders are filling differently than expected, position sizing assumptions may be violated.
  • Realized slippage > 2x budget: Reduce size 50%. Elevated slippage adds real cost that isn't captured in your P&L projections.

After any circuit breaker fires, require a cooldown period (1-5 trading sessions) before full resumption. Circuit breakers that can be immediately reset provide less protection than those requiring a cooling-off period.

Circuit breaker dashboard showing account, market, and system hard overrides for dynamic position sizing
Circuit breakers operate before any sizing calculation runs. Three categories: account-level (P&L and DD thresholds), market-level (volatility and liquidity), and system-level (execution anomalies). All require cooldown recovery before re-enabling.

Putting It Together: The Complete Sizing Algorithm #

Here's the complete pipeline, applied in order for each trade signal:

Step 1: Base Risk
  baseRisk = accountEquity x baseRiskPct (0.25-0.5%)

Step 2: ATR Contract Count
  stop = k x smoothedATR
  contractsBase = floor(baseRisk / (stop x $/point))

Step 3: Volatility Scale (optional)
  volScale = clamp(refATR / currentATR, 0.5, 1.25)

Step 4: Performance Scale
  perfScale = tierMultiplier(R10)  // 0.5x, 0.75x, 1.0x, 1.25x, 1.5x

Step 5: Drawdown Scale
  ddScale = stateMultiplier(currentDD)  // 1.0x, 0.5x, 0.25x, or 0x

Step 6: Circuit Breaker Override
  if breaker_active: return 0

Step 7: Final Calculation
  contractsFinal = floor(contractsBase x volScale x perfScale x ddScale)
  contractsFinal = clamp(contractsFinal, 0, maxContracts)

The ordering matters. Drawdown scaling (Step 5) gates performance scaling (Step 4) — drawdown state is evaluated before performance multipliers can improve size. Circuit breakers (Step 6) override everything.

Table of recommended starting parameters for dynamic position sizing including ATR lookback, drawdown thresholds, and circuit breakers
Conservative starting parameters for dynamic position sizing. After 3-6 months of live data, adjust thresholds based on your strategy's actual behavior rather than theoretical preferences.

Implementing Dynamic Sizing in Practice #

What to Track

The system requires persistent state across sessions. You need to maintain:

  • Equity high-water mark: For drawdown calculation. Reset only when you hit a new all-time equity high.
  • Current drawdown percentage: (HWM - Current Equity) / HWM
  • Rolling R-multiple log: Last 20-50 completed trades with P&L and initial risk for each
  • ATR history: Smoothed ATR for each instrument and timeframe
  • Circuit breaker state and timestamps: Which breakers are currently active and when they were triggered
  • Daily and weekly P&L in R terms: For breaker evaluation

Store these in a spreadsheet, trading journal software, or database. If you're using automated trading, these should be persisted to disk and reloaded at session start — a system restart should not reset your drawdown tracking.

Backtesting Cautions

Dynamic sizing adds complexity to backtesting. Watch for these pitfalls:

Lookahead bias: ATR must be calculated from closed bars only. Performance windows must use completed trades only. Never use the current bar's high-low range for ATR before that bar closes.

Equity curve realism: Include commissions and slippage in your P&L calculations before computing R-multiples and drawdown states. An equity curve calculated on gross P&L will show better state metrics than the reality after costs.

Contract roll mechanics: When rolling from front month to next, ATR can shift and contract specifications may change slightly. Update your instrument specs and recalculate ATR at roll time.

Hysteresis in backtests: Make sure your backtesting code implements the correct asymmetric thresholds. A common error is using the same threshold for entering and exiting states, which underestimates the stabilizing effect of hysteresis.

Starting Parameters

For a first implementation, these conservative starting values work across most futures strategies:

  • Base risk per trade: 0.25%-0.5% of equity
  • ATR lookback: 14-20 bars, EMA-smoothed
  • Stop distance multiplier (k): 1.5-2.5x ATR
  • Volatility scale clamp: 0.5x to 1.25x
  • Performance scale range: 0.5x to 1.5x
  • Drawdown states: 2%, 4%, 6% thresholds
  • Daily loss breaker: 2R
  • Weekly loss breaker: 5R
  • Hard DD breaker: 8-12%
Tip

After running live for 3-6 months, track your actual tier distribution. If you're almost always in Tier 0-1, your strategy may have a negative edge. If you're almost always in Tier 3-4, your promotion threshold may be too lenient. Let observed behavior drive calibration, not theoretical preferences.

Five common failure modes of dynamic position sizing: double-counting volatility, scaling up too fast, treating low ATR as safe, ignoring correlation, and missing circuit breakers
The five failure modes that turn dynamic sizing from a risk management tool into a liability. Most can be prevented by choosing one volatility normalization method, requiring large trade windows before size increases, and never skipping circuit breakers.

Common Failure Modes #

Failure Mode 1: Double-Counting Volatility

If your stop distance is already k x ATR, and then you also apply a separate ATR-based volatility scale to the contract count, you've counted volatility twice. In high-volatility environments, your stop is already wider (correct, you should trade smaller), and then you're additionally reducing size with the volatility scale (double penalty). This results in position sizes that are too small during high-vol and too large during low-vol relative to your actual risk exposure.

Choose one method: either use ATR in the stop distance (already normalizing for volatility) or apply an explicit volatility scale multiplier. Don't stack both without careful design.

Failure Mode 2: Scaling Up Too Fast

Performance scaling is seductive. After a good run, it feels natural to increase size — and the system allows it. But "scaling up too fast" is the number one way dynamic sizing makes things worse instead of better. The most common pattern: a good run, size scales up, one bad day at the larger size, drawdown worse than if you'd stayed at normal size.

This is why Tier 4 (1.5x size) should be strictly gated — require sustained positive expectancy over at least 30-50 trades, not just 10. And even then, cap the upside. You don't need 1.5x to compound well. 1.25x with good discipline beats 1.5x with poor discipline every time.

Failure Mode 3: Low ATR Does Not Mean Safe

When ATR is unusually low (compressed markets, pre-holiday sessions, low-volume periods), your volatility scaling would say to increase size. But compressed volatility often precedes high-volatility expansion — the market is coiling, not calming.

Add a check: when ATR is in the bottom 10% of its historical range, cap your volatility scale at 1.0x (no increase for "cheap" volatility). The potential for a volatility spike outweighs the apparent opportunity of a quiet market.

Failure Mode 4: Ignoring Correlation

You're trading ES, NQ, and RTY simultaneously. Volatility scaling and performance tracking are done per instrument. But when markets sell off hard, all three move together. Your "three independent positions" just became three correlated positions, and your actual risk is 3x what each position's independent calculation suggested.

Add a portfolio-level cap: sum of all open position risks (in dollar terms) should not exceed some portfolio limit, typically 2-3x your single-trade risk. If adding a third position would breach this cap, don't take it — even if the per-instrument sizing says it's fine.

Failure Mode 5: No Hard Circuit Breakers

A tiered performance scaling system without hard circuit breakers is incomplete. Suppose you're in Tier 0 (0.5x size) due to a losing streak. Without a circuit breaker, you'll keep trading at 0.5x indefinitely, accumulating losses at half speed. With a hard daily loss breaker (2R), you stop for the day. With a weekly loss breaker (5R), you stop for the week. These forced pauses are when you review, recalibrate, and determine whether the problem is execution, strategy fit, or market regime.

“Also define a maximum loss per week, for example 10% of the account, and stop trading for one week if that loss has occurred to review the trades and the reasons for the drawdown.”

The review is mandatory. Size reduction without review is just slow motion account liquidation.

Warning

The review after a circuit breaker trigger is not optional. Size reduction alone is not risk management — it's just slower capital destruction. The breaker creates the space to understand what went wrong. Use that space.

R-multiple tracking chart showing 20 trades with rolling R10 values and tier transitions
Rolling R10 (sum of last 10 R-multiples) drives tier transitions. The first 10 trades use neutral Tier 2 sizing while the window fills. Note how losing streaks quickly push to lower tiers, while promotions require sustained positive R10 above threshold.

Systematic vs. Discretionary Trading #

Dynamic sizing applies to both, but with different implementation approaches.

For systematic/automated strategies, the sizing algorithm should be built directly into the execution system. It calculates position size from live account equity, live ATR, and persisted performance/drawdown metrics at the moment of each signal. The circuit breakers block order submission automatically. No human review required — that's the point of the system.

For discretionary traders, pre-session calculation works well. Before the session, you calculate your current tier, drawdown state, and the specific contract count you'll use for the day. This number is fixed at session start and does not change intraday (except when circuit breakers fire). Mid-session recalculation introduces discretion into a system designed to remove it.

@wldman on NexusFi described this pre-session approach: "Start with ATR, specifically a 20 day exponential moving average of the true range. NOTE that I am using a Day time frame, that is extremely important. When computing risk."

Position sizing math table showing how to calculate contracts for ES, NQ, CL, GC, and ZN futures using the same dollar risk budget
The same $250 risk budget produces different contract counts across instruments because Dollar ATR varies dramatically. Dollar ATR = ATR x $/point is the universal currency for comparing risk across futures markets.

The Relationship to Fixed Fractional Sizing #

Dynamic sizing extends fixed fractional sizing (always risking the same percentage of equity per trade) with adaptive filters. Pure fixed fractional already provides some volatility normalization through the equity-percentage calculation — as your account grows, your position size grows proportionally. As it shrinks in drawdown, position size shrinks.

Dynamic sizing adds the performance and drawdown states on top of this base behavior. In good times, it allows cautious upscaling. In bad times, it accelerates the downscaling beyond what pure fixed fractional provides.

The Kelly Criterion and Optimal F methods suggest maximum position sizes for a given edge, but they assume your estimated edge is accurate and stationary. Dynamic sizing explicitly adjusts for the possibility that your recent edge estimate is wrong — either because the market has changed or because your recent sample is misleading. That humility is the practical advantage over pure Kelly-based sizing.

Combined drawdown state and performance tier matrix showing final position sizing multipliers
The full sizing matrix -- drawdown state on the left, performance tier across the top. Drawdown always caps performance scaling. A trader in the Reduced state (DD 2-4%) can never exceed 0.75x even at Tier 4 performance. Halted state means no new trades regardless of recent wins.

Monitoring and Refinement #

After implementing dynamic sizing, track these metrics weekly:

  • Position size stability: Are sizes oscillating frequently between tiers, or are they stable? Frequent oscillation suggests your tier thresholds may be too tight.
  • Circuit breaker frequency: How often are daily loss breakers triggering? More than 1-2x per month suggests either too tight a threshold or a strategy that needs review.
  • Tier distribution: What percentage of time are you in each tier? If you're almost always in Tier 0 or 1, your strategy may have a negative edge. If you're almost always in Tier 3 or 4, your threshold for promotion may be too lenient.
  • Realized slippage vs. ATR-assumed slippage: Are fills matching the costs embedded in your sizing assumptions?

Adjust thresholds based on actual behavior, not theoretical preferences. A drawdown threshold of 2% may be appropriate for a strategy with 0.5% risk per trade but too tight for a strategy with 0.25% risk per trade. Let your system's observed behavior inform calibration.

Dynamic position sizing is not a system that you set and forget. It requires the same disciplined review you apply to strategy development — track it, measure it, and adjust it as you learn how your specific strategy and your specific markets actually behave.

Implementation checklist for dynamic position sizing showing four phases from core sizing to portfolio awareness
Four implementation phases for dynamic position sizing. Start with Phase 1 (core sizing + circuit breakers) and run it live for 3-6 months before adding performance scaling. Portfolio-level controls in Phase 4 matter most when trading multiple instruments simultaneously.

Citations

  1. @tigertraderConcerning risk per trade sizing (2012) 👍 4
    “I use a 2% of equity risk, based on a 1.5 ATR stop. This allows me to have a realistic expectation of my risk/reward based on the current volatility of the market and the cost of my insurance.”
  2. @Fat TailsLord Sidious's Trading Journal (2012) 👍 66
    “Define a maximum loss per week, for example 10% of the account, and stop trading for one week if that loss has occurred to review the trades and the reasons for the drawdown.”
  3. @kevinkdogTaking a Trading System Live (2014) 👍 8
    “As I hit new equity highs (UP), I use the original calculation method. As I fall back on the equity curve (DOWN), I adjust the number of contracts to account for the reduction in equity.”
  4. @sstheoMy MES Live Account Journal (OneUp) (2019) 👍 4
    “Combo scaling, where I started with 3 and add or subtract based on performance. Regressive scaling, where I start with the max and reduce the contracts when doing poorly. In each case, I tested and analyzed performance.”
  5. @wldmanMinimum starting funds to learn to trade (2016) 👍 3
    “Start with ATR, specifically a 20 day exponential moving average of the true range. NOTE that I am using a Day time frame, that is extremely important. When computing risk, this gives you a stable, smoothed measure of recent market volatility.”
  6. @PandaWarriorThe Pandawarrior Chronicles II (2014) 👍 20
    “I plan on using 1% of the account or $1500 as my per day initial risk for scalping and up to 2% for swing trades. Once I've used my daily risk budget, I stop trading for the day regardless of what the market is doing.”
  7. @MXASJPosition Sizing by Van Tharp (2009) 👍 15
    “The Van Tharp method looks at how much you are prepared to risk per trade (2% of equity in this case), what the 14 period ATR is for the timeframe you are trading, and what your stop loss point is as ATR.”
  8. @Fat TailsRisk of Ruin (2012) 👍 39
    “I will definitely stop trading after a drawdown of 50% (ruin). My tolerated risk level for that drawdown is 1%. I am following a fixed-fractional approach for position sizing, that is I will increase my position size when my account grows and reduce it when my account shrinks.”
  9. @Fat TailsPositionSizer for NinjaTrader (2010) 👍 12
    “ATR is added to determine the stop loss. The stop loss calculated from volatility is the mean of minimum and maximum ATR plus spread. This gives you a volatility-normalized stop that adapts to current market conditions.”
  10. @OccamsRazorTraderDo you change your strategy based on volatility? (2022) 👍 2
    “Most longer term futures traders use volatility based position sizing. Using an indicator like ATR, and multiples of, gives you a ball park of the risk on any given trade in dollar terms.”

Help Improve This Article

NexusFi Elite Members can help keep Academy articles accurate and comprehensive.

Unlock the Full NexusFi Academy

812 in-depth articles across 17 categories — written by traders, backed by community research. Includes knowledge maps, citations with community excerpts, and the ability to help improve articles.

We add approximately 289 new Academy articles every month and update approximately 608 with fresh content to keep them highly relevant.

Strategies (86)
  • Order Flow Analysis
  • Volume Profile Trading
  • plus 84 more
Market Structure (43)
  • Initial Balance: The First Hour That Defines Your Entire Trading Day
  • Opening Range: Why the First 15 Minutes Define Your Entire Trading Session
  • plus 41 more
Concepts (44)
  • Futures Order Types: Market, Limit, Stop, and Conditional Orders
  • High Volume Nodes & Low Volume Nodes
  • plus 42 more
Exchanges (43)
  • Futures Exchanges: Understanding Where and How Futures Trade
  • plus 41 more
Indicators (55)
  • Delta Analysis & Cumulative Volume Delta (CVD)
  • Market Internals: Reading the Broad Market to Trade Index Futures
  • plus 53 more
Risk Management (43)
  • Risk Management for Futures Trading
  • Position Sizing Methods for Futures Trading
  • plus 41 more
+ 11 More Categories
812 articles total across 17 categories
Instruments (58) • Automation (44) • Data (43) • Prop Firms (42) • Platforms (54) • Brokers (42) • Psychology (43) • Prediction Markets (43) • Regulation (43) • Cryptocurrency (43) • Infrastructure (43)
Become an Elite Member


© 2026 NexusFi®, s.a., All Rights Reserved.
Av Ricardo J. Alfaro, Century Tower, Panama City, Panama, Ph: +507 833-9432 (Panama and Intl), +1 888-312-3001 (USA and Canada)
All information is for educational use only and is not investment advice. There is a substantial risk of loss in trading commodity futures, stocks, options and foreign exchange products. Past performance is not indicative of future results.
About Us - Contact Us - Site Rules, Acceptable Use, and Terms and Conditions - Downloads - Top