• Overview
  • Reviews (2)
  • Comments (5)
  • What's new

Exp5 The xCustomEA for MT5 DEMO

Universal trading adviser on custom indicators for MetaTrader 5.

The functionality of the universal trading adviser The xCustomEA duplicates all the parameters of our advisor The X except one:

The xCustomEA works on a custom indicator and has the ability to program its own trading strategy for MT5 terminals.

The xCustomEA has a link to custom indicators that can be downloaded from the Internet or the mql5 market.

Limitations of the DEMO version: Works on any characters on a DEMO account or USDJPY on a real account.

You can program your custom indicator , and our advisor The xCustomEA will open positions on signals.

By purchasing our Universal Trade Adviser The xCustomEA , you can program advisors on indicators every day!

  • Dear friends and users of our EAs, please add your ratings in the Reviews section.
  • All updates to our forex software are free!

Basic settings: 

You can program individual indicators and signals for: open, close, filter, stop loss, take profit.

All other settings are identical with the settings of The X and include more than 200 parameters.


SignalNameIndicator - The name of the custom indicator from which the main signals for opening positions will be received.

SignalTypeIndicator - Indicator type for signals.

    • There are two types of adviser's work:
    • xCustomEA - The work of an advisor on our indicator, in which you personally program your strategy.
    • xArrow - The EA works directly with a custom indicator that has buffers such as Arrow that can be used for the Expert Advisor.

IndSigToTrade - Select the indicator and signal to open the first and main position.

    • Strategy number from the custom indicator SignalNameIndicator
    • If the specified strategy is not found in the indicator, the EA will be unloaded from the chart with an error!
    • If 0 is specified, then the strategy signals are not used but filters are used!

TF_IndSigToTrade1 - Timeframe for 1 main indicator. You can select the Time Frame by which the indicator will receive signals.

      • Period_Current - the current Timeframe

    SignalBuferforBUYSignalBuferforSELL - Buffer number in the custom indicator, to receive a signal to BUY and SELL

    SIGNALStrategyInputs - External parameters for custom indicator,   You can specify external variables of the indicator as they are written in the settings table,  separated by commas!

    Method of work of the Expert Advisor on the custom indicator without programming:

      1. 1. Specify the name of the custom indicator! If this indicator was downloaded from the MQL5 market, then you need to specify from the Market folder:
      2. Market \\ Name of the Indicator
      3. Be sure to write a double backslash \\
      4. 2. Specify the type of xArrow signals
      5. 3. Specify the number of the signal buffer for opening BUY (for example, buffer number 8)
      6. 4. Specify the signal buffer number for opening SELL (for example, buffer number 9)
      7. Thus, we do not need to program our indicator, for the adviser's work.

    Attention! By default, the Expert Advisor does not have a trading strategy and can not open positions!

    You can also download my other products:
    Description MetaTrader 4  MetaTrader 5
    Copy of deals and positions between terminals  COPYLOT  MT4  COPYLOT MT5
    Trading panel in 1 click from the chart and keyboard  VIRTUALTRADEPAD MT4 VIRTUALTRADEPAD MT5
    Automatic scalper without settings  TICK HAMSTER MT4  TICK HAMSTER MT5
    Professional Automatic scalper, Smart Robot  TICKSNIPER MT4 TICKSNIPER MT5
    Smart robot for beginners  GOOD SANTA MT4  GOOD SANTA MT5
    Universal Advisor on Standard Indicators  THE X MT4 THE X MT5
    Averager, grid, additional opening of positions on Trend and against Trend  AVERAGER MT4 AVERAGER MT5
    Duplicator of positions, copying positions on one terminal  DUPLICATOR MT4 DUPLICATOR MT5
    Automatic installation of stop loss / take profit / trailing stop  ASSISTANT MT4 ASSISTANT MT5
    Simulator for strategy tester  TESTERPAD MT4 TESTERPAD MT5
    Professional account report   EXTRAREPORTPAD MT4 EXTRAREPORTPAD MT5

    All my programs on mql5.com

    ersan yurdakul
    ersan yurdakul 2020.02.12 14:27   


    I am testing your EA. He works in the strategy test. I do the test with TrendLine PRO Mt5. It works in the strategy test, but it doesn't work when I add it to the real chart in the demo account. Why this problem is caused.

    That is error.

    2020.02.12 16:29:36.620 TrendLine PRO MT5 (USDJPY,H1) Attempting to launch indicator ...

    Nikolay Gaylis
    Nikolay Gaylis 2019.01.07 17:44 

    User didn't leave any comment to the rating

    Version 20.220 2020.02.19
    Dear friends!
    We made a very important and difficult decision regarding The X/The xCustomEA for MetaTrader 5 and the use of the multi-currency mode (PAIR1-PAIR12)
    Due to the fact that the use of different methods of multi-currency operation does not bring 100% accuracy in obtaining quotes,
    we were forced to turn off this mode.
    We explored many topics on the forum about the problem of using multi-currency mode in MetaTrader!
    Each method of implementing a multi-currency trading mode has its pros and cons!
    But in each of these methods there are Cons: Reward resources on computers, skipping ticks, looping the main trade flow.
    We made the decision: Remove the multi-currency trading algorithm in The X/The xCustomEA to eliminate trading problems on real charts!
    We apologize for any inconvenience caused.

    IMPORTANT: As soon as we find the ideal solution for working in multi-currency mode (PAIR1-PAIR12) we will turn on these parameters again, for the convenience of taming and optimization.
    IMPORTANT: On a real chart, I recommend installing an adviser on each chart of a currency pair separately from each other (do not use PAIR1-PAIR12)
    Version 20.216 2020.02.17
    Forced modifying comment length CommentToOrder up to 12 characters!
    If the comment is longer than 12 characters, then the advisor will trim the extra characters.
    Attention! For the EA to work correctly, set a comment no longer than 12 characters.
    Right: ExpforexTheX
    Not Right: Expforex The X Set # 12345
    Version 20.212 2020.02.12
    EAPADPRO v35
    Version 19.820 2019.08.20
    Update by Full version
    Version 19.816 2019.08.17
    In mt5:
    Fixed bug:
    When two different directions BUY and SELL are in operation and averaging works, then BUY does not allow to modify the take profit for SELL positions!
    Version 19.808 2019.08.07
    EAPADPRO v31
    Version 19.517 2019.05.17
    Forced modification only when stop loss = 0 or take profit = 0
    Version 19.514 2019.05.16
    Fixed double opening of averaging deals on accounts with MARKET execution.
    Version 19.123 2019.01.23
    Indicator example file updated! + StrategyShift removed from indicator file !!!
    Added operation mode for the current zero bar(Shift=0)!
    Attention! The current bar only forms a signal, so we do not recommend using Bar # 0(Shift=0) to receive signals!
    Attention! Some indicators forcibly do not draw a signal at 0 bar! - It is right. Therefore, the adviser will not open positions using Shift = 0.
    Version 19.111 2019.01.10
    The SaveTPafterTrailingStop function has been updated to work in virtual stop loss / take profit mode with VirtualStops = true
    Version 19.110 2019.01.10
    Version 19.107 2019.01.07
    - The ClosePositionifChangeOWNSignal parameter is divided into 3 values: False (disabled), True (enabled), OnlyifProfit (Only if the positions are in profit);
    - EAPADPRO v25 update
    - Additional languages added to the panel: Spanish, Portuguese (Brazil), German, Chinese, Japanese;
    The translation was made using the GOOGLE Translator + MQL + Terminal site!
    If you find an error in your language, please report it in messages. Thank!
    - Increase the speed of the panel;
    Version 19.0 2018.12.29
    Fix Fix Fix
    Version 18.999 2018.12.28
    - Optimization of the code, increasing the speed of testing.
    - When you first start the advisor, an indicator template file is created for programming your strategy.
    A file is created in your terminal \ Files folder with name "Ind - The xCustomEA TEMPLATE.mq*"
    You can open this file and follow the programming instructions of your custom strategy.
    Version 18.998 2018.12.28
    - Optimization of the code, increasing the speed of testing.
    Version 18.992 2018.12.23
    - The ability to specify and fill in external variables (which can be configured from the advisor) has been added to the xCustom signal type
    SIGNALStrategyInputs, CloseStrategyInputs, FILTERStrategyInputs can now be used with indicators written in our example (xCustomEA)
    - In connection with the update of the sample files and our custom indicator Ind - The xCustomEA TEMPLATE, we updated all the variables of the adviser and added an additional type: to the SLTPTypeIndicator type xCustomEA, to call from our example indicator.
    Also added is the variable SLTP_IndSigToSlTp to specify the strategy number in the Ind file - The xCustomEA TEMPLATE
    Version 18.988 2018.12.10
    - Fixed bugs according to user messages
    - Reworked system for receiving signals
    - Modified indicator indicator files for receiving signals for the operation of new functions and blocks! Be attentive!
    ================================================= ===============================
    - Update EAPADPRO to version 23:
    Added controls for speed testing and pause in the strategy tester;
    Added a table of current open positions in the strategy tester;
    ================================================= ===============================

    - Added block control signal closure for custom indicator.
    This block allows you to close open positions by signals of a custom indicator.
    It is used if a custom indicator provides signals for closing positions (separately from the signals for opening a new position).
    If you need to tell the adviser signals to close positions, then you need to specify: the indicator name (may be identical with the indicator name for closing positions), a set of parameters (If they differ from the default indicator parameters), TimeFrame, Bar Shift, and number buffers to receive signals for closing. Separately for BUY and SELL positions.
    Attention: If you want to close a position when receiving the opposite signals, then you do not need to use this block.

    - External parameters Signal for Close options:

    CloseNameIndicator = ""; // CloseNameIndicator -> Indicator name to get the signal to close pos
    CloseTypeIndicator = xArrow; // CloseTypeIndicator -> Type of indicator signal to close
    CloseTimeFrame = PERIOD_CURRENT; // CloseTimeFrame -> TimeFrame of signal to close
    Close_shift = 1; // Close_shift -> Bar number to receive signal to close
    CloseStrategyInputs = ""; // CloseStrategyInputs -> Inputs Of Ind, separated by commas
    CloseBuferforBUY = 4; // CloseBuferforBUY -> Buffer number for close BUY
    CloseBuferforSELL = 5; // CloseBuferforSELL -> Buffer number for close SELL
    Close_IndSigToClose = 0; // Close_IndSigToClose -> Indicator number to get Close signal
    ================================================= ===============================

    - Added Stop Loss and Take Profit control unit based on custom indicator signals.
    This block allows you to set a stop loss or take profit when opening positions on the signal, which can be taken from the values ​​of the custom indicator buffers.
    If the Custom Indicator has separate buffers for getting Stop Loss or Take Profit, you can use these values ​​when opening a new position.

    Attention: Stoploss or take profit is set only when a new position is opened using a new signal. The functions of averaging, additional opening use the parameters of stop loss and take profit from past variables. Stoploss and take profit obtained from the custom indicator in Averaging and additional opening are not accepted.
    Stop loss and take profit from a custom indicator is also set when using the ForcedModifySLTP function.

    If you need to tell the adviser the stop loss and take profit values ​​from the custom indicator, then you need to specify: the indicator name
    (may be identical with the name of the indicator for opening / closing positions), a set of parameters (If they differ from the parameters of the indicator by
    default), TimeFrame, Shift bar, and the number of buffers to get values. Separately for BUY and SELL positions and separately for StopLoss and TakeProfit.

    - External parameters Custom StopLoss and TakeProfit from Indicators options:

    SLTPNameIndicator = ""; // SLTPNameIndicator -> Indicator name to get the signal of SL / TP
    SLTPTypeIndicator = xPrice; // SLTPTypeIndicator -> Type of indicator signal of SL / TP
    SLTPTimeFrame = PERIOD_CURRENT; // SLTPTimeFrame -> TimeFrame of signal of SL / TP
    SLTP_shift = 1; // SLTP_shift -> Bar number to receive signal of SL / TP
    SLTPStrategyInputs = ""; // SLTPStrategyInputs -> Inputs of the ind, separated by commas
    SLTPBuferforBUY_StopLoss = -1; // SLTPBuferforBUY_StopLoss -> Buffer number of SL for BUY
    SLTPBuferforSELL_StopLoss = -1; // SLTPBuferforSELL_StopLoss -> Buffer number of SL for SELL
    SLTPBuferforBUY_TakeProfit = -1; // SLTPBuferforBUY_TakeProfit -> Buffer number of TP for BUY
    SLTPBuferforSELL_TakeProfit = -1; // SLTPBuferforSELL_TakeProfit -> Buffer number of TP for SELL
    ================================================= ===============================
    Version 18.970 2018.11.10
    - Global update and improvement of the working code.
    -Add EAPADPRO v21 panel
    -Add short hints to external variables
    -Add parameters for calling indicators SIGNALStrategyInputs, for indicators with the type SignalTypeIndicator = xArrow
    Read more in our blog.