Take a third, take another third, trail the rest
Entries get all the attention, and the exit is usually where the money actually goes. What you want is not one target — it is three exits, a stop that moves in response to the first one, and a time-based give-up.
Take a third off at 1R and move my stop to breakeven. Take another third at 2R. Let the last third run with a trailing stop at 2 ATR. And if it stalls for six hours without progress, close the rest and move on.
Why this is hard on a bot platform
Most bots give you one take-profit field and one stop-loss field. Some offer a few TP steps, and where they do, the steps are fixed percentages set at configuration time.
The part that is consistently missing is reaction. The stop moving to breakeven is not an exit rule — it is a rule about an exit that has already happened. It needs to know that the first third filled. On a platform where the stop is a number in a form, there is nowhere for that dependency to live.
The trailing stop has the same problem. You usually want it on the remainder only, and only after the second target. A single trailing-stop setting applies to the whole position from the beginning, which is a different and worse strategy — it trails you out of the position early, before the move you were waiting for.
And time-based exits mostly do not exist. "Close it if it has not worked in six hours" is a perfectly sound piece of risk management that has no field.
The graph
The position is a value other nodes can read, so exit rules can depend on each other.
- Targets are separate nodes.
- Each has its own condition and its own size, and each records that it fired — so it fires once, not on every candle above the level.
- The stop reads the exits.
- "TP1 filled?" is a real value on an edge. The stop mover watches it and shifts to breakeven when it flips. That is the dependency the form-field model cannot express.
- Trailing applies to the remainder.
- Because the trail is a node reading "remaining", it works the last third and leaves the earlier thirds alone.
- Time is an input like any other.
- Position age feeds a condition the same way a price does.
- One position throughout.
- Three exits and a moving stop, all operating on the same inventory, with no reconciliation between separate bots.
What you see while it runs
Unrealised R, remaining size, which targets have filled and where the stop currently sits — on the nodes, updating, while the trade is open.
When the trailing stop takes you out, you can see the level it was at and the candle that hit it. The usual version of this — a closed position and a fill price you have to reverse-engineer — tells you what happened but not why.
Variations on the same shape
- Indicator-based targets.
- Exit into a Bollinger touch or an RSI extreme instead of a fixed R multiple.
- Asymmetric thirds.
- Take 50% at the first target if you would rather de-risk than run.
- Re-entry on the runner.
- If the trailed third stops out and the trend resumes, a branch that re-enters at reduced size.
- The mirror image.
- The same structure on the way in — see multiple entry points.