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


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

This indicator shows the "inner market structure" close to the real one in contrast to the standard "fractals" and all sorts of zig zags.

ZigZag indicator version displaying results of its calculations from the larger timeframe at the current one.

iGDR_Fractal_Levels shows the fractals average values over a certain period of time.

The indicator displays possible support and resistance lines as colored dots using Fibo levels.

The indicator that reminds of Ichimoku Kinko Hyo by its creation and usage principles.

The HLCrossSig for WPR is considered as a trend indicator, since it is intended for "catching" trends. However, it's a pretty complex and informative indicator that allows excluding the psychological and emotional influence from trading.

Moving average with calculation algorithm equivalent to the one of Ichimoku Kinko Hyo.

This indicator is based on WPR (Larry Williams' Percent Range) and its multiple signal lines analysis.

FractalLevels displays the channel based on fractals.

Non-linear regression with interpolation of a price chart future values.

Enhanced version of Larry Williams' Percent Range.

Channel trend indicator.

This indicator is based on RSI and its multiple signal lines analysis.

This indicator shows trend direction (Moving Average) and trading signals (Stochastic + Accelerator).

The grid consisting of DiNapoli levels and built using a larger timeframe chart. DiNapoliTargets indicator data is considered in the process of grid creation.

ZigZag indicator version with optimized calculation speed.

This indicator shows trend direction (RSI) and trading signals (Stochastic + Accelerator).

Enhanced version of the Stochastic oscillator.

The basis of the RBVI Forex indicator is an attribute of the night market to sharply decrease the volatility due to absence of active trading on exchanges. The indicator considers the price flow and the volatility (changeability) of the market what helps to successfully behave in a flat market. It is recommended to use RBVI in Expert Advisors that run in night time.

Trend Indicator. There are 10 possible variants of changing the averaging of the signal line in this indicator.

CDeMarkerOnArray class is designed for calculation of DeMarker values on indicator buffers.

Polarized Fractal Efficiency is a technical indicator that displays the current market prices efficiency.

The indicator creates areas of preferable stop-losses location for long and short positions at any time.

The CDemaOnArray class is intended for calculation of DEMA (Double Exponential Moving Average) on an indicator buffer.

This version of the DinapoliTargets_Full indicator is convenient with its capability to be draw for any bar of a chart, what allows seeing the whole picture of the market behavior relative to the indicator levels on each bar. Apparently this indicator can be most useful when analyzing a strategy in the offline mode.

The CTemaOnArray class is intended for calculation of TEMA (Triple Exponential Moving Average) on an indicator buffer.

The indicator draws a grid of possible future levels of price.

Trend indicator that sets color dots on a price chart according to a trend direction.

The indicator showing volatility breakout as a histogram and serving as a signal for market entry/exit/position reversal or position volume increasing.

Heiken_Ashi_Smoothed_HTF_Signal displays trend direction as a sequence of graphical objects, the trend is determined by Heiken_Ashi_Smoothed indicator.

The CFramaOnArray class is intended for calulcation of Fractal Adaptive Moving Average (FRAMA) on indicator buffers.

The COBVOnArray class is intended for calculation of OBV (On Balance Volume) on indicator buffers.

The CCHOOnArray class is intended for calculation of the Chaikin Volatility indicator (CHV) on indicator buffers.

The CFractalsOnArray class is intended for calculation of Fractals on indicator buffers.

The CTrixOnArray class is intended for calculation of Triple Exponential Average (TRIX) on an indicator buffer.

The CPriceChannelOnArray class is intended for calculation of the price channel on indicator buffers.

The CEnvelopesOnArray class is intended for calculation of Envelopes on an indicator buffer.

CVHFOnArray class is designed for calculation of Vertical Horizontal Filter (VHF) values on indicator buffers.

ZigZag based on the fractals of a larger timeframe considering VininI_FractalsTrend indicator data.

3D_Oscillator_Signal shows a trend direction or a signal for performing a deal generated by 3D_Oscillator as text messages with a trend color indication or deal direction and gives alerts or audio signals.