Entry Node

The Entry node opens a trade when its condition turns true. Direction, sizing and signal names, how it hands the trade to a Trade node, and the Cooldown that decides when it may fire again.

NodeBy AlgoLiftUpdated 7 min read
On this page 10How it worksHanding the trade onSizeMarket and limitThe CooldownExample: stop buying the same dip twiceSettingsUse something else whenWhen it doesn't behaveGoing further

Everything upstream of an Entry is an opinion about the market. The Entry is where that opinion becomes a position: when the condition wired into it reads true, it opens a trade, long or short, and hands it to the nodes that manage it. It also decides how soon it may do that again, which matters more than most people expect.

Takes
One true-or-false condition, plus an optional quantity
Gives
A trade, passed to one or more Trade nodes
Reach for it
Every strategy needs at least one

How it works

Pick a direction, Long or Short, and wire a condition into Condition. On the first tick that condition reads true, the Entry sends a market order, filled with whatever latency and fill model the run uses. A condition with no value yet (an indicator still warming up) reads false, so nothing fires on a number that doesn't exist.

Condition takes exactly one wire. If your rule has three parts, combine them first with a Logic node or a Tally and wire that single output in. Dragging a second wire onto Condition replaces the first rather than adding to it.

Two things about timing catch people out. First, AlgoLift holds one position at a time. An Entry only fires while the strategy is flat, so a short signal that arrives while you're long is ignored. It doesn't reverse you. Second, the Entry has no memory of having fired. If its condition is still true when the trade closes, it fires again on the next tick. With a state like "RSI under 30", that can mean buying the same falling market three times in a row. That's the Cooldown's job, below.

Handing the trade on

The handle on the Entry's right edge carries the trade. Wire it into the Order input of a Trade node, which is where the exits live: you attach a Bracket Order to that node, or give it setters of its own. The builder won't run an Entry that doesn't reach at least one.

Wire the same output into two Trade nodes and the position splits into two legs, each with its own exits. That's how partial exits work: take half at a first target and let the rest run. The same output can also go into a Set Variable's condition, which then writes once each time the Entry fills.

Size

Leave Quantity unwired and the Entry trades the position size from the run's Account & Risk settings. Wire a number in, usually a Constant, and that's how many contracts (or shares) it opens instead. If the wired value is zero, or has no value yet, the Entry doesn't trade on that tick.

Market and limit

The order type menu offers Market and Limit, and Limit lights up a Price input and an Until input. The engine doesn't act on them yet: every entry fills at market, whichever you pick. Leave it on Market so the canvas says what actually runs.

The Cooldown

The Cooldown row reads as one sentence, like "6 bars after a losing exit". Click it to change it. It answers one question: once this Entry has traded, when may it fire again?

First choose the wait:

WaitThe Entry may fire again
None (the default)On its next signal
TimeAfter an amount of time, in seconds, minutes, hours or days, up to a week
BarsAfter a number of bar closes, up to 500
Until the next trading dayOnce a new trading day begins
Until a conditionOnce the condition wired into Re-arm when is true

Then choose what starts it: Any exit (its trade closes, win or lose), A losing exit (its legs close below zero, net), or Its own entry, which spaces entries apart however they turn out. "Until the next trading day, after its own entry" is one trade a day.

Some details are worth knowing. A day in a Time wait is 24 hours, not a trading day. On ES and NQ the next trading day starts at the 18:00 reopen, so a futures strategy that's flat by 11:00 may trade again that evening unless the run's Daily Time Window keeps it to the day session. A Bars wait counts the closes of the primary series, or of a series you pick when the strategy has more than one.

With Until a condition, the row's input becomes Re-arm when. After the trade, the Entry stays locked until that condition reads true; one that's already true at the moment the wait starts has to be true again on a later tick. It's read on every tick, so "until price closes back under the level" should compare a completed bar's close (a one-bar Price History) with the level, not Current Price, which re-arms the moment price ticks back.

There's no other wait anywhere. General Settings used to have a Post-Trade Cooldown; it's retired, and Account & Risk has nothing in its place. Open an older strategy that used it and the builder moves it onto each Entry as a Time wait after any exit.

Example: stop buying the same dip twice

Say you trade ES 5m and go long when RSI(14) is under 30 while price is above the 200 EMA. Two Comparisons go into a Logic AND, the AND into a long Entry, and the Entry into a Trade node with a Bracket Order: a 12-point target and an 8-point stop.

Run it and you'll likely see losers in clusters. A trade stops out, RSI is still under 30, and the Entry buys again on the next tick. Open the Cooldown and set it to Bars, 6, after A losing exit. After a loser the Entry now sits out six bar closes, half an hour on 5-minute bars, before it may buy again. Winners don't start the wait, so a strong bounce can still be bought twice.

Settings

Direction
Default Long
Long or Short. Its scale-ins and its brackets follow it.
Order type
Default Market
Market or Limit. Limit isn't acted on yet, so every entry fills at market.
Signal name
Default Entry 1, Entry 2 ...
The name its trades carry in results, up to 20 characters. Worth setting once there's more than one Entry.
Cooldown
Default None
The wait before it may fire again (Time, Bars, Until the next trading day or Until a condition) and what starts it (any exit, a losing exit or its own entry).

Use something else when

Entries should only start at certain hours
AND a Time Window into the condition. The Cooldown spaces trades apart; it doesn't know what time it is.
Add to a trade that's already open
Drag Add Scale-In off the bottom of the Entry. A second Entry can't fire while the first trade is open.
The wait is part of a bigger rule
Time Since gives you minutes or bars since the last entry, exit or losing exit as a number you can combine with other conditions.

When it doesn't behave

It takes trades in bursts

The condition is a state that stays true, so the Entry fires again the moment each trade closes. Add a Cooldown (a few bars after a losing exit is a sensible start), or turn the condition into an event with a Crossover, which is only true on the bar the change happens.

It never takes a trade

Work backwards. Is the condition ever true? The Inspector's meters show how many bars each part lets through. Does it overlap the run's Daily Time Window? Is the Cooldown waiting on a Re-arm when that never turns true? Last, check the bracket: if it puts the stop or target at or through the fill price, the engine refuses the entry and tries again on the next tick, for as long as the levels stay there.

My short signal didn't close my long

It isn't meant to. An Entry only fires while the strategy is flat, so the opposite signal is ignored while a trade is open. If the long should get out when the short signal arrives, wire that signal into the long leg's Set Exit Condition too. The short can then enter once the long has closed.

Choosing Limit changed nothing

Every entry currently fills at market, so a limit price and its Until input aren't used. To buy a pullback to a level, make the pullback part of the condition instead: price at or under the level, through a Comparison.

Going further

Until a condition is the most expressive wait. A breakout strategy that buys new highs tends to buy the same breakout again after a stop. Set the Cooldown to Until a condition, after any exit, and wire "the last completed bar closed back under the breakout level" into Re-arm when. Each breakout now gets one try, and the next attempt needs price to reset first.

The Cooldown's amount can be swept, but it's one more number a backtest can tune to the past. A wait you can justify before seeing results (a few bars to let things settle after a stop) is worth more than whichever value a sweep liked best.

Or ask the copilot