From signal to trade
Knowledge package 0.6.1, checked 22 September 2026, build 03613bfa. If the copy you are reading does not carry that line, you have a cached or older revision: fetch this page again.
An indicator evaluates market data. A signal expresses the result of its condition. Filters determine whether the selected direction is permitted. The task then applies its state and configured action. An order changes a position only after execution. These are separate events; a qualifying condition alone is not a completed trade.
In a backtest, market history and the calculation model simulate this sequence. Do not describe a simulated order as a real exchange order, or assume its execution occurs exactly at the signal price.
The three condition groups
Entry — MAIN. The reviewed form accepts one entry condition. A Long task accepts a long or direction-neutral signal; a Short task accepts a short or direction-neutral signal. Direction-neutral means either selected direction can qualify, not simultaneous Long and Short positions.
Filters — PRICE_LIMIT. All configured filters must permit the task's direction. A filter can permit one direction, both or neither. Permission does not itself create an entry. Each filter also has an action for a denied condition; read its pla value explicitly.
Exit group — CLOSE_BY. The form accepts up to three cards here. Their actions can qualify independently. In signal-averaging mode, AVG requests another entry on the position's own signal direction. Ending actions respond to the opposite or a direction-neutral signal. A card in this group is therefore not always an exit.
Use the Signal passports for exact result codes, direction handling, SD, ED, EDOP and AVG. Do not silently turn an unsupported multiple-entry AND/OR expression into a supported one.
Events and states
“Crosses above” compares a previous and current relationship. “Is above” checks a state. A historical channel filter may retain the last qualifying region. These are different conditions even if their names sound similar.
For the shared crossing rule, upward means previous X < previous Y and current X >= current Y. Current equality can complete the crossing; previous equality cannot start it. Individual passport predicates take precedence when a variant uses a different rule.
CL uses closed-candle evaluations. CR uses the changing current candle where that selector is offered. A displayed per-second label does not turn every condition into a crossing event or guarantee an order each second. The indicator needs the appropriate history, aligned values and enough warmup.
Reverse and direction
Reverse swaps directional results: long with short, or allow-long with allow-short. It preserves neutral, both-directions and no-result outcomes. It is not logical NOT and does not change the task's selected Long/Short direction. Apply it only to a definition that includes that field.
From a request to a position
Position state, configured grid, completion rules and execution determine what follows a signal. An accepted order can be unfilled or partially filled. A requested completion is not a guaranteed fill price or positive net return. In particular, a profit/deviation condition should not be presented as a guarantee after fees and execution effects.
The Order grid explains the ordinary calculation's size, step and price relationships. Keep averaging with limit orders separate from averaging by signal. The same indicator predicates do not make different robot or backtest modes interchangeable.