• 概述
  • 评论 (3)
  • 评论 (120)
  • 新特性

Exp4 The xCustomEA for MT4

MetaTrader 4自定义指标的全球交易顾问。


通用交易顾问的功能xCustomEA完全复制了我们的顾问The X所有参数,除了一个:

  1. xCustomEA适用于自定义指标,能够为MT4终端编制自己的交易策略。
  2. xCustomEA具有指向可从Internet或mql5市场下载的自定义指标的链接。

我们的新顾问 xCustomEA 基于顾问 The X-Universal EA

您可以编制 自定义 指标 ,  和我们的顾问 xCustomEA 将在信号上开仓。

通过购买我们的Universal Trade Adviser The   xCustomEA ,  你可以每天为指标编程顾问!

  • 亲爱的朋友和我们的EA用户,请在评论部分添加您的评分。
  • 我们的外汇软件的所有更新都是免费的!
  • 外汇工具开发商: Expforex


您可以为以下各项指示和信号编程:   打开 ,   关闭 ,   过滤器 ,   止损 ,   获利 。



SignalNameIndicator   - 自定义指标的名称,将从中接收开仓位置的主要信号。

SignalTypeIndicator   - 信号的指示器类型。

  • 顾问的工作有两种类型:
  • xCustomEA - 我们指标上顾问的工作,您可以在其中亲自编制策略。
  • xArrow - EA直接使用自定义指标,该指标具有可用于EA交易的缓冲区,例如Arrow。

IndSigToTrade -选择指示器和信号以打开第一个和主要位置。

  • 自定义指标SignalNameIndicator的策略编号
  • 如果在指标中找不到指定的策略,EA将从图表中卸载并出错!
  • 如果指定0,则不使用策略信号,但使用过滤器!

TF_IndSigToTrade1   - 1个主要指标的时间范围。您可以选择指示器接收信号的时间范围。

  • Period_Current - 当前时间范围

OWNSIGNAL_shift   - 指标将生成的信号的条形码,

  • 1 =最后一个闭合条,这样的条上的信号被认为是完整的。
  • 0 =当前打开条,此条上的信号被视为绘图。

SignalBuferforBUY , SignalBuferforSELL - 自定义指标中的缓冲区编号,用于接收买入和卖出信号

SIGNALStrategyInputs - 自定义指标的外部参数,您可以指定指标的外部变量,因为它们写在设置表中,  用逗号分隔!


  1. 1.指定自定义指标的名称!如果此指标是从MQL5市场下载的,那么您需要从Market文件夹中指定:
  2. 市场\\指标名称
  3. 一定要写一个双反斜杠\\
  4. 2.指定xArrow信号的类型
  5. 3.指定打开BUY的信号缓冲区编号(例如,缓冲区编号8)
  6. 4.指定打开卖出的信号缓冲区编号(例如,缓冲区编号9)
  7. 因此,我们不需要为顾问的工作编制指标。

注意!默认情况下,EA交易没有交易策略 不能 空缺职位!

Hanxyork 2020.01.31 03:00 

I purchased the xCustomEA few days ago, Vladislav answered all my questions quickly, he is very professional, responsible, knowledgeable, honest and dedicated, he helped me to start up my xCustomEA in a VPS.

I am buying more of his products, definitely.

Thank you very much Vladislav.

Lucian 2019.10.14 22:54 

looks promising . i will update the review after a month.

jewboy 2019.07.22 17:50   

i bought this EA yesterday and with the help of Vladislav, it is working smoothly.

I will make it work on different fx pairs.

Thanks again for your time Vladislav

版本 20.301 2020.03.01
版本 20.216 2020.02.16
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
版本 20.212 2020.02.12
- Fixed the Work on time error if the advisor TF is greater than the Minutes of the time function.
(For example, closing at 22:49 and TF = H1)
版本 19.994 2019.12.05
Added parameter Send_Push_without_opening_positions:
Sending PUSH notifications to the phone instead of opening positions!
When this parameter is enabled, the adviser will not open a new position on a signal, but only notify the user that
that a new signal has appeared. At the same time, all other functions will work as usual.
Allows the user to open a position on their own if the EA gives a signal.
But the adviser does not make this transaction and does not open a position, but only notifies the user about the signal.
版本 19.903 2019.09.03
- if true, the Advisor starts the modification only when the position is gaining profit to Breakeven (setting stop loss on the break-even point) + TrailingStop profit points.
- if false - TrailingStop starts working immediately after opening a position and making a profit of 0 points and leaving a position as a profit.
In other words: IfProfTrail = false, then the trailing stop starts working immediately after the position is in profit.
版本 19.821 2019.08.20
Recompilation in the new version of the terminal.
版本 19.820 2019.08.20
-. Alert has been added if the specified indicator is not found!
The adviser will check the existence of the indicator and give a message stating that the indicator was not found with a request to check the correctness of the name!

1. Function ControlNewBarforSIGNAL Changed:
Added values:
ControlNewBarforSIGNALType = 1 = True smallest TF of the settings: New mode!
The EA selects the smallest TimeFrame, which was set by the parameters TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2 ....
In this mode, the EA does not check the signal on the currently set TimeFrame, but on the TimeFrame for receiving a signal from indicators!
This mode is useful for those who use TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2, other than Current.
ControlNewBarforSIGNALType = 2 = True current bar of the current TF: Old mode!
In this mode, the EA checks signals every new bar of the current TimeFrame!
If you use TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2 other than Current, the results on each TimeFrame may be different.
We advise you to install the adviser on the TimeFrame M1!
ControlNewBarforSIGNALType = 1 = False: Do not use the control of the new bar to determine the signal!
Attention: When off, the EA checks signals every new tick! There may be delays in tapping and optimization!

2. Added variable ControlNewBarforOpenbySignal:
ControlNewBarforOpenbySignal = true: Old mode! Open positions on a signal only every new current bar of the current TimeFrame!
The EA opens positions, if there is a signal, only when a new bar of the current TimeFrame arrives!
ControlNewBarforOpenbySignal = false: New mode! Open positions on a signal every new bar from the signal Timeframe!
The EA opens positions, if there is a signal, immediately upon detection of a signal.
This mode is useful for those who use TF_IndSigToTrade1, FILTER_TF_IndSigToTrade1, FILTER_TF_IndSigToTrade2, other than Current.
版本 19.808 2019.08.07

Added DistanceMartinAdditional - Coefficient of distance for additional order opening.
Added MinTimebeforenextAverage - Minimum time to the next averaging in minutes.

Code optimization, increased testing speed and optimization.
Starting the calculation of the average spread only when the user uses at least one parameter for the average spread.
版本 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.
版本 19.111 2019.01.10
The SaveTPafterTrailingStop function has been updated to work in virtual stop loss / take profit mode with VirtualStops = true
版本 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;
版本 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.
版本 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)
Attention! In the version for MetaTrader4, it is forbidden to transfer string parameters! When passing string parameters, the indicator may not load correctly!
- 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
版本 18.982 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
================================================= ===============================
版本 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.