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

icon

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
latest | best

When I start learning about trading, I remember the trading pioneer Shawn Lucas (founder of Apiary-fund) saying "trading is simple, you go from bound range market to breakout market and vice versa". I looked at few charts and he was right. So I told myself, I have to always eyeball ranging market and trending market but with the help of an indicator. There are plenty for indicator that help us eyeball these ranging/trending market and they work really well, but I like using Pivot Points.

This script opens randomly selected charts and applies user-defined template.

Provide an interface for creating families of related or dependent objects without specifying their concrete classes.

I want to share with you this story. When I started trading, I learnt the scalping strategy in a volatile market. I really loved scalping especially when I see the price is moving fast. However, scalping for a long period of time is exhausting to me especially in a volatile market; volatile market requires fast analysis, actions and reactions; that is why I always reach a point that I loss concentration, focus and I start making those really stupid mistakes. That is why I created this indicator that helped me to automatically identify these potential entries (based on the formation of candlesticks) instead of doing all the work myself. I know there are plenty of Metatraders who also suffer from this and that is why I would like to share this indicator with you, hopefully it will be beneficial. Do not forget to send you comments as well as rate these scripts. Happy trading!

Modeling multiple inheritance with the Twin pattern.

short-term forex strategy for beginners.

I used to suffer from unnecessary losses and/or cutting my profit short since I wasn't fast enough to modify my SL and/or TP. That is why I've wrote these scripts that will allow me to react fast when I must modify my Sl and/or TP especially when I have many open and/or pending trades. I know there are plenty of Metatraders who also suffer from this and that is why I would like to share these scripts with you, hopefully it will be beneficial. Do not forget to send you comments as well as rate these scripts. Happy trading!

Provide a unified interface to a set of interfaces in a subsystem.

Simple script to see your current Profit Losses in Pips.

Compose objects into tree structures to represent part-whole hierarchies.

This script highlights Forex sessions for Sydney, Tokyo, London and New York with colored rectangles, according to the user time definitions.

Calculates the phase and amplitude of the expected wave

this is my first try at creating an EA from ground up - update 4

A basic container for storing an ordered list of basic data type objects.

A basic container for storing an ordered list of objects.

M1-based Moving Average. It gives more adequate estimation of average price per bar compared to any standard price type (close, open, median, typical, weighted, etc).

This MT5 indicator is to count down the remaining time of the current bar as the format HH:MM:SS

Frequent array operation methods.

Class for comparing two floating point variables.

Indicator WaveMTF Bull and Bear System with Signal and Alert for MetaTrader 5 with options to display signal on the chart.

Basket Closer Type EA.

Correlation market state

Correlation phasor

Correlation angle

Sets of latin, russian characters, digits, punctuation, etc.

Calculates a Exponential Moving Average based on RSI Data, instead of the regular Pricing data. Simple and and to the point.

How to minimize bool parameters in a function signature?

This script opens all market watch symbols with the default template using the selected period. Save prefferred template as default.tpl to have all charts open with same template of your choice. Happy Trading.

This a library for a quick and easy encryption and decryption using base64. The usage is very simple and can be done in a few lines of code. <<< The return value of a method is the required output. <<< Feel free to use this library at your convenience.If it is helpful, please reward me by rating this item on mql5 site. >>From a developer, for developers.<<

Sets of latin, russian characters, digits, punctuation, etc.

This is MQL5 version of Shved Supply and Demand written by Shved and upgraded by eevviill7 with history mode.

Placing pending orders with no need to calculate lot size. Script calculates the proper lot size and opens the pending order(s) for you.

Trade with no need to calculate lot size! This script calculates the proper lot size and opens the position(s) for you.

This Multicurrency EA is based on Currency Strength Indicator.

Have you ever wondered how to safely return automatic objects with functions without memory leaks?

Multi time frame signal

Detect lenght of candlestick

It's a two (2) pairs correlation system to use 3 currencies to make 2 pairs to open hedge orders on those. The expert starts opening four orders for each couple (2 plus and 2 minus) and wait to move prices in one direction to make a grid of orders. For more information, please read the MT4 version of the expert: https://www.mql5.com/en/market/product/34112

It's a triangular arbitrage system (three pairs correlation system) to use 3 currencies to make 3 pairs to open hedge orders on those. The expert starts opening six orders for each ring (3 plus and 3 minus) and wait to move prices in one direction to make a grid of orders. For more information, please read the MT4 version of the expert: https://www.mql5.com/en/market/product/33814

The VR Sync Chart Lite indicator is written for demonstration purposes and shows how it is possible to synchronize the object

12345678910111213141516...176