MQL5 Reference
MetaQuotes Language 5 (MQL5) is a high-level language that is designed for developing technical indicators, trading robots and utility applications, which automate financial trading. MQL5 is developed by MetaQuotes Software Corp. for their trading platform.
MQL5.community is developed by MetaQuotes Software Company.

1. Personal information settings

After logging in to MQL5.community , please set up your profile. Click the profile link in the right corner .
In your profile settings you can add personal information, adjust account security settings and the appearance of MQL5.community. Add your favorite avatar, if this is not enough, you can add a big picture or draw a picture to highlight your personality.
Open the edit section, in the About me section you can find a unique feature: You can add your personal information in English and Russian at the same time, these are the languages officially supported by MQL5.community.
According to the language selected when entering MQL5.community, other users will see the text in the corresponding language in your profile.
In the contact section, you can add the number of your favorite instant chat tool (such as ICQ, Skype, etc.), a hyperlink to your personal website or homepage, or your account on various social networking sites. At the same time, you can specify your MetaQuotes ID . After you install MetaTrader 5 on your mobile terminal, it can be used to get notifications from the MetaQuotes service.
If other users are interested in your comments, articles, or scripts, they will undoubtedly visit your profile and see the link to your website. However, please note that if you add a link to your website to promote in every comment, it will be unwelcome. We consider this behavior as spam and it is also considered a violation of the rules .
Be sure to check the security section.
Here you can adjust the security settings of your MQL5.com profile:
 Enable the option to display your email address as a picture (to prevent spam), because your email is invisible to other visitors by default.
 In order to confirm important operations, please add your mobile phone number (other users cannot see it).
 Specify the MetaQuotes ID so that you can be notified on the mobile terminal (you can learn more about this technology through the article MetaQuotes ID in the MetaTrader mobile terminal ).
 Enable the "Control Session by IP" option to control the session by IP address.
 Enabling the "Authorization only by allowed static IP address" option will enable two-step authorization authentication through notifications obtained by MetaQuotes ID. At the same time, you can also specify a list of addresses that do not need to use MetaQuotes ID to obtain authorization information. If you do not fill in the list of trusted IP addresses, you will always be prompted for authorization confirmation. We also do not recommend that you add dynamic IP addresses to this list, because they often change and you still have to enter the verification code.
 If you want to know the authorization request from each new IP address, please enable the "Notify via MetaQuotes ID when IP address changes" option.
 Protect your personal files from hacker attacks by turning on IP session control.
 Change your current password.
 All changes to the security settings must be confirmed by a password.
In the interface section, you can adjust the appearance of MQL5.community.
Name: logo_docs-2.png Views: 7 Size: 9.8 KB
2. Message Editor

Your text in forums , articles, and code bases are all edited in a single environment with a convenient and easy-to-use interface. Let's take a look at its functions.
You can HTML switch between HTML text mode and visual view mode with buttons. If you are currently using HTML to view, this button will be renamed VISUAL. Clicking on it again will return to the visualized view of the text. This feature allows your text to be structured and standardized to the utmost extent.
 (Ctrl+Z) and (Ctrl+Y) respectively represent undo the last operation and redo the last undone operation.
 The button is used to create a bulleted list (each item in the table will start with a bullet).
 The button is used to generate an ordered list (each item in the list has an index number).
 Buttons are used to lower the level of elements in the list.
 Buttons are used to increase the level of elements in the list.
 The button (Ctrl+H) is used to insert a horizontal line in the text.
 The button (Ctrl+K) is used to add links to text messages. As long as you press this button, a window with the same title will appear.
 In the link area, you need to fill in the link address, and then click the insert button.
 Press (Alt+U), you can invite other users to participate in the discussion. This key combination can insert a user link: "@name". Users receive corresponding push notifications on their mobile devices .
 The (Ctrl+Alt+I) key combination is used to insert pictures in the message. When this key combination is pressed, a standard file selection window will open. Find the file you need and click Open . In the title field, you can specify a comment, which will be displayed as a pop-up help prompt when you hover the mouse over the picture.
 With the button (Ctrl+Alt+T) you can insert a table in the message text. When you press this button, the table window will appear.
 In order to create a form, you need to fill in some fields:
 Columns -the number of columns in the table.
 Rows -the number of rows in the table.
 Style -The style of the table. There are three options to choose from: standard , no border and no header . To choose a suitable style, left-click on the down arrow located at the end of this area. Then select the desired option from the list.
 Width -the width of the table, measured as a percentage relative to the width of the message window.
 Height -The height of the table, measured in pixels.
 Cell margin -the distance between the text and the inner border of the cell in the table.
 The table preview is on the right side of the window, below the style area. Click the Insert button to insert the table in your message text. If you want to stop adding tables, press the cancel button.
 The button on the Insert Object menu is used to insert the source code in the text message. Click this button, and an empty window for pasting code will appear. Click the Insert button to complete the code addition. Click the Cancel button to cancel inserting the code.
 The source code inserted in this way will use a monospace font to achieve the standardization of the format, making the code easier to read.
 It is not recommended to use bold fonts to highlight certain codes. Because in different operating systems and browsers, monospace fonts are displayed in different ways. For example, Windows Vista uses Consolas monospaced font, and its 10-point bold font is difficult to distinguish from ordinary 10-point fonts.
 The button of the object insertion menu is used to insert a video in your message. When you click this button, the window in the screenshot below will appear.
 The area (normal text by default) is designed to change the style of the text. Click the down arrow at the end of this area, and the list of available styles will open. The style options are: normal text, title, quote, warning, code, strikethrough, important and small.
 The bold button (Ctrl+B) bolds the selected text.
 The Italic button (Ctrl+I) makes the selected text italic.
 The underline button (Ctrl+U) is used to underline the selected text.
 The text color button is used to change the font color. In order to change the font color, you should click on the down arrow located to the right of the "Font Color" button. After clicking, the color selection window will appear. Click the color box in the window and select the color you want.
 The background color button is used to change the background color of your message. The method of selecting the background color is the same as the method of selecting the font color above.
 Text alignment buttons: left alignment (Ctrl+L), center (Ctrl+E), right alignment (Ctrl+R) and block alignment (Ctrl+J). In order to align the text, you need to select the text you want to change and click one of the above four buttons.
 The clear format button is used to clear the format of the text.
Name: code_dialog_1__6.png Views: 7 Size: 8.9 KB
3. Favorites

In order to quickly view interesting forum topics, you can add them to your personal profile favorites. To do this, just click the star icon to the right of the topic title.
It's also easy to remove topics from favorites. You can click the star chart again or visit your profile, and then enter the main tab page under the favorites (here you can cancel the favorites of multiple topics at the same time).

4. Information

In MQL5.community, you can communicate with other members via private messages. If someone sends you a private message, you will find a flashing icon on the left side of your profile.
Click this icon, you can read the private message sent to you by the other party. All conversations with the same user will be displayed in one window. It is impossible to create two, three or more different conversations with a user, they will automatically be assembled into a conversation list. Therefore, the content of the conversation between you and user A will be stored in one place, and the content of the conversation between you and user B will be stored in another place. There is no inbox/outbox division, no chat topics, and conversations with other users are so easy and convenient, just like on a smart phone.
The comments on the chat page are updated in real time. If you send a message to the user, if the other party is on the chat page, then they will see it immediately. Otherwise, they will receive a reminder notification of the new comment. Everything is so simple and clear.
The chat window allows you to type text using a standard message editor, and can preview and add attachments. When you click the cross in the upper right corner, the message will be archived instead of being deleted completely. You can restore archived messages at any time.

See also: Wide range of InstaForex technical indicators.

All user information has a module to add as a friend . On the right side of the message block of your profile is a list of community members who have become your friends. Select a user from the list, and the chat window will appear. You can also easily see if your friends are online. If a user is online, a green circle will appear next to his/her name. Otherwise, there will be no prompt.
The new information system has arranged a chat window, which can be opened by clicking the corresponding icon in the upper right corner. No matter where you are currently on the website, the chat window allows you to view and respond to received messages without leaving MQL5.community.
You can also set a timer to automatically delete previous messages. Choose the desired time so that all previous information will be deleted automatically.
If any conversation participant enables/disables the timer, a corresponding system notification will appear in the chat. The timer can help you deal with the previous information and at the same time protect your communication privacy and security.
Name: Algorithmic-Trading-in-MetaTrader5.jpg Views: 7 Size: 178.2 KB
5. Service Desk

This section is a section for users and experts from MetaQuotes software company to effectively interact with the bugs found and their solutions. If you MQL5.community find a mistake MetaTrader program, or would like to suggest developers to add a desired function, then you can go to the desk of feedback.
 Click New Request , enter the title of your request, and select the products related to your request:
 MetaTrader 5 MQL -If you have any questions about the MQL5 programming language, please select this section.
 MetaTrader 5 Client Terminal -If you encounter problems with MetaTrader 5 client terminal operation, please select this section.
 Finance -If you have any questions about MQL5.community's internal payment system, please select this section.
 mql5.com website -if you have any questions about the MQL5.community website, please select this section.
Next select the type of request: select errors if you want to report the errors found, or select suggestions if you want to suggest certain features. For the financial block is classified complaint a problem .
Once the category is selected, please use the familiar WYSIWYG HTML editor to describe your request in detail. If you can provide screenshots and MQL4/MQL5 source code, it is very welcome because they can help us reproduce the problem.
We hope your request covers the following points:
 A brief description of the problem.
 User behavior description (clearly describe screenshots and source code).
 A description of the results obtained (if anything is wrong).
 A description of the desired result (what you want it to be).
 Add source files.
Describing the problem in this order allows our developers to quickly process your request, locate errors in the source code and solve the problem.
Your request will reach the TeamWox working group of MetaQuotes Software Company, and the experts of the working group will analyze and process it. Soon, you will be able to see relevant responses in the service desk section of your profile page. If necessary, you can make full use of the message editor and participate in discussions with MetaQuotes software company experts.

6. Work and remuneration

Don't miss the work section. Using this service, you can order a program that best suits your trading strategy. If you are an MQL language programmer, you can also find opportunities to earn extra income here. Customers and programmers do not need to worry about each other's damage, our platform will provide corresponding guarantees. You can read the article How to order MQL5 or MQL4 automated trading systems to learn more about how the work service works.
Every successfully registered MQL5.community member will have a section called payment in his profile . Here you can recharge your account, use it to pay for various services, or withdraw the money you earn. The article Payment System of MQL5.community describes in detail all aspects of the payment system: how to deposit and withdraw money for an account, and how to make and spend money.
Name: en_market.png Views: 7 Size: 236.0 KB
7. Market

The market is an app store where you can buy or download MetaTrader 5 trading terminal products for free. All products are classified as follows: Expert Advisors, indicators, trading panels, various scripts and utility tools. Among the various existing solutions, you will find a tool to meet your specific needs for trading in the financial markets.
The market is also an opportunity for professional developers to make money by selling their own programs. For this you need to go through a special registration process to obtain the status of "seller".
Download the app from the market is very simple: open the app pages you are interested in, if the product is free or paid applications Demo version, you can simply click on the download button. The Demo version allows you to evaluate the functionality of paid MQL5 programs on the historical data of the strategy tester .
After determining that the paid product is right for you, click on the buy button. The funds for the purchase of the product will be collected from your account through the MQL5.community payment system .
When you download a demo version of a free application or paid product through the MQL5.community website, the system will prompt you to open it directly in MetaTrader 5, or download and install the terminal if you have not done.
After purchase, a secure version of the product is automatically created and only allowed to be used on the device (computer hardware and operating system). Send a purchase request from here. Product purchases are registered in your account. In addition, you can activate your purchased application on two other computers.

8. Signal

Signal is a service through which you can copy other traders' transactions to your MetaTrader 4 and MetaTrader 5 trading terminals. Not all traders have time to monitor quotes all the time, and many newcomers feel insecure before making a trading decision. Signals provide another way to make money for those who invest and those who manage other people's funds.
Select the one you like the site and click on the signal subscribe .
Next, you need to confirm the subscription. You can either confirm in the trading terminal or directly on the MQL5.community website.
In both cases, you must specify your MQL5.community login name and password on the community tab of the client terminal settings.
All that remains to be done is to enable copying of transactions successfully subscribed from the signal provider. Open the corresponding checkboxes in the terminal and adjust your money management.
That's it-you have now successfully subscribed to the signal and the transaction has been successfully copied. As you can see, it is very simple.
Signal service is also an opportunity for experienced traders to make extra money. Register your trading account as a signal, choose a subscription fee, trade and get profit from your subscribers. To create a paid subscription, you need to go through a special registration process to obtain the status of "seller".
Name: en_signals.png Views: 7 Size: 127.7 KB
9. RSS

There is a very convenient function in MQL5.community that enables you to read news in the form of RSS. RSS is a way of presenting information, allowing you to read news from selected websites in chronological order. One of the main features of RSS that is different from newsletters is that news can be received by subscribers as soon as it is published. The power of RSS is that it can bring together the news you want from different websites. So you can read these news in one place, thus saving you time.

10. Grade

Each MQL5.community member has a special mark to indicate his level of participation in the community-level. After registering at www.mql5.com , each new user's rating score is 0, which will increase (or decrease) over time.
The grade score will be displayed in the user's profile and under the user avatar who sent messages on the MQL5 website. The following is an example of a newly registered user level of MQL5.community: the user registers, fills in his personal data, and then reads some topics on the forum.
Now look at the personal data of high-level users.
The level reflects the user 's activities on the www.mql5.com website. Check the grades section, which shows in detail how the grade scores are composed. This information is public. If you like it, you can see how other forum users get these grades.
Why is grade so important? User levels have the following practical uses:
 As long as your level becomes 5 or higher, you can post links to external resources in your message.
 As long as your level is greater than or equal to 20, if another user's behavior hurts you, you can make a complaint.

11. MQL5 Storage-Source Code Storage

Every registered user of MQL5.community has the opportunity to store the source code of MQL5 programs on a remote server for free and securely. This file storage service is based on a free centralized version control system Subversion 1.7 , which has the following advantages:
 Your source code is stored securely on a remote server. When your hard disk or computer fails, you can quickly copy your code from the storage to the local.
 You can access your storage space from any computer. Just use your MQL5.community account and perform simple authorization in MetaEditor.
 The storage can track and record every version of your MQL5 program file, and you can access every version at will.
Getting started with MQL5 storage is easy. First enter the storage section of your personal data , and then turn on the MQL5 storage option.
Now, open the options of MetaEditor and specify your MQL5.community login name and password.
Now, you can add your source code in the storage space! To do this, use the navigation shortcut menu. Add the subfolders you need in the \MQL5 directory, submit the changes, and now your source code can be saved on the remote server.
In addition to MetaEditor, you can also access the latest version of any file stored in the storage through your MQL5.community profile. As mentioned before, no matter where you are, you can access it from any computer! To achieve this, click on the individual in the storage block . After confirming the authorization on the local computer, you can get your source code.