Watch how to download trading robots for free
Find us on Telegram!
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 - 162


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.

Submit your code

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.

The trading system operating based on the bounce off the support/resistance levels of the Pivot indicator

The GMMA Long indicator converted into a histogram for a better visualization.

Twenty lines of the Spearman's Rank Correlation indicator in one window

Smoothed ATR that uses color to show whether the trend strengthens or weakens.

Graphical control for pixel drawing.

The MultiLineMovingAverage indicator shows levels of six moving averages for different time frames in the active chart window.

The classic version of the RVI indicator (Relative Vigor Index) that can be arranged so that the time frame of the indicator is fixed at a value different from the chart time frame. The indicator is displayed as a cloud.

The New Highs-New Lows index is calculated as the difference between the number of currency pairs that reached new highs over a given period and the number of currency pairs that reached new lows over a given period.

Multicolor modification of Fast ZigZag.