Structure of a Trading Robot

After finishing the previous lessons you already know about the types of trading robots in MetaTrader 5. You also know where to find the main algorithmic trading tools in MT 5 and how to set them up. In this lesson, we will look at the bones of the trading robot. We promise you that after this lesson your fear of coding in MQL5 will start to disappear!

What does a trading robot consist of?

At first, let’s have a look at the structure of a robot in the Meta Editor.

45232.png

Looks scary, right? However, in reality, all trading robots have the same core elements you need to know about.

There are four main parts of a trading robot:

  • Setup
  • OnIntIt
  • OnDeinit
  • OnTick

Let’s have a closer look at each element.

Setup

This is the part of a robot where all the administrative information is placed. Here, you write notes, declare variables (different types of information with a unique name), track the list of changes, and set the property rights.

3232.png

On the screenshot above, you can see a sample of the Setup code. It consists of copyright, the main properties of a robot, and the #include command that inserts the content of a certain file to your expert advisor. Also, in this section, we declare the main inputs under the #input command.

OnInIt

The second part is called OnInit (OnInitiation). This part launches when you start the EA for the first time.

65443.png

 In this part, you can see the commands that will be executed after the first launch of the program. We will explain these commands in the next articles!

OnDeInIt

The next section of the expert advisor is called OnDeinitiation, or shortly OnDeInIt. It runs when the expert advisor is shut down.

OnTick

This is the most interesting part of an expert advisor. It consists of three main parts that are updated on every tick (with the new information about a price). They are entries, exits, and sizing. These functions are important for any expert advisor, because they tell you when to buy, how much to sell, and when to close your trades.

This code will start every time a new tick arrives on your MetaTrader 5 platform. That is, if the bid, ask prices, or volume changes, this change affects the OnTick section of your code as well.

667654645.png

On the screenshot above, you can see that the robot checks the last trade processing time and other data.

So, if you were a computer, how would you read the code structure?

First of all, you would go to the OnInit section and run everything in it. You’d set up variables and parameters that you need for your strategy. This action is executed only once.

After this action is completed, you go to the OnTick section. At first, you check if you have any trades that need to be exited. After that, you look for trades that can be entered. Finally, a sizing algorithm will help you to identify the size of your position.

Once you shut down your EA, you run OnDeInIt. This option removes the graphics from the charts and deletes everything linked to the expert advisor itself.

Bottom line

To sum up, if you want to build a trading robot, you need to know its structure thoroughly. Luckily, all of the robots have a similar structure that allows you to construct it step-by-step.

Frequently asked questions

  • How to open an FBS account?

    Click the ‘Open account’ button on our website and proceed to the Personal Area. Before you can start trading, pass a profile verification. Confirm your email and phone number, get your ID verified. This procedure guarantees the safety of your funds and identity. Once you are done with all the checks, go to the preferred trading platform, and start trading. 

  • How to start trading?

    If you are 18+ years old, you can join FBS and begin your FX journey. To trade, you need a brokerage account and sufficient knowledge on how assets behave in the financial markets. Start with studying the basics with our free educational materials and creating an FBS account. You may want to test the environment with virtual money with a Demo account. Once you are ready, enter the real market and trade to succeed.

  • How to withdraw the money you earned with FBS?

    The procedure is very straightforward. Go to the Withdrawal page on the website or the Finances section of the FBS Personal Area and access Withdrawal. You can get the earned money via the same payment system that you used for depositing. In case you funded the account via various methods, withdraw your profit via the same methods in the ratio according to the deposited sums.

Latest news

BTCUSD: Rich Dad Says Buy

Robert Kiyosaki, the author of "Rich Dad Poor Dad," has updated his bitcoin price forecast, now projecting the cryptocurrency to hit $100,000 by September. He plans to acquire more bitcoin before April, attributing his decision to the upcoming halving event. Kiyosaki advises investors to consider adding bitcoin to their portfolios and suggests...

WTT: Currency Pairs To Trade In April

Hello again my friends, it’s time for another episode of “What to Trade,” this time, for the month of April. As usual, I present to you some of my most anticipated trade ideas for the month of April, according to my technical analysis style. I therefore encourage you to do your due diligence, as always, and manage your risks appropriately.

EURUSD: Seeking liquidity in weekly selling zones. Key intraday levels.

Bearish scenario: Sell below 1.0820 / 1.0841... Bullish scenario: Buy above 1.0827...

Deposit with your local payment systems

Data collection notice

FBS maintains a record of your data to run this website. By pressing the “Accept” button, you agree to our Privacy policy.

Callback

A manager will call you shortly.

Change number

Your request is accepted.

A manager will call you shortly.

Next callback request for this phone number
will be available in

If you have an urgent issue please contact us via
Live chat

Internal error. Please try again later

Don’t waste your time – keep track of how NFP affects the US dollar and profit!

You are using an older version of your browser.

Update it to the latest version or try another one for a safer, more comfortable and productive trading experience.

Safari Chrome Firefox Opera