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 - 5

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.


ZeroLagMACD is an MACD version, which has a much smaller lag compared to the classic MACD.

Zero Lag is a modified EMA.

The WI oscillator indicator.

VMA is a volatility based dynamic MA.

Square Weighted Moving Average.

RWI (Random Walk Index)

Median MA is a moving average, which is calculated using the median price for a given period.

A moving average drawn as candlesticks on a chart.

Logarithmic regression channel.

Kurtosis is an indicator of market sentiment.

The indicator searches for a sequence of candlesticks on a chart and marks bullish and bearish sequences.

The Difference indicator shows the difference between the current prices and prices as of N periods ago.

A polynomial regression channel.

Wilson Relative Price Channel.

Classic MACD based on Adaptive Moving Average.

The Asymmetric Trend Pressure indicator shows the trend direction and strength line. It can additionally show the bullish and bearish components of the trend.

The Advance Trend Pressure oscillator shows the trend direction and strength line. It can additionally show the bullish and bearish components of the trend.

The indicator displays a Moving Average with bullish and bearish areas.

A modification of the "Custom Moving Average" indicator: now the line color can be passed in input parameters.

Increased accuracy of the standard timer.

The ZScore indicator shows relative price deviation from its average value.

Standard RSI on the price chart.

An Alligator based on the VAMA indicator.

A simple Moving Average of volumes.

The indicator shows Simple Moving Averages from two timeframes.

The indicator draws the Keltner channel in the form of a cloud.

An Expert Advisor based on the "Fractals at Close prices" indicator.

The Keltner channel with customizable calculation parameters.

The VR Alert NT5 indicator warns the trader about the price reaching a specified level.

A modification of standard fractals: only Close prices are used for calculations.

The Expert Advisor is based on the channel indicator Price_Extreme_Indicator.

The indicator shows the price increment of eight symbols in one window.

The indicator draws a channel of a trading day in the form of a cloud.

Dynamic Moving Average.

The indicator draws a channel based on the value of the breakout of channel levels.

The indicator draws the Donchian channel.

The indicator draws the opening price of the day. It works on timeframes up to H1.

The indicator calculates the ATR value based on the minimum price differences of the current and previous day, taking into account the volume of the current day.

The indicator allows displaying on a chart eight Moving Averages with the same averaging methods and calculation prices, but with different periods.

The indicator draws a channel at candlestick extreme prices.