Download MetaTrader 5

Watch how to download trading robots for free

Find us on Facebook!
Join our fan page

Access the CodeBase from your MetaTrader 5 terminal

Couldn't find the right code? Order it in the Freelance section

How to Write an Expert Advisor or an Indicator

MQL5 Source Code Library for MetaTrader 5 - 87

This is the largest free source code library for MetaTrader 5 platform programs. Here you can find ready-made Expert Advisors, technical indicators, scripts and libraries. Use the code library when learning MQL5 language and develop your own automated trading applications based on the provided codes.

You can freely download and test published codes, as well as launch them in MetaTrader 5. The library is also available directly from MetaTrader 5 platform and MetaEditor development environment.


The Expert Advisor on a single-layer line Perceptron with 4 entries which analyzes the Accelerator Oscillator indicator's data

Bollinger Bands drawn using DRAW_SECTION style is a usual mean to draw ZigZag. Time Frame on which it is calculated can be set in input parameters. That is why such an unusual style of drawing is used.

Selflearning Expert Advisor

Simple MA crossover Signaling for Expert Advisor Wizard

Analyzed copy of ATC2012 current champion JPAlonso's EA.

Export MQL5 live data to Excel (DDE)

The Shapiro-Wilk normality test.

The trading system based on the signals obtained from the BBands_Stop_v1 signal indicator.

This Expert Advisor uses support vector machine learning to analyze historical price data and signal future trades.

The trading system based on the signals obtained from the BBSqueeze signal indicator.

The trading system based on the change in the direction of a universal Bezier curve.

The Expert Advisor based on the following indicators: Laguerre, CCI and MA.

The Expert Advisor opens a position at the specified time in the direction opposite to that of yesterday's daily bar.

The Expert Advisor operating based on divergence of two moving averages.

An indicator similar to Bolinger Band.

Change Alert for barmenteros original indicator that compares four types of regression (linear, quadratic, logarithmic and exponential) and chooses the one that best fits the data analyzed.

The signal indicator based on the Aroon indicator values.

Parkinson's historical volatility.

This indicator calculates the classic historical volatility of a financial asset.

Implementation of the option to change the drawing mode, as exemplified by the CCI indicator.

This indicator draws a period of operation that specifies trade start time and trade stop time.

The Expert Advisor based on three moving averages and exit using Stop Loss or Take Profit. It sets up a market entry upon the conclusion of a trend on the trend reversal.

The Expert Advisor operating based on exponential and linear weighted moving averages of the same period.

The Expert Advisor operating based on the SAR and ADX indicators where the permitted trade direction is selected based on trade results.

The iClose_HTF indicator plots a zigzag based on closing prices of a time frame specified in the input parameters.

The simplest visual interpretation of a candlestick chart.

The MultiCurrency indicator allows you to concurrently analyze up to eight currency charts.

The CCI indicator smoothed using Tillson's algorithm.

The Expert Advisor based on the change in the 3rdGenXMA moving average direction.

Expert Advisor based on three moving averages and exit using Stop Loss or Take Profit. It sets up an entry with the trend.

The indicator shows the opening price of the senior time frame (e.g., 1-day time frame) and draws line indents to the opening price, thus forming a range.

The file selection graphical interface class.

The panel for the display of statistical parameters calculated based on the trade history.

Class for the calculation of the ENUM_STATISTICS enumeration parameters

The BidAskChannel indicator is designed to account for spread in the shadows of candles.

The Squize_MA indicator displays the intersection of two Moving Averages with different averaging periods. The chart also features conventional flat limits.

3rd Generation XMA is the 3rd generation moving average. This is an advanced version of the standard moving average indicator (МА) that follows a fairly simple procedure to reduce the time lag based on the increase in the moving average period.

The sine and tick indicator

The function that identifies extremums over a given period of history.

The Expert Advisor based on daily Pivot support.