Scaling out of trades: what partial exits change in a backtest
Scaling out of a futures position is a blend of two or more exit rules, each applied to part of the contracts. Its average profit per contract sits between the best and the worst of those rules, the spread of trade results narrows, and costs rise only where each extra order pays its own slippage or a per-order fee. Test each batch as its own exit rule, after costs.
By Soren Huang · Published · updated · Editorial policy
Contents
- Does scaling out of trades beat exiting all at once?
- What does scaling out mean in a futures position?
- What changes when you split one exit into two on the same entries?
- How many contracts should you split into how many batches?
- Does scaling out reduce profit? Expectancy and smoothness
- Do extra exits cost more commission?
- What can a backtest not tell you about partial fills?
- Frequently asked questions
- References
Does scaling out of trades beat exiting all at once?
Scaling out of trades does not raise the average profit per contract above the best single exit on the same entries. It narrows the spread of trade results, and it adds cost only where each extra exit order carries its own slippage or a per-order fee. Whether that suits your market comes from testing each batch as its own exit rule.
Think of two cars driving the same road home, one leaving at five and one at seven. Sending half the family in each car does not get everyone home sooner than the faster car does. It averages the two arrival times and makes sure that one traffic jam does not catch everyone. Scaling out works the same way: it averages the results of two exit rules and shortens the worst case, and it costs a second car.
One claim runs through this article, and you can test it on your own trades: a scaled-out position is not a new and better exit, it is a mix of exit rules you could also test one at a time. Once you see it that way, the question "should I take partial profits?" turns into "which of these exit rules deserves which share of my contracts?", and that question has a measurable answer.
What does scaling out mean in a futures position?
Scaling out is closing a position of two or more contracts in two or more batches at different prices or times, and each batch is in effect a separate exit rule applied to part of the position. A trader who is long three ES contracts might sell one at a first target, one at a second target, and keep the last one until a trailing stop is hit. Partial profit taking is the everyday name for the first batches; the last batch is often called the runner.
Each batch has three parts, and a backtest needs all three written down:
- Size: how many contracts leave in this batch.
- Trigger: the price, indicator or time that closes the batch, such as a fixed-tick target, an ATR trailing stop that also sets position size, or a session-end exit.
- Order type: a limit order for a target, a stop order for a protective exit, a market order for a time exit. The order type decides how the batch fills live, which the last section covers.
Because every batch is a rule, the choice of fixed, ATR, time or trailing stop loss for a futures strategy applies to each batch separately. Batch 1 can have a tight target and batch 3 a wide trailing stop; they are two strategies sharing one entry.
What changes when you split one exit into two on the same entries?
On identical entries, splitting one exit into two changes three things: the number of exit orders, the size of the biggest winner, and the equity swing of each trade. It does not change the entries, the losers that are stopped before the first batch leaves, or the per-contract commission. The table below compares three exit designs on the same entry with three contracts.
| What changes | All out at target | All out on trailing stop | Half at target, half on trailing stop |
|---|---|---|---|
| Exit orders | 1 | 1 | 2 |
| Size of the biggest winner | Medium (capped at the target) | Largest | Between the two |
| Size of a typical loser | Full position | Full position | Full position, unless batch 1 is already out |
| Equity swing per trade | Medium | Largest | Smallest |
| Per-contract commission | Same | Same | Same |
| Per-order slippage and fees | One order | One order | Two orders |
To make this concrete, here is the kind of single-exit, one-contract baseline a reader would split into batches. AlphaPrime (Valynox) ran a search on ES daily bars from 2019-01-02 to 2025-06-30, long and short, one contract, with $20 commission and $25 slippage per trade. The run tests a stand-in rule, not scaling out: a Volume Profile volume rule is its only entry and exit, with no stop, no target and no filters. The result below is the one candidate the search kept out of the 1,024 it tried, chosen for its return against its drawdown, and picking the kept one after the fact flatters its numbers.
Source: AlphaPrime product engine (CPU), run 2026-10-31. ES daily bars, 2019-01-02 to 2025-06-30, long and short, 1 contract, $20 commission and $25 slippage per trade.
| Number | Result |
|---|---|
| Net profit (closed trades) | $183,480 |
| Max drawdown | $30,695 |
| Trades | 181 |
| Win rate | 66.85% |
| Profit factor | 1.9 |
| Average trade | $1,013.7 |
| Time in market | 62.42% |
Read the box as a starting point for a split, not as a result of one. With one contract, the 181 trades in this run had exactly one exit each, so every number in the table belongs to a single exit rule. If you traded two contracts and let one leave early, the second batch would need its own rule, and that rule has not been tested here. The equity curve shows the drawdown and the out-of-sample stretch you would want to see before touching the exit design at all.
How many contracts should you split into how many batches?
The contract count sets which batches are possible, so position size decides whether scaling out is available at all. One contract cannot be split. Two contracts allow two batches of one. Three contracts allow 1+2 or 1+1+1. Ten contracts allow almost any plan, such as 3+3+4. Before you plan batches, check how many contracts your account risk and stop distance allow with the free position size calculator; the answer is often one or two, which limits the plan to a single split.
Micro contracts change the arithmetic. Where an exchange lists a micro contract, one standard contract of exposure becomes several smaller blocks, so a trader who could only hold one E-mini can hold the same exposure in micro contracts and split it. CME Group lists its Micro E-mini equity index futures at one-tenth of the size of the E-mini contracts. Exchanges can change contract sizes and values, so check the exchange's contract page, and set the multiplier and roll rules the way futures contract specs and rollover in backtests describes before any size test.
Fix the batch plan before you test the sizing rule, because size alone moves the results with identical entries and exits. The second box shows the same 181 ES trades from the box above under nine money-management methods, with $100,000 of capital and at most ten contracts. Entries and exits stay the same in every row; only the contract count per trade changes, so every difference between the rows comes from sizing. None of these rows is a scaling-out result, because every position still leaves in one order.
Source: AlphaPrime product engine (CPU), run 2026-10-31. Same trades as the box above, capital $100,000, at most 10 contracts.
| Method | Net profit | Max drawdown | Average contracts |
|---|---|---|---|
| Fixed contracts | $557,680 | $91,845 | 3 |
| Fixed notional | $465,593 | $85,900 | 2.5 |
| Percent of equity | $1,429,843 | $305,870 | 7.07 |
| Fixed dollar risk | $438,230 | $92,625 | 2.69 |
| Fixed fractional risk | $1,352,068 | $305,870 | 6.93 |
| Volatility target | $438,230 | $92,625 | 2.69 |
| Fixed ratio | $1,076,305 | $305,870 | 5.27 |
| Equity curve trading | $409,193 | $72,808 | 2.39 |
| Kelly | $420,968 | $171,370 | 2.67 |
Two rows make the point. Fixed contracts averaged 3 contracts and showed $557,680 of net profit against a $91,845 drawdown; percent of equity averaged 7.07 contracts and showed $1,429,843 against a $305,870 drawdown, from the very same entries and exits. If size alone can move the drawdown that far, a batch plan tested on top of a changing size would mix two effects you cannot separate afterwards. Decide the batches, then test the size; or decide the size, then test the batches. Never both at once.
Does scaling out reduce profit? Expectancy and smoothness
Scaling out does not reduce profit per contract below the worst of its batch rules and does not raise it above the best; it lands in between, weighted by how many contracts each rule handles, while the spread of trade results narrows. Expectancy is the average result of one trade after costs, over many trades. The spread of trade results is the standard deviation, which is how far single trade results typically sit from that average. Scaling out trades expectancy on the best rule for a smaller standard deviation.
One formula worth knowing here:
expectancy per contract of the scaled position = (contracts in batch 1 × expectancy of rule 1 + contracts in batch 2 × expectancy of rule 2) ÷ total contracts
Here expectancy of rule 1 is the average profit per contract after costs you would get if every contract left on batch 1's rule, expectancy of rule 2 is the same for batch 2's rule, and the weights are how many contracts each batch holds. A weighted average cannot be larger than its largest input. So if the trailing-stop rule is the better rule on its own, giving half the contracts to a fixed target lowers the average per contract. If the fixed target is the better rule, keeping a runner lowers it. The split can only win on the spread, never on the average.
Hypothetical example
Suppose that on the same 200 entries, exiting every contract at a fixed target averages $150 per contract after costs, and exiting every contract on a trailing stop averages $250 per contract after costs. A half-and-half split averages (1 × 150 + 1 × 250) ÷ 2 = $200 per contract. The trailing-stop results have a standard deviation of $900 with a few very large winners; the half-and-half results have a standard deviation of about $600, because half of every winner is capped at the target. The split gave up $50 per contract of expectancy to cut a third of the spread.
Whether $50 per contract is a fair price for a narrower spread depends on how much drawdown you can hold and on how many trades your edge needs before you trust it; how to define a trading edge in numbers and how many trades it needs covers that count. The honest comparison is three rows, all after costs: expectancy per contract and standard deviation of trade results for rule 1 alone, rule 2 alone, and the split. If the split's expectancy is lower than one of the single rules by more than you save in spread, the simpler answer is to trade the better rule with all contracts.
Do extra exits cost more commission?
Per-contract commission is the same whether three contracts leave in one order or in three, so extra exits cost more only where the broker charges a per-order or ticket minimum, or where each order pays its own slippage. Those two lines are the ones to add to your backtest cost settings when you test a split; the per-contract line does not move.
Slippage is where most of the difference hides. A single market exit for three contracts crosses the spread once. Three separate exits cross it three times, at three different moments, and a stop batch triggered in a fast move pays more than a target batch that was already resting at its price. A backtest that charges slippage per contract will show no change between one exit and three; a backtest that charges it per order, or charges a different amount for stop orders than for limit orders, will. Decide which model matches your fills before you compare.
Hypothetical example
Three contracts, commission $2.50 per contract per side, a $1.00 ticket minimum per order where the broker applies one, and $12.50 of slippage per exit order. One exit: commission $7.50, ticket $1.00, slippage $12.50, total $21.00 on the exit side. Three exits of one contract: commission still $7.50, tickets $3.00, slippage $37.50, total $48.00. The commission line did not move; the per-order lines more than doubled the exit cost.
Take the values from your broker statement, not from a fee page. Count how many orders a typical round trip generated and divide the fees by that count; the result tells you whether your broker is per-contract only or adds a per-order piece. Then enter commission and slippage per trade in AlphaPrime's backtesting settings so every candidate is charged the same way with next-bar execution, and raise the slippage line when you test a design with more exit orders than the baseline had.
What can a backtest not tell you about partial fills?
A bar backtest fills every batch in full at its exit price, but a limit-target batch can fill partly or not at all when price only touches its level, while a stop batch fills as a market order at whatever price is available. A backtest built on bars does not see the queue at a price level, so it cannot tell you how many of your three contracts actually left at the target.
The reason is in the order types. A limit order fills only at its price or better, and the U.S. Securities and Exchange Commission's investor bulletin on order types notes that it may not be executed at all if the price never reaches the limit, or if other orders at that price are ahead of yours. A stop order, by contrast, becomes a market order once the stop price is reached and fills at the next available price, which can be worse than the stop level. So in a scaled-out position the target batches are the optimistic ones and the stop batches are the ones a bar backtest models most fairly, as long as the fill is priced at the next bar rather than at the trigger.
Three steps keep the test honest:
- Write each batch as a separate strategy on the same entries, one contract each. Batch 1 becomes "enter on the rule, exit at the target"; batch 3 becomes "enter on the rule, exit on the trailing stop". Each strategy gets its own expectancy and standard deviation after costs.
- Price stop-type exits at the next bar, not at the trigger price. A stop that triggers on a bar close fills on the next bar's open at best; a stop hit inside a bar fills somewhere past the level.
- Treat limit-target batches as optimistic and read them twice: once as the backtest shows them, and once with the rule that the target counts as filled only if price trades through the level by at least one tick. The gap between the two readings is the partial-fill risk you cannot see in bars.
Your next step is small and concrete: take your current single-exit strategy, keep its entries unchanged, and write the exit rule you would use for the runner as a second strategy with one contract. Run both with the same commission and slippage, then put the two expectancies and the two standard deviations side by side with the formula from the expectancy section. If the weighted average of the two is lower than the better single rule by more than the spread you gain, you already have your answer for that market, before a single contract is split.
Frequently asked questions
Is scaling out better than exiting all at once?
No general winner exists between the two. Scaling out is a contract-weighted average of two or more exit rules, so its expectancy per contract sits between the best and the worst of those rules. What it changes is the spread of trade results, which narrows, and the exit cost, which rises where each order pays its own slippage or a ticket minimum. Test each batch rule alone on the same entries and compare after costs.
Does scaling out reduce profit?
It reduces profit per contract compared with the best single exit rule on the same entries, and raises it compared with the worst one. A half-and-half split of a $150 rule and a $250 rule averages $200 per contract in a hypothetical example. The trade-off is a smaller standard deviation of trade results and a smaller equity swing per trade. Whether that is worth the lower average depends on how much drawdown you can hold.
How many contracts do I need to scale out?
At least two, because one contract cannot be split. Two contracts allow one split, three allow 1+2 or 1+1+1, and ten allow almost any plan. If your account risk and stop distance only allow one standard contract, a micro contract where the exchange lists one gives the same money size in more blocks. Fix the batch plan before you test the sizing rule, because size alone changes net profit and drawdown on identical trades.
Do partial exits cost more commission?
Per-contract commission is the same whether the contracts leave in one order or several. Extra exits cost more only where the broker charges a per-order or ticket minimum, and where each order pays its own slippage. Check your broker statement for a per-order component, and raise the slippage setting in the backtest when a design has more exit orders than the single-exit baseline.
Can a backtest show partial fills on a target order?
A bar backtest cannot. It fills every batch in full at its exit price, while a live limit order at a target may fill only partly, or not at all, when price touches the level once and turns. Stop batches become market orders when triggered and are modelled more fairly when priced at the next bar. Read limit-target batches as optimistic and test them with a one-tick trade-through rule as a second reading.
References
- U.S. Securities and Exchange Commission. Understanding Order Types (Investor Bulletin). https://www.investor.gov/introduction-investing/general-resources/news-alerts/alerts-bulletins/investor-bulletins-14
- U.S. Securities and Exchange Commission. Stop, Stop-Limit, and Trailing Stop Orders (Investor Bulletin). https://www.investor.gov/introduction-investing/general-resources/news-alerts/alerts-bulletins/investor-bulletins-15
- CME Group. FAQ: Micro E-mini Equity Index Futures. https://www.cmegroup.com/articles/faqs/frequently-asked-questions-micro-e-mini-equity-index-futures.html

