Scale-In Entry Node

The Scale-In Entry adds to a trade that's already open, at most once per trade, on its Entry's side. How to make one, how it sizes, and why it needs a Trade node of its own.

NodeBy AlgoLiftUpdated 4 min read
On this page 7How it worksIt needs a leg of its ownExample: add on a pullback to the 20 EMASettingsUse something else whenWhen it doesn't behaveGoing further

Some ideas are better entered in pieces: one contract on the signal, and another once the trade has earned it, or once price offers a better one. The Scale-In Entry is the second piece. It belongs to one Entry, adds to that Entry's trade while it's open, and does it at most once per trade.

Takes
A condition, plus an optional quantity
Gives
An added position, passed to its own Trade node
Reach for it
Adding to a trade that's already open

How it works

You won't find it in the sidebar. Every Entry has an Add Scale-In pill along its bottom edge; drag it onto the canvas and the new node belongs to that Entry. It's named after its parent, "Entry 1 - Scale-In 1", until you give it a signal name of your own.

There's no direction to set. It trades its Entry's side, which the node shows as LONG or SHORT, and it follows along if you flip the Entry. It always sends a market order.

It can only fire while its Entry's trade is open, and only once per trade. That second rule is what makes it easy to use: the condition can be a plain state, like "price is under the 20 EMA". The first tick it's true, the scale-in adds, and it ignores the condition for the rest of that trade. When the Entry opens its next trade, the scale-in is ready again. If you want to add twice, drag out a second one.

Condition works like the Entry's: one wire, so combine several through a Logic node first. Leave Quantity unwired and it adds the position size from Account & Risk; wire a Constant in to add that many contracts instead.

It needs a leg of its own

The scale-in's output doesn't go into the Entry's Trade node. Wire it into a new Trade node, and give that leg its own exits, usually a Bracket Order. That bracket measures from the scale-in's own fill, not the original entry's.

Each leg leaves on its own exits. If the first leg hits its target, the added contract stays in until its own stop, target or exit condition closes it. Delete the Entry and its scale-ins go with it, though their Trade nodes stay on the canvas.

Example: add on a pullback to the 20 EMA

Say you trade ES 5m and go long when the 20 EMA crosses above the 50, with a 30-point target and a 12-point stop. You'd like a second contract if price dips back to the 20 EMA while the trade is still alive.

Drag Add Scale-In off the Entry. Wire a Comparison (Current Price Less Than the 20 EMA) into its Condition, and a Constant of 1 into its Quantity. Then wire its output into a new Trade node and attach a Bracket Order to that one with its own 30-point target and 12-point stop.

The first contract opens on the cross. The second only comes in if price touches back under the average before the first trade ends, and from then on each contract is managed by its own bracket.

Settings

Which Entry it belongs to, and so its side, is decided when you drag it out.

Signal name
Default Entry 1 - Scale-In 1
The name its fills carry in results, up to 20 characters.

Use something else when

Bigger size on every trade
If every trade should be two contracts, wire 2 into the Entry's Quantity. A scale-in is for size that depends on what happens after the entry.
Close part of the position
Scaling out is the opposite job: wire one Entry into two Trade nodes, each with its own exits.
A separate trade on a different setup
That's a second Entry. It can only fire while the strategy is flat, so it never adds to a trade.

When it doesn't behave

It adds on the very next tick after the entry

Its condition was already true when the trade opened, so it fired at the first chance. Make it wait for a real move: AND it with the Reached output of a Time Since set to Last entry and counting bars, so it can only add once a few bars have passed since the fill.

It never adds

It can only fire while its Entry's trade is open. If those trades usually last a bar or two, the window is tiny, and a condition like "a pullback to the 20 EMA" may never happen inside it. Check too that its output reaches a Trade node with exits; the builder flags it when it doesn't.

Going further

Scaling in changes the shape of the results more than the totals suggest. Adding on strength puts more size on the trades that were already working. Adding on a dip puts more size on the trades that dipped, and some of those are your losers. Compare the average loss and the worst trade with and without the scale-in, not only the net profit.

Or ask the copilot