NNFX Algo Tester Help

How to set up my Overexposure system?

The NNFX Algo Tester offers several types of systems to avoid excessive exposure to a specific currency. You can apply them in live trading/forward testing by activating the system you want in the Overexposure Management section. Below you can find out in detail how each system works:

  • DISABLED - In this case the overexposure system will be deactivated. No order will be blocked due to excess risk/exposure.

  • BLOCK SAME CURRENCY ENTRIES - In this system, any order in a pair with the same currencies as the current pair (instrument where Overexposure system is configured) will be blocked.
    Example: There is a Buy order on the EURUSD pair. With this system active, a Sell or Buy order on the USDJPY pair would be blocked as well any trade on the EURGBP pair as there is already exposure to the USD and EUR currency respectively.

  • BLOCK SAME DIRECTION ENTRIES - In this system, the order will only be blocked if the exposure level of a specific currency increases.
    Example: There is a Buy order on the EURUSD pair. With this system active, a Sell order on the USDJPY pair would be blocked. However, it would be possible to place a Buy order on the same pair, as this would not increase exposure to the USD currency.

  • NEW RISK ON SAME CURRENCY ENTRIES - In this system, any order in a pair with the same currencies as the current pair (instrument where Overexposure system is configured) will have a new risk value.
    The new risk value is defined by the NEW RISK PER ENTRY parameter.
    Example: There is a Buy order on the EURUSD pair. With this system active, a Sell or Buy order on the USDJPY pair or in the EURGBP pair for example will have a new risk value (NEW RISK PER ENTRY), since there is already exposure to the USD and EUR currency respectively.

  • NEW RISK ON SAME DIRECTION ENTRIES - In this system, the order risk will only be changed if the exposure level of a specific currency increases. The new risk value is defined by the NEW RISK PER ENTRY parameter.
    Example: There is a Buy order on the EURUSD pair. With this system active, a Sell order on the USDJPY pair would be possible but changed to have a new risk value (NEW RISK PER ENTRY). However, it would be possible to place a Buy order on the same pair with the total risk, as this would not increase exposure to the USD currency.


You can choose the type of entries that will be accounted for in the Overexposure system, using the
APPLY SYSTEM TO parameter:

  • ALL ENTRIES - All orders on your trading account will be accounted for in the Overexposure system.

  • ALL NNFX ALGO TESTER ENTRIES - Orders opened manually by you or other EA (without using the NNFX Algo Tester) will be ignored by the overexposure system. (You can ignore orders opened by the NNFX Algo Tester if it has a different MAGIC NUMBER).

  • ENTRIES NOT AT BE/TS - By choosing this option you can apply the system only to orders that do not have Stop Loss at Break Even or with Trailing SL active. Orders with zero risk. In other words, in this case all orders in your trading account with the Stop Loss above the opening price (Buy orders) or with the Stop Loss below the opening price (Sell orders) will be ignored by the overexposure system.

  • NNFX ALGO TESTER ENTRIES NOT AT BE/TS - By choosing this option you can apply the system only to NNFX Algo Tester orders that do not have Stop Loss at Break Even or with Trailing SL active. 
    In other words, in this case just NNFX Algo Tester orders with the Stop Loss above the opening price (Buy orders) or with the Stop Loss below the opening price (Sell orders) will be ignored by the overexposure system. Orders with zero risk.


You can also choose to ignore certain symbols' orders.
In this case, the symbol orders that are in the EXCLUDED SYMBOLS parameter will not be counted towards the risk and exposure value.

The options above will work on Forex pairs without any problems. However, if you want to use the overexposure system on other markets (metals, crypto, indexes, etc.) or on less conventional instruments you can use the SYMBOLS CURRENCIES CHECK option:

  • AUTOMATIC - In this case the overexposure system will automatically detect the currencies used in the instrument. This option should only be used in the Forex market, when the instruments have the currencies defined in the specifications and also in the symbol, leaving 3 characters for each currency (ie. EURUSD, Base: EUR and Counter: USD). Please note that if the instrument has a suffix or prefix this must be indicated.

  • REPLACE SYMBOLS CURRENCIES - On certain instruments, the currencies (buy/base currency and sell/counter currency) are not evident and cannot be detected automatically. Assuming you want to use less conventional symbols then you can use this powerful option.
    In these cases, you can place your symbols on the REPLACE SYMBOLS CURRENCIES field.
    In this field, you can indicate the symbols you want to use and their equivalent currencies to be used in the Overexposure system.
    You can also create "invented currencies" to create groups of symbols where you want to keep the risk controlled. Let's see some examples:
    1- We want to trade the index ESP35 and include it in our overexposure system. To do this, we have established that any order placed in the ESP35 will increase the risk in the EUR currency. To obtain this operation:
    REPLACE SYMBOLS CURRENCIES: ESP35=EUREUR
    2- We want to trade four metals instruments: XPDUSD, XPTUSD, XAGUSD, XAUUSD. In this case, we do not want to exceed the risk within this group of instruments and consider the USD risk together with other instruments outside this group in our trading account. We will group these instruments with an invented currency "MET".
    To obtain this operation:
    REPLACE SYMBOLS CURRENCIES: XPDUSD,XPTUSD,XAGUSD,XAUUSD=METUSD
    3- We consider that AUD and NZD move similarly. So we will configure the NZD instruments as if they were AUD. Easy to do:
    REPLACE SYMBOLS CURRENCIES: AUDNZD=AUDAUD;EURNZD=EURAUD;GBPNZD=GBPAUD;NZDJPY=AUDJPY;NZDUSD=AUDUSD;NZDSGD=AUDSGD;NZDCHF=AUDCHF;NZDCAD=AUDCAD

    Note: You do not need to indicate all symbols here. If the symbol is not identified then the software will attempt to identify the currencies automatically.
    Note: You can add several different rules by separating them with a semicolon. For example: XPTUSD,XPDUSD=METUSD;WTIUSD=OILUSD

Attention: All instruments outside of Forex must be entered into the market_watch_prices.csv file manually. Your NNFX Algo Tester folder/user/your MT4 ID/market_watch_prices.csv. For example:
BTCUSD;0.00000000;0.00000000

Note: The application of Overexposure system is individual, that is, the settings you make will only affect the instrument where the NNFX Algo Tester software is operating. Even so, the NNFX Algo Tester will take into account other orders in other instruments to assess the level of risk and exposure.
If you want to activate the system on your entire account then you must activate the system on all pairs where NNFX Algo Tester is operating.