• Overview
  • Reviews
  • Comments (7)


Perfection is a multicurrency, fully automated and secure trading robot. The robot is designed for both portfolio trading and trading a single instrument. The EA does not use averaging methods, the volume of positions is strictly regulated. Orders are opened only in the direction of market movement in a grid. Due to this, the robot operates efficiently on any strong movements.

The decision making algorithm does not use indicators. Instead, the robot automatically calculates the key levels, which will be used for placing positions in the market movement direction. All calculated levels are displayed in the information panel on the chart. The levels are updated every week.

The robot's algorithm consists of two main modules, which work independently of each other, and position management modules. The first module opens positions with a reduced volume. The second module is activated only when the first one encounters problems.

Auxiliary modules: position trailing based on profit percentage of the deposit, stop loss trailing of positions of the second module, partial closure of volume of the second module's positions.

The robot actively uses the position locking strategy. For example, if there are active positions left on Friday night, the robot will set a lock on these positions. Thus, it grants protection from price gaps on Monday.

Unique features

  • supports multicurrency trading
  • Strict control of profit and risk
  • does not depend on start time
  • calculated levels are the same for all brokers
  • does not use indicators
  • does not use averaging algorithms
  • no binding to a specific timeframe
  • flexible algorithm allows for customization to any currency pair


  • Timeframe: any
  • Minimum deposit: $1000
  • Minimum volume step: 0.01 lot
  • Execution: fast (ECN)
  • Quotes: five-digit
  • Leverage: 1:500
  • Average position holding time: 3 day
  • Maximum position holding time: up to 10 days
  • Maximum number of positions per pair: up to 20


  • The robot features the virt_coef parameter, which is responsible for sharing risks. This is the ratio of the actual deposit division. That is, if virt_coef=4, the robot will work only with a quarter of the deposit. When this parameter is increased, the total volume of positions will be reduced. In addition, the size of the maximum losses will also reduce proportionally. For example, virt_coef=4 and SL=40% by default. At virt_coef=8, stop loss should be set to SL=20%. And so on.
  • The robot does not react to the price noise. It filters out the minor fluctuations.


  • The robot requires good execution
  • The robot requires low spreads
  • The robot entirely depends on the settings


  • identifier - identifier, similar to magic. It must also be changed when more than one instance of the robot is running.
  • info - information panel
  • hour_start - operation start hour, if there are no positions
  • hour_end - operation end hour
  • virt_coef - deposit division ratio to calculate volumes and risks
  • percent_lot - lot percentage
  • percent_close - profit closure percentage for all positions
  • percent_close_for_tags - profit closure percentage for individual grids in the series
  • SL - stop loss based on deposit
  • exponent_Fib - coefficient of the Fibonacci number to start the trailing from.
  • step - grid step of the first module
  • indent - grid indent
  • PartClose_ON - enable partial profit taking for the positions of the second module
  • step_tral - trailing step in points for the second module
  • step_fg - step of the positions of the second module
  • num_fg - the number of positions of the second module
  • range_fg - distance from the calculated level in points, when all positions in a series become profitable
  • Accelerator_on - module for filtering the price noise
  • magic - unique number. It must be changed when more than one instance of the robot is running.

The default settings of the robot are designed for EURUSD. Description of the remaining settings will be provided in the comments.

Warning: when using multicurrency trading, make sure you change identifier and magic ! Also, you can not test the robot in the same terminal where the robot is already trading!

Signals (risk 40%) https://www.mql5.com/en/signals/317438

Signals (risk 20%) https://www.mql5.com/en/signals/331567

No reviews