Every entry gets its own reason
You do not want to buy once. You want to build a position as an idea confirms itself — three entries, three different reasons, one veto that applies to all of them.
Take a small first position when RSI goes oversold. Add a second, larger one only if price stabilises — a higher low, not just a lower price. Add a third only if volume comes in behind it. And if the daily trend flips against me at any point, stop adding entirely and keep what I have.
Why this is hard on a bot platform
Every DCA bot in the category works the same way: a base order, then safety orders at fixed deviations, each one a copy of the last with a size multiplier. One rule, repeated.
That is a fine model for averaging down mechanically. It is the wrong model for scaling into confirmation, because it cannot tell the difference between a price that has fallen and a price that has fallen and stopped. Both look identical to a deviation trigger. The bot buys the third rung of a collapse with exactly the same enthusiasm it buys the third rung of a base.
You also cannot skip a rung. A safety order at -6% fires at -6%. There is no field for "unless the daily trend has flipped", because the field would have to hold a condition and the form only holds a number.
The graph
Each entry is its own branch off the same price source.
- Each entry has a different condition.
- The first is a momentum reading. The second is a structural one. The third is a volume confirmation. They are separate nodes because they are separate ideas.
- The entry counter is readable.
- "entry count == 2" is a real value on an edge, so the third rung knows it is the third. That is also how you size it differently, or cap the ladder at three regardless of how far price falls.
- One veto gates all of them.
- The trend guard sits between every entry branch and its order node. It is drawn once and it cannot be forgotten, because there is no path to an order that does not pass through it.
- Sizing is a node, not a constant.
- Feed ATR into the sizer and each rung sizes against volatility at the moment it fires, rather than against what volatility was when you set the bot up.
What you see while it runs
The entry that has not fired yet is still visible — you can watch its condition sitting at false and see how close it is. When rung two is skipped because the trend guard vetoed it, the graph shows the veto, on that node, at that candle. That is the glass box argument applied to entries.
On a DCA bot, a safety order that did not fire leaves no trace at all. You find out by noticing the position is smaller than you expected.
Variations on the same shape
- Time-spaced rather than price-spaced.
- Swap the price conditions for a clock so entries are hours apart, not percentages apart.
- Confirmation ladders on breakouts.
- Same structure, inverted: add on strength rather than weakness.
- Asymmetric exits.
- The same pattern works on the way out — see scale out in thirds.
- A hard stop on the ladder.
- A counter node that halts additions after N entries, whatever price does. Mechanical DCA has no such limit, which is how a laddering strategy becomes an unbounded one.