Skip to content
Black Friday: sale starts November 15th.

Signal Blocker Node

Signal Blocker node

The Signal Blocker node lets the first signal through, then blocks the signals that follow until it is reset.

Its main use is to clean up the final trade signal at the Result node. A system often gives several signals in a row, when you only want the first. A reset turns blocking off, so the next wanted signal gets through.

The animation shows BloodHound v1; the ideas are the same in v2.

Properties tab

Property Inspector tabs, with the Properties tab selected

The essential settings for the node.

Modifiers

Buttons for the most common output modifiers. They change only the selected instance of a node on a Logic Board, so they appear only when a node is selected there, not when a solver is selected in the Solvers panel. That keeps the solver’s original output unchanged everywhere else it’s used, much like changing an SMA’s plot color on one chart leaves it unchanged on your other charts.

Modifiers: the Enabled, Invert and Swap buttons
ButtonWhat it does
EnableTurns the node on or off. When it’s off, the node is left out of the system’s calculations. It still looks connected on the Logic Board, but it’s ignored.
InvertInverts the node’s output. The same calculation as the Inverter function node, without its extra options.
SwapSwaps the outputs: Long becomes Short and Short becomes Long. The same as the Long/Short Modifier function node with Mode: Swap.

Properties

This node’s settings apply to this node only. Unlike a solver, which can be used in several places with shared Global Properties, each of these nodes is a single, independent node.

Options

Options: Signal Threshold, Intra Bar Signal Mode and Block Opposite Signals
SettingWhat it does
Signal ThresholdThe smallest input value that counts as a signal and starts blocking.
Intra Bar Signal ModeOnly with Calculate set to “On price change” or “On each tick”. How signals at the Input are handled while a bar is forming:
Lock and Hold (default): as soon as a signal appears, it is held until the bar closes, even if it disappears in the meantime.
Allow First Signal: only the first intra-bar signal gets through; later ones in the same bar are blocked. Useful in your own strategy code; BlackBird and Raven have a setting that does this.
Block After Bar Close: signals come and go freely while the bar forms, and blocking starts once it closes. The Block Signals If setting appears.
Block Signals IfOnly with Block After Bar Close. Whether blocking starts after the bar closes:
Signal Occurs Anytime: if a signal appeared at any point while the bar formed.
Signal At Bar Close: only if there is a signal when the bar closes.
Block Opposite SignalsOff: a Long signal blocks only later Long signals, and a Short signal only later Short signals. On: a signal on either side blocks both sides.
About intra-bar signals

Intra-bar signals only exist when Calculate is “On price change” or “On each tick”: signals that appear while a bar is still forming, as price moves up and down. Two things to know:

Not every signal is visible

While calculating on forming bars, NinjaTrader only redraws the chart every 250 milliseconds (4 times a second). Price can move a few ticks, create a signal and move back again between redraws, so some intra-bar signals never appear on the chart.

Intra-bar signals are lost after a reload

When a chart reloads, for any reason, all intra-bar data is cleared. NinjaTrader only recalculates it with Tick Replay on; read its warnings about performance before turning it on.

Reset

Reset: Reset On and Block Signals For

Reset blocking when conditions change and the next signal should get through, for example with a signal at the Reset connector. Otherwise signals stay blocked until Block Signals For runs out.

Reset On

Which signals reset (turn off) the node: signals at its Input connector, at its separate Reset connector, or both. Tick as many as you need, and untick any you don’t use so the node isn’t reset by accident.

As everywhere in BloodHound, the Long output and the Short output are reset separately: a Long reset signal resets only the Long side. The “Opposite” options are the exception that crosses over, letting a Short signal reset the Long side and vice versa.

The Reset On menu, with all eight options
OptionResets the node when…
Input SignalA Long signal at the Input connector resets the Long output’s calculation; a Short signal resets the Short output’s.
Input No SignalA bar with no Long signal at the Input resets the Long output’s calculation; a bar with no Short signal resets the Short output’s.
Reset SignalA Long signal at the Reset connector resets the Long output’s calculation; a Short signal resets the Short output’s.
Reset No SignalA bar with no Long signal at the Reset connector resets the Long output’s calculation; a bar with no Short signal resets the Short output’s.
Input Opposite SignalCrosses over: a Short signal at the Input resets the Long output’s calculation, and a Long signal resets the Short output’s.
Input Opposite No SignalA bar with no Short signal at the Input resets the Long output’s calculation; a bar with no Long signal resets the Short output’s.
Reset Opposite SignalA Short signal at the Reset connector resets the Long output’s calculation; a Long signal resets the Short output’s.
Reset Opposite No SignalA bar with no Short signal at the Reset connector resets the Long output’s calculation; a bar with no Long signal resets the Short output’s.
SettingWhat it does
Block Signals ForThe most bars signals are blocked for, unless a reset ends it sooner.

Output

Output: Actively Blocking
SettingWhat it does
Actively BlockingThe output while a side is being blocked, instead of 0. For example, at 0.25, the Short output is 0.25 while Short signals are being blocked.

Options tab

Property Inspector tabs, with the Options tab selected

Secondary settings shared by all nodes.

Weight

Changes the node’s final output value. Only needed when designing a fuzzy logic system, or a fuzzy logic part of a system.

How Weight works

Weight changes only the selected instance of a node on a Logic Board. So the controls appear only when a node is selected there, not when a solver is selected in the Solvers panel: a solver’s original output can’t be changed globally.

ControlWhat it does
Multiply OutputMultiplies the node’s internal Long and Short values (set by the Output Rules on the Properties tab) by this number. The final output still can’t go above 1 (see Slider).
SliderLimits the final output to between 0 and 1. The left handle sets a minimum output, given whether or not the condition is true. The right handle sets the maximum; the output is capped there.
Hedge OperationApplies a formula to the internal value.
None: unchanged.
Very: squares it (value²).
Somewhat: takes the square root (√value).

Example: two out of three

Three solvers check three indicator conditions, but only two need to be true. Connect them to an Additive logic node and set each solver’s maximum (the slider’s right handle) to 0.5. When any two are true, the Additive node adds 0.5 + 0.5 + 0 = 1, which means the two-out-of-three condition is met.

Description

Free text for describing what the node does or what it’s for. The Description is shared by every instance of the node, unlike Weight, which is set per instance.

Help tab

Property Inspector tabs, with the Help tab selected

Shows this page for the selected node, inside BloodHound. Click the node’s image at the top of the page to open it in a bigger window. The built-in web viewer needs NinjaTrader 8.0.26.0 or newer.

Tutorial videos

From the weekly workshop. More: Signal Blocker videos on YouTube.

Signal Blocker tutorial, updated for BloodHound v2.

Blocking signals for one hour. It shows BloodHound v1, but the node works the same.

Still stuck? Contact support