Join our fan page
Forget about BMP files like a bad dream. Thanks to this library, you can now use the PNG format, which has a number of advantages, such as being more compact without losing image quality and maintaining transparency.
Unfortunately, I discovered that some brokers are a bit sloppy with the server time change due to the daylight saving time (DST), which I did not expect and which surprised me a lot. Here is a script with which anyone can check their broker.
A set of classes for automatic moving of StopLoss of open positions by fixed indentation or by values of Parabolic SAR and moving averages indicators, or by specified position stop level.
A system to test up to four indicators concurrently in the strategy tester
The Playground EA series was created for experimentation with Fair Value Gaps (FVGs) and liquidity concepts
RiskSizer Panel Lite is a simple MT5 trading panel that calculates an estimated lot size based on your risk percent. Drag two chart lines to set SL/TP, then use one-click BUY/SELL for fast manual execution.
Draws colored range boxes for the Asian, London, and New York sessions on any chart. Includes a stats panel showing average session ranges in pips and optional breakout alerts when price exits a session box.
This EA serves as a template for traders interested in automating strategies in MT5. It implements a Moving Average crossover system and can be used as-is or customized by adjusting its settings. The free source code is designed to be easily modified for adding new indicators, logic, and trading features.
A professional intermarket analysis tool. It overlays the USD Index (DXY) on any chart to identify SMT Divergences and institutional correlation shifts in real-time.
Chart Water Mark Transform your MetaTrader 5 charts to look as elegant and professional as TradingView.
Quantora Symbol Information Panel MT5 - Professional Trading Specifications Dashboard
Professional open-source Multi-Timeframe MACD Dashboard for MetaTrader 5. Analyzes MACD Main, Signal and Histogram across M1, M5, M15, M30, H1, H4 and D1 with an overall momentum score and market bias.
Professional open-source Moving Average Dashboard for MetaTrader 5. Monitors EMA 20, EMA 50, EMA 100, EMA 200, SMA 50 and SMA 200 with price position, trend structure, MA Score and overall market bias.
Professional open-source Candle Strength Analyzer for MetaTrader 5. Analyzes candle body, upper and lower wicks, buyer/seller pressure, rejection, range expansion and candle strength in real time.
Automatically detects swing pivots and labels a rule-validated Elliott Wave count (1-2-3-4-5 impulse and A-B-C correction) directly on the chart, with a Fibonacci info panel. For guidance only, always confirm manually.
Marks the start/end of up to three trading sessions (Asian, London, New York, or any custom windows) with vertical separators and/or shaded background boxes, repeated daily across a rolling recent window. Purely visual — no calculations, no signals, just clean session boundaries.
SwiftDraw Starter is a lightweight charting utility designed to make technical analysis faster and more efficient. Use customizable hotkeys to instantly create and manage essential chart objects such as trendlines, Fibonacci retracements, Supply & Demand zones, arrows and key price levels — with fewer clicks and less time spent navigating MT5 menus.
Four EAs on the same symbol, each one honest on its own: each checks "do I have a position?" with its own magic number, sees none, and enters. On a demo account this reached 22 contracts on a symbol meant to carry 1, and a watchdog had to close 16 positions in one morning. The cap belongs at the door, not after the fact. ExposureCap::Allowed(symbol, lots, cap) sums the volume of every open position on the symbol - all magic numbers, manual trades included - and refuses the order BEFORE it is sent when it would breach the cap. One log line with the three numbers (held, requested, cap) says why. Deliberately simple: gross exposure, no netting of longs against shorts, no per-EA quota. It is a check, not a lock: two EAs deciding on the same tick can both pass; in practice EAs on different charts decide on different ticks. The demo script prints held / cap / room for the current symbol and shows the refusal line. Nothing is traded.
Your statement tells you what you KEPT. It does not tell you what you HAD. This indicator reads your own closed trades from the account history and draws, for each one, the full range it travelled: the best unrealised profit it ever showed (MFE) and the worst unrealised loss it survived (MAE). The gap between what a trade showed and what it paid is where two common problems hide, and neither is visible in a balance curve: winners closing far below their best point (the exit leaves money behind), and losers whose worst excursion barely passed the stop (the stop sits inside the noise). The number to look at is the CAPTURE RATIO: of the profit a winner showed at its best, how much did you take home? 90% says the exits are well placed; 30% says the market kept offering and the exit kept refusing. Limit, stated up front: excursions come from the bars each trade spanned, on the chart timeframe; the path inside a bar is unknown. Predicts nothing; measures trades that already happened.
Exports one CSV line per closed trade with the numbers a statement does not carry: the best unrealised profit the trade showed (MFE), the worst unrealised loss it survived (MAE), how much of the MFE was actually kept, how many bars it spanned, and how long it was held. Same measurement as the Trade Excursion indicator, written to a file instead of drawn, because the questions worth asking of this data are ones a chart cannot answer: does the capture ratio depend on the hour of entry? Are the trades I close early the ones I hold longest? Do losers on Mondays reach a different MAE than on Fridays? Those are one pivot table away once the CSV exists. Output is semicolon separated with a header row, in MQL5\Files; opens in any spreadsheet. Measurement limit: excursions come from bar highs and lows on the chosen timeframe; the path inside a bar is unknown. The bars column reports the resolution each trade got, and the summary counts single-bar trades separately instead of averaging them in.
Opens a virtual bracketed trade on every M1 bar, walks it forward on the real tick history, and reports for a sweep of stop distances how often 1-minute OHLC modelling would score the trade the wrong way round.
A liquidity-sweep / order-block scalper with ATR-based sizing and a higher-timeframe trend filter. Every trade is tagged on the chart with the live historical win rate of that setup type — a running scorecard, not just boxes.
Calculate DST for USA, EUR, AUD and RUB and the offset time of the broker automatically from the 70's until 2030 - even in the Strategy Tester of MQ.
The final seventh part of the book discusses the advanced capabilities of the MQL5 API, which will be useful when developing programs for MetaTrader 5. These include custom financial symbols, built-in economic calendar events, and general-purpose technologies such as networking, databases, and cryptography.
This indicator displays current events on the chart and allows you to export the calendar to archives for backtesting, automatically fixing time discrepancies between the history of bars and the history of events. This is an improved version of CalendarMonitorCached indicator from the algotrading book.
The SuperTrend Indicator is a dynamic trend-following tool based on ATR. It plots a colored line above or below price to indicate bullish or bearish conditions. When the price crosses the line, a signal arrow appears. Fully customizable with ATR period, multiplier, arrows, labels, and colors. Suitable for all instruments and timeframes. Ideal for scalping, swing, and intraday trading. Combine it with other indicators for stronger setups.
In Part 5 of the book, we'll delve deeper into the APIs associated with algorithmic trading, including financial data analysis and processing, chart visualization, automation, and user interactions.
The indicator searches the chart for Price Action patterns "Pin Bar" and puts icons on the bar with the found pattern.
This is an OHLC candlestick chart which records the highest ask and lowest bid on each new bar
An advanced, institutional-grade trend-following engine using Z-Score adaptive volatility, smart money volume filters, and a real-time MTF dashboard.
Part 2 "MQL5 programming fundamentals" is an introduction to the key concepts of this programming language. This part of the book is devoted to data types, identifiers, variables, expressions, and operators. You will learn how to combine different instructions to form the program logic.