forex software

Create and Test Forex Strategies

forex software


Indicator Advanced Properties

Indicator Advanced Properties

Advanced indicator properties are located in the lower part of the Indicator Properties options panel.

Logical group

The logical group is a group of indicators that act as a single indicator. FSB Professional creates logical groups automatically, but they can be changed by hand. However we will take a look at automatically created Logical Groups here to make them easier to understand.

For example you know that to open a position all the Opening Logical Conditions have to be fulfilled at the same time. But how do we express that not any of the conditions should be fulfilled but all of them at the same time? Here is a Logical Group that is created automatically by FSB Professional. Let's name this group A. Only when all the conditions in A are fulfilled FSB Professional will take action (open a position).

FSB Professional is using this approach (again automatically) when it needs to decide if to close a position. When it examines the Closing Logic Conditions, it is enough for one condition to be fulfilled for FSB Professional to close the position. Here FSB Professional puts each indicator in it's own logical group. An indicator can have only one Logical Group.

You can read more on Logical Groups here

Signal shift

Signal shift

Signal shift shifts a signal ahead with a selected number of bars.

Signal shift is measured in bars. It can be set in range of 0 - 200. The default value is 0.

So when you enter Signal Shift parameter value larger then 0, the Indicator will not, after fulfillment of the logical condition, raise the signal immediately, but will wait requested amount of bars before raising this signal.

Some indicators have integrated Shift property but it moves the indicator lines instead of the signals only.

Signal shift can be used when you want to raise a signal after an indicator event. The example the screenshot on the left shows how different signal shift values move the signal raising event with a number of bars after the market price crosses the Moving Average (MA Logic rule is “Bar opens above MA after opening below it”).

Rising Momentum

Another possible use is to rise a signal on a series of repeating events. For example, if you set four Momentum indicators with Signal shifts 0, 1, 2, and 3, the program will rise an entry signal when there are four consecutive bars with rising Momentum.

Forex Strategy Builder Professional sets Signal shift parameter to every indicator except for indicators with IndParam.IsAllowLTF = false;. You can use this parameter in your custom indicators.

When an indicator uses Longer Time Frame (LTF), the Signal shift will be in the strategy main data frame bars. For example if a strategy period is H4 and an indicator LTF is D1, the indicator will be calculated on a D1 data series but the signals will be shifted with H4 bars.

Why does not Signal Shift allow negative values?

Signal shift only delays the signal with a number of bars. For example if (on a day chart) something happens in Monday and you want to trade on the next day you will put a Signal Shift to 1. However if something happened on Tuesday you cannot go back in time and trade on Monday. This is why you cannot set the Signal shift to -1 or other negative values.

Signal repeat

Signal Repeat

When Signal repeat is greater than 0, Forex Strategy Builder Professional sends repeated signals according to the selected number.

Signal repeat can be set in range of 0 - 200. The default value is 0.

The example shows Moving Average indicator with Signal repeat = 3. Note that we have 4 entry signals. The first one is the original entry and we have 3 repeats after that. Signal repeat sets how many times to repeat the initial entry signal and therefore, we have totally signal repeat + 1 signals.

Signal repeat works on the main strategy time frame even if the indicator uses Longer Time Frame (LTF).

“Opening Point of the Position” and “Closing Point of the Position” indicators don't have a Signal repeat parameter. If you develop custom indicators and an indicator cannot work with signal repeat, set IndParam.IsAllowLTF = false;

Indicator symbol

Forex Strategy Builder Professional allows you to set a different Symbol to an indicator.

For example, a strategy trading on EURUSD market can use signals from EURJPY. You can do it by setting an EURUSD symbol to the strategy and an EURJPY symbol to an individual indicator.

When we use indicator symbols, FSB Pro loads the whole data set for that symbol. The data file must be available. If the program cannot find the desired data file, it will not calculate the strategy.

The “Indicator symbol” options contains symbols that are predefined in the currently used Data Sources.

Longer time frame

Longer time frame (LTF) option sets a specific period for the current indicator. This period must be larger than the main data period of the strategy. For example, if you have a strategy working on EURUSD H4 chart, you can set an indicator with Longer time frame = D1. Doing so, FSB Pro will load EURUSD D1 data file and will calculate the current indicator using D1 data.

If you set a shorter time frame, for example M15, Forex Strategy Builder Professional will use the strategy main time frame.

A longer time frame can be used in the trader. In such a case, the program requests the data series from MetaTrader automatically.

You can use LTF to monitor a general trend.

For example, you can enter long on a M5 chart only if you have a uptrend on a daily chart. To do so, set the strategy period to M5 and chose a trend indicator and set its Longer time frame to D1.

Use previous bar value

Use previous bar value expresses an extremely important concept in the backtesting science. I can say that neglecting this matter is the most common error in automatic trading. “Use previous bar value” option is so important that Forex Strategy Builder Professional sets it automatically and, does not allow you to change it.

When “Use previous bar value” option is checked, the indicator will ignore its current values calculated using the current bar and will raise signals using values from the previous bar.

“Use previous bar value” option depends on the indicator base price and the opening point of the strategy.

For example, if an indicator uses Close price for calculation and the strategy Opening Point is “Bar Opening”, it is obvious that we do not know the bar closing at the moment of opening. That's why the program will use the previous closing for the indicator.

Read explanation of the concept with examples in this article: Use Previous Bar Value