Trade Designer TradeBuilderMT5 is
an adviser designed to build trading systems based on arbitrary sets of technical indicators.

The EA’s work is based on the formation
and processing of the following signals:

  • OpenBuy /
    OpenSell
     – opening positions;
  • StopBuy /
    StopSell
     – closing positions;
  • TakeProfitBuy /
    TakeProfitSell
     – getting TP levels;
  • StopLossBuy /
    StopLossSell
     – getting SL levels;
  • NoLossBuy /
    NoLossSell
     – transfer to breakeven;
  • MinProfitBuy /
    MinProfitSell
     – closing part of a position;
  • CancelBuy /
    CancelSell
     – permission of a repeated signal to open;
  • DeleteBuy /
    DeleteSell
     – delete pending orders.

Signals are formed from several
consecutive steps (for Open – 10 steps, for the rest – 2 steps), specified through input parameters. Each step contains the following
fields:

  • indicator (drop-down
    list) – selects an indicator from the MT5 list, including CUSTOM, as well as optionally Open, Close, High, Low prices, current Bid
    and Ask prices, the lowest Low and the highest High of the specified interval (Lowest, Highest);
  • tf (drop-down
    list) – select a time period;
  • action (drop-down
    list) – step function;
  • param 
    parameter string separated by commas (for the CUSTOM indicator, the first parameter should be a string with the indicator name);
  • bar  bar index;
  • line 
    buffer index;
  • arg 
    step argument (double);
  • freeze 
    sign of storing the result of a step for a given number of bars

In the input parameters, the name of
the steps is encoded with delimited text:

 <signal name> _ <step> _ <parameter>, for
example, OpenBuySignal_0_indicator – a parameter that sets the type of indicator for step 0 of the OpenBuy signal.

Each step has a result of execution (true
/ false) and a value used for further processing. A list of functions with a description is given in the table below.




















FunctionDescription
EmptyActionEmpty
action (used, for example, to get the indicator value at a certain point). The result of the function is always true.
AboveComparison
of the value obtained in the current step with the previous one. If the value of the current step is higher than the previous one,
then the result is true, otherwise false.
BelowComparison
of the value obtained in the current step with the previous one. If the value of the current step is lower than the previous one,
then the result is true, otherwise false.
AboveArgComparison
of the value obtained in the current step with the value specified in the arg field. If the value of the current step is higher
than the specified one, then the result is true; otherwise, false.
BelowargComparison
of the value obtained in the current step with the value specified in the arg field. If the value of the current step is lower than
the specified one, then the result is true, otherwise false.
AddpointAdding
to the value obtained at the current step the number of points specified in the arg field. The result of the function is always
true.
EmptyChecks
the value obtained in the current step from 0 or EMPTY_VALUE. The result of the execution is set to true when the current step is
zero.
NotemptyChecks
the value obtained in the current step from 0 or EMPTY_VALUE. The result of the execution is set to true if the current step is not
zero.
CrossupChecking
the intersection of the indicator lines specified in the current and previous step up. The result is set to true when the new
point of the indicator specified in the current step is higher than the previous one, and past points are vice versa.
CrossdownChecks
the downward intersection of the indicator lines specified in the current and previous step. The result is set to true when the
new point of the indicator specified in the current step is lower than the previous one, and past points are vice versa.
MoveUpChecking
the movement of the line specified in the current step up. The result is set to true when the new indicator point is higher than
the previous one.
MovedownChecking
the movement of the line specified in the current step down. The result is set to true when the new indicator point is lower than
the previous one.
CrossArgUpChecks
if the line crosses up the value specified in the arg parameter. The result is set to true when the condition is met.
CrossargdownChecks
if the line crosses down the value specified in the arg parameter. The result is set to true when the condition is met.
EqualargChecks
the value for equality specified in the arg parameter. The result is set to true when the condition is met.
NotEqualArgCheck
the value for the inequality specified in the arg parameter. The result is set to true if inequality occurs.
EqualCheck
for equality of values of the current and previous steps. The result is set to true when the condition is met.
NotequalCheck
for equality of values of the current and previous steps. The result is set to true if inequality occurs.

The signal returns true, if received on
each function of the signal.

The following is an example of signal
setup when moving averages are moving upwards with periods of 10 and 20. The numbers in the screenshot indicate:

  1. MA indicator selected
  2. current time frame
  3. empty action
  4. MA parameters
  5. bar 1
  6. line 0
  7. MA indicator in the next step
  8. intersection function
  9. parameters of the second MA
  10. EmptyIndicator in the next step – a sign of the end of the signal


To determine the parameter string,
you need to refer to the documentation on

 mql5
technical indicators
 . Here, choosing the required indicator, we will get a description, such as below the
following:

 int    iMA ( 
   string                symbol,             
   ENUM_TIMEFRAMES       period,             
   int                   ma_period,         
   int                   ma_shift,           
   ENUM_MA_METHOD        ma_method,         
   ENUM_APPLIED_PRICE    applied_price       
   );

It is necessary
to enter numerical values of all parameters, except

 symbol and period, separated
by commas. In this case, there are 4 parameters for the MA indicator. Below are the default parameter lines for each indicator and line
numbers.

















IndicatorParameter
String
Line
numbers
AC
AD
Adx140
– MAIN_LINE, 1 – PLUSDI_LINE, 2 – MINUSDI_LINE
Adxw140
– MAIN_LINE, 1 – PLUSDI_LINE, 2 – MINUSDI_LINE
ALLIGATOR13,8,8,5,5,3,2,40
– GATORJAW_LINE, 1 – GATORTEETH_LINE, 2 – GATORLIPS_LINE
AMA15,2,3,0,0,0
Ao
ATR14
Bands20,0,2.0,00
– BASE_LINE, 1 – UPPER_BAND, 2 – LOWER_BAND
BEARSthirteen
BULLSthirteen
Bwmfi0
CCI14.5
CHAIKIN3,10,1,0
Customindicator_name   ***
Dema14,0,0
Demarker14
ENVELOPES14,0,0,0,0.10
– UPPER_LINE, 1 – LOWER_LINE
FORCE13,0,0
Fractals

0
– UPPER_LINE, 1 – LOWER_LINE
FRAMA14,0,0
GATOR13,8,8,5,5,3,2,40
– UPPER_HISTOGRAM, 1 – the color of the upper histogram, 2 – LOWER_HISTOGRAM, 3 – the color of the lower histogram
ICHIMOKU9.26.520
– TENKANSEN_LINE, 1 – KIJUNSEN_LINE, 2 – SENKOUSPANA_LINE, 3 – SENKOUSPANB_LINE, 4 – CHIKOUSPAN_LINE
MA10,0,0,0
MACD12,26,9,00
– MAIN_LINE, 1 – SIGNAL_LINE
Mfi14.0
Momentum14.0
OBV0
OSMA12,26,9,0
RSI14.0
RVI10
Sar0.02,0.2
STDDEV20,0,0,0
STOCHASTIC5,3,3,0,00
– MAIN_LINE, 1 – SIGNAL_LINE
TEMA14,0,0
TRIX14.0
Vidya15,12,0,0
Volumes0

***   Custom
indicator CUSTOM as parameters must contain at least one parameter – its name. An example of setting a signal on a custom indicator from the
market is shown in the screenshot below.


Below is an example
of the configuration of the StopLossBuy signal to obtain the SL level at the lowest price value for the last 6 bars. The numbers in the
screenshot indicate:

  1. Lowest indicator selected
  2. start bar
  3. bar counter
  4. EmptyIndicator, as a sign of signal completion



The list of parameters for setting up trading:
 

  • startLot 
    fixed volume of transactions;
  • riskPercent 
    percentage for calculating the volume of the balance of available funds (with non-zero SL);
  • takeProfit 
    fixed TP;
  • takeProfit_factor 
    calculate TP but SL level
  • stopLoss 
    fixed SL;
  • noLoss 
    fixed level of breakeven;
  • noLoss_factor 
    level of transfer to breakeven as a percentage of available funds;
  • minProfit 
    fixed level of partial closure;
  • minProfit_percent 
    level of partial closure as a percentage of available funds;
  • minProfit_factor 
    size of partial closure
  • trailStop 
    fixed level of trailing;
  • trailStop_factor 
    trailing level from TP level;
  • trailStep 
    trailing step;
  • numOrders 
    the number of transactions in one direction;
  • bothOrdersDir 
    permission of Buy deals in the presence of Sell and vice versa;
  • tradeMon,
    tradeTue, tradeWed, tradeThu, tradeFri
     – trading time by day of the week;
  • orderTypes 
    type of open orders (market, limit, stop).



Source link

Register at Binance