Trading signals

Trade-signals are a very powerful tool to create almost any Open- and Close logic you can think of. Most of our users are at first not aware of the possibilities and it may seem to be quite difficult in the beginning, but we believe that anyone can become a Signal-ninja within a week. So, let's be persistent and learn how to create signals.

Once all indicators are added. You can create the logic you want to use for the opening or closing of an order. If you want to edit your indicator, you simply go back to indicators and adjust your parameters.

You can use the “And” Operator when all expressions need to apply, or “Or” when any of the expressions apply. You can compare indicators, set up expressions, compare constant values. So far, we've been able to create any strategy we could imagine. If you run into a limitation of the tool, please let us know and use the contact form , or mail us on .

Building signals

Your EA always has 4 signals.

  • OpenBuy
  • OpenSell
  • CloseBuy
  • CloseSell
Activate or deactivate a signal

You can activate or deactivate a signal by clicking on the options button and select activate/deactivate. The EA needs at least a active OpenBuy or OpenSell signal to function. When you disable both of these signals your EA will never open a postiton/order.

activate deactivate signal
Click the option button to activate/deactivate a signal
Copy or Paste a signal

You can use the same menu as used for activating/ deactivating a signal to Copy and Paste the signal to the other Signals. A common scenario is that you start by creating the Open Buy Signal. Afterwards, you may want to copy the Open Buy signal to the Close Sell signal and you may want to copy the Open Sell signal to the Close Buy signal. This way the order will switch from a buy order, to a sell order and vice versa.

copy paste signal
Click the option button to copy/paste a signal
Invert a signal

You can use the same menu as used for activating/ deactivating a signal to Invert a signal. A common scenario is that you start by creating the Open Buy Signal. Afterwards, you will want to create the Open Sell signal, which is the same as the Open Buy signal, but then Inverted. Just click the Inverse button on the Open Sell signal after you copied the signal from the Open Buy signal.

inert signal
Click the option button to invert the selected signal
Open signal editor

You can click the signal you want to edit to open the signal editor. You will see that there is already a signal which was generated for you when you pressed the +MT4 or +MT5 button.

Shift and Shift+1

An indicator always has a Shift or a Shift+1.

  • Shift: The shift value as defined in your indicator.
  • Shift+1: The shift value as defined in your indicator + 1.
Value and PreviousValue
Select Shift or Shift+1
Root node

A signal only has 1 rootnode. The rootnode cannot be removed. Start building your condition from the root node.

root node
A signal can only have 1 root node
Remove a node

You can remove nodes by starting at the leafs or end-nodes of the signal and select "Remove" under options. An end-node or leaf is a node without children. If a node has child nodes the node cannot be removed.

remove end-node
Click remove to remove the end-node or leaf.
Drag and drop a node

Rearranging the nodes is possible by using drag-and-drop. Hover over the signal, press the left mouse button, drag the node and drop it where you would like it to be.

drag-and-drop
Drag-and-drop
Invalid signals

When you are building signals you can create a signal that is invalid. Invalid signals cannot be saved. You know that your signal is invalid when you see the exclamation mark with a error message in the top summary box.

signal-invalid
Invalid signal. This error message can get very technical but it gives you a good indication on what is going on. In this example we have comparison operator 'greater than' with only one condition part. A comparison operator must have 2 conditions and/or condition parts.
Nested signals

You can make signals as complex as you would like. To easily understand how signals work, a good strategy is to divide them into blocks. Each block returns true or false.

complex signal
Divide signals into blocks. Each block returns true or false. Because we use the logical AND operator as root node all 3 blocks need to be true for the signal to fire.

Signals can be nested. This allows you to build even more complex signals.

complex signal figure 2
Here 1 out of 2 gray blocks need to be true because the parent operator is logical OR. The top 2 blue blocks also need to be true for the signal to fire, because the root operator is a logical AND.

Options context menu

Click on the button after the node. This wil open the option menu. Depending on the node you clicked this will give you several options. The option menu is context aware.

operator options
Operator options
Condition

This wil add a condition. A condition is a expression with a left operand, an operator and a right operand. By default, the left and right operands are indicators. The indicators you've created will appear here. You can toggle between a indicator or constant by clicking on the arrow next to the indicator.

toggle node
Toggle between indicator or constant
Condition part

This wil add a part of a condition. You can toggle between indicator and constant.

toggle node
Add a condition part
Operator

Adds a operator. Must be used as a parent node and therefore must contain child nodes. If there is a operator without child nodes it will be ignored. For a full list of operaters go to Operators. Use the arrow next to the operator to toggle between operator categories. You may or may not see all categories when you toggle through the available options. This depends on the kind of parent operator.

operator node
Add a operator node.
Remove

This removes a condition, condition part or operator. Only end-nodes can be removed. Start by removing the end-nodes first.

remove condition
Removes a condition.

Operators

The signal editor enables you with a set of well known operators. We've added a set of special crossover operators to make your life easier.

SymbolNameCategory
crossoverCrossoverCrossover
crossover upCrossover from belowCrossover
crossover downCrossover from aboveCrossover
AndAndLogical
OrOrLogical
==Equal toComparison
!=Not equal toComparison
>Greater thanComparison
<Less thanComparison
+AddArithmetic
-SubstractArithmetic
/DivideArithmetic
*MultiplyArithmetic
%ModuloArithmetic
Crossover

Use this operator if the direction of the crossover does not matter.

crossover example
If MA 7 crosses over MA 30 the signal will fire. It does not matter from which direction MA 7 crosses over MA 30.
Crossover from below

Use this operator if the direction crosses over from below.

crossover from below example
If MA 7 crosses over MA 30 from below the signal will fire.
Crossover from above

Use this operator if the direction crosses over from above.

crossover from above example
If MA 7 crosses over MA 30 from above the signal will fire.
AND

Logical AND operator. Apply this operator to multiple boolean expressions. Returns true if all expressions are true.

logical AND example
If the the value of indicator MA 7 is larger than the value of MA30 AND the value of MA 7 is larger than the previous value of MA 7 the signal will fire.
OR

Logical OR operator. Apply this operator to multiple boolean expressions. Returns true if one or more expressions are true.

logical OR example
If the the value of indicator MA 7 is larger than the value of MA30 OR the value of MA 7 is larger than the previous value of MA 7 the signal will fire.
Equal to

Comparison operator. Returns true if both sides of the expression are equal.

equal example
If the the value of indicator MA 7 is equal to the value of MA30, the signal will fire.
Not equal to

Comparison operator. Returns true if both sides of the expression are not equal.

not equal example
If the the value of indicator MA 7 is not equal to the value of MA30, the signal will fire.
Greater than

Comparison operator. Returns true if the left side of the expression is greater than the right side of the expression.

greater than example
If the the value of indicator MA 7 is greater than the value of MA30, the signal will fire.
Less than

Comparison operator. Returns true if the left side of the expression is less than the right side of the expression.

less than example
If the the value of indicator MA 7 is less than the value of MA30, the signal will fire.
Add

Use this operator to add numbers.

add example
If the the value of indicator MA 7 + 2 is larger than the value of MA30, the signal will fire.
Substract

Use this operator to substract numbers.

subscract example
If the the value of indicator MA 7 - 2 is larger than the value of MA30, the signal will fire.
Divide

Use this operator to divide numbers.

devide example
If the the value of indicator MA 7 divided by 2 is larger than the value of MA30, the signal will fire.
Multiply

Use this operator to multiply numbers.

multiply example
If the the value of indicator MA 7 multiplied by 2 is larger than the value of MA30, the signal will fire.
Modulo

Returns the remainder after a division.

Next: Modules