A diagnostic Expert Advisor for MetaTrader 5 has been released as a non-trading utility focused on runtime environment auditing. After being attached to a chart, it collects broker and terminal specifications and presents them via an on-chart panel with live updates, the terminal Experts log, and an exported CSV stored under MQL5/Files.
Captured data is grouped by operational category. Time zone metrics calculate broker server time, local PC time, and the precise offset versus UTC. Trading cost fields include swap calculation method, long and short swap values per 1 lot in account currency, and current spread.
Symbol rules cover digits, contract size, min/max/step volume, Stop Levels, and Freeze Level. Execution and connectivity reporting includes ping latency, connection state, supported filling modes (FOK, IOC), and margin calculation method. Account deta...
π Read | AlgoBook | @mql5dev
Captured data is grouped by operational category. Time zone metrics calculate broker server time, local PC time, and the precise offset versus UTC. Trading cost fields include swap calculation method, long and short swap values per 1 lot in account currency, and current spread.
Symbol rules cover digits, contract size, min/max/step volume, Stop Levels, and Freeze Level. Execution and connectivity reporting includes ping latency, connection state, supported filling modes (FOK, IOC), and margin calculation method. Account deta...
π Read | AlgoBook | @mql5dev
π15β€12π₯5π€©5
RiskPilot Pro reduces trade setup friction by keeping entry, stop loss, and take profit as draggable chart objects. Position size is recalculated on mouse release, using a fixed risk percentage of account balance rather than a fixed lot size, keeping exposure consistent across different stop distances.
Cross-pair sizing is handled via broker-provided currency conversion instead of assuming the account currency matches the symbol profit currency, improving accuracy on pairs such as USDCHF and USDJPY.
Functions include one-click order placement, ATR-based RESET for volatility stops, optional break-even and trailing stop automation, and account-level guards. Daily loss and max-drawdown limits can close tool-opened positions and block new trades until the next day. A basket-risk readout shows projected combined exposure before adding another position.
π Read | AlgoBook | @mql5dev
Cross-pair sizing is handled via broker-provided currency conversion instead of assuming the account currency matches the symbol profit currency, improving accuracy on pairs such as USDCHF and USDJPY.
Functions include one-click order placement, ATR-based RESET for volatility stops, optional break-even and trailing stop automation, and account-level guards. Daily loss and max-drawdown limits can close tool-opened positions and block new trades until the next day. A basket-risk readout shows projected combined exposure before adding another position.
π Read | AlgoBook | @mql5dev
β€11π11π₯5π€©5
SMC Liquidity Sweep Scalper is an EA for MetaTrader built around liquidity sweeps: price wicks beyond a recent swing high/low, then closes back through the level. The sweep candle is treated as an order block, and entry is taken only after a configurable confirmation break of structure through that zone.
Swing levels are tracked using closed bars to avoid repainting. Risk is managed with SL beyond the sweep extreme and TP set by fixed R:R, sized by risk % of balance. Parameters are normalized with ATR so the same configuration behaves consistently across symbols.
A higher-timeframe EMA trend filter can restrict trades to the broader bias. Additional gates reject weak setups based on ATR, spread, and confirmation momentum. The EA also maintains an on-chart scorecard: each setup is labeled with its own historical win rate and updated to WIN/LOSS after close.
...
π Read | VPS | @mql5dev
Swing levels are tracked using closed bars to avoid repainting. Risk is managed with SL beyond the sweep extreme and TP set by fixed R:R, sized by risk % of balance. Parameters are normalized with ATR so the same configuration behaves consistently across symbols.
A higher-timeframe EMA trend filter can restrict trades to the broader bias. Additional gates reject weak setups based on ATR, spread, and confirmation momentum. The EA also maintains an on-chart scorecard: each setup is labeled with its own historical win rate and updated to WIN/LOSS after close.
...
π Read | VPS | @mql5dev
π13β€10π2π¨βπ»2
S.M.A.R.T. ICT/SMC V3.0 Session Manipulation & Algorithmic Reaction Tracker is a free MT5 analytical indicator that scans three configurable symbols (defaults: EURUSD, GBPUSD, USDJPY). Internal analysis is M5 by default, while the indicator can run on any chart timeframe. All logic is based on closed bars and it never opens, modifies, or closes positions.
Validation is a strict sequence: sweep of a completed Asia or London range, close through a pre-sweep swing to form an MSS, minimum displacement on the MSS candle, a three-candle directional FVG, then a later bar retest that closes beyond the FVG midpoint. Breaching the frozen sweep extreme after MSS invalidates the sequence.
A Quality Score (80β100) is produced only after completion and represents confluence within this model, not win probability. Projections define entry at the FVG-retest close, S...
π Read | Calendar | @mql5dev
Validation is a strict sequence: sweep of a completed Asia or London range, close through a pre-sweep swing to form an MSS, minimum displacement on the MSS candle, a three-candle directional FVG, then a later bar retest that closes beyond the FVG midpoint. Breaching the frozen sweep extreme after MSS invalidates the sequence.
A Quality Score (80β100) is produced only after completion and represents confluence within this model, not win probability. Projections define entry at the FVG-retest close, S...
π Read | Calendar | @mql5dev
β€17π6π2π2β1π€©1
MetaTrader 5 can run ONNX models, but treats them as opaque binaries, making it hard to validate inputs, outputs, and saved weights when predictions look wrong. The article solves this by decoding ONNX directly inside MT5 with pure MQL5, avoiding external libraries.
It builds a two-layer approach: a Protocol Buffers wire reader that can parse varints, fixed-width values, and length-prefixed blocks, plus an ONNX-aware parser that reconstructs the computation graph by matching shared tensor names between node outputs and inputs.
A Python script generates a known test model with branches, mixed tensor storage formats, and type conversions, then Netron provides ground truth. The MQL5 tool can list nodes, operators, connections, and inspect weight tensor shapes, types, and ranges before risking live trades.
π Read | AlgoBook | @mql5dev
It builds a two-layer approach: a Protocol Buffers wire reader that can parse varints, fixed-width values, and length-prefixed blocks, plus an ONNX-aware parser that reconstructs the computation graph by matching shared tensor names between node outputs and inputs.
A Python script generates a known test model with branches, mixed tensor storage formats, and type conversions, then Netron provides ground truth. The MQL5 tool can list nodes, operators, connections, and inspect weight tensor shapes, types, and ranges before risking live trades.
π Read | AlgoBook | @mql5dev
β€14π8
VSA_Candles.mq5 adds native candlestick bar coloring on the main chart using volume confirmation. Green marks confirmed strength signals (Down Thrust/Spring, Selling Climax, Bag Holder, No Supply). Red marks confirmed weakness signals (Up Thrust, Buying Climax, Bag Seller, No Demand). Blue highlights dojis and spinning tops for balance zones. Yellow flags classic price-action shapes without volume extremes.
A SAR-style dot trail provides a dynamic trend/stop overlay that flips and tightens based on buy/sell exhaustion. Closed-bar hover tooltips show bar time, volume vs MA multiplier, spread, and expected reaction. A left-side on-chart glossary lists pattern short and full names.
VSA_Glossary.mq5 adds a dual-direction subwindow: upward color-graded volume columns with high/ultra background clouds, and inverted spread bars with auto-scaling fill. Zero-...
π Read | NeuroBook | @mql5dev
A SAR-style dot trail provides a dynamic trend/stop overlay that flips and tightens based on buy/sell exhaustion. Closed-bar hover tooltips show bar time, volume vs MA multiplier, spread, and expected reaction. A left-side on-chart glossary lists pattern short and full names.
VSA_Glossary.mq5 adds a dual-direction subwindow: upward color-graded volume columns with high/ultra background clouds, and inverted spread bars with auto-scaling fill. Zero-...
π Read | NeuroBook | @mql5dev
β€16π12π¨βπ»3β1π₯1π1
Setup requires compiling the source and attaching the EA to a clean chart with no indicators or objects. Operation is intended for live charts only, not Strategy Tester. Configure historical start time, session duration, and Renko brick size in price units. Use LOAD, then PLAY or NEXT BRICK. Submit BUY or SELL and advance the replay to execute a virtual entry. END closes the session, NEW starts a fresh run, and EXPORT writes the current summary.
With start set to zero, the default anchor is 09:00 on the previous weekday in broker server time, with a six-hour duration. The interval must be fully historical with broker tick data available. The panel reports balance, equity, max drawdown, closed trades, win rate, profit factor, and R results. CSV trades and summaries are saved to MQL5/Files/GDS_Renko_Trainer.
Limits include one symbol, one virtual position, and f...
π Read | Quotes | @mql5dev
With start set to zero, the default anchor is 09:00 on the previous weekday in broker server time, with a six-hour duration. The interval must be fully historical with broker tick data available. The panel reports balance, equity, max drawdown, closed trades, win rate, profit factor, and R results. CSV trades and summaries are saved to MQL5/Files/GDS_Renko_Trainer.
Limits include one symbol, one virtual position, and f...
π Read | Quotes | @mql5dev
β€11π6π₯1π€©1
SSCNN targets noisy, unstable market time series by working with segments instead of single points, after decomposing data into trend, seasonality, short-term moves, and residual noise. Forecasts are built by aggregating specialized models per component, improving interpretability.
This part focuses on AttnNorm: attention-weighted normalization that learns where to focus inside each segment, stabilizing mean/variance estimates during spikes. The implementation emphasizes GPU execution via OpenCL kernels, with careful CPUβGPU buffer setup, kernel parameterization, synchronization, and data integrity checks.
Two MT5/OpenCL layer objects are detailed. CNeuronAttentNorm computes trainable attention weights, normalizes them with SoftMax, then runs AttentNorm and AttentNormGrad kernels for forward/backward passes, delegating weight updates to the attention modul...
π Read | NeuroBook | @mql5dev
This part focuses on AttnNorm: attention-weighted normalization that learns where to focus inside each segment, stabilizing mean/variance estimates during spikes. The implementation emphasizes GPU execution via OpenCL kernels, with careful CPUβGPU buffer setup, kernel parameterization, synchronization, and data integrity checks.
Two MT5/OpenCL layer objects are detailed. CNeuronAttentNorm computes trainable attention weights, normalizes them with SoftMax, then runs AttentNorm and AttentNormGrad kernels for forward/backward passes, delegating weight updates to the attention modul...
π Read | NeuroBook | @mql5dev
β€14π9
CRiskCalculator is an object-oriented MQL5 header library for risk management and volume sizing in EAs and trading utilities. It computes monetary pip value and lot size from a defined cash risk and Stop Loss distance in pips.
Position sizing on cross-currency symbols is handled with a dual-engine approach. The primary path uses terminal symbol properties such as SYMBOL_TRADE_TICK_VALUE and SYMBOL_TRADE_TICK_SIZE. When broker data is missing or uninitialized, it switches to manual base/quote parsing with conversion-rate queries to produce account-currency results.
Volume output is normalized to broker constraints by clamping to SYMBOL_VOLUME_MIN and SYMBOL_VOLUME_MAX and snapping to SYMBOL_VOLUME_STEP to reduce invalid volume rejections.
The class is encapsulated as CRiskCalculator, avoids global scope noise, and auto-detects ACCOUNT_CURRENCY on initializa...
π Read | Freelance | @mql5dev
Position sizing on cross-currency symbols is handled with a dual-engine approach. The primary path uses terminal symbol properties such as SYMBOL_TRADE_TICK_VALUE and SYMBOL_TRADE_TICK_SIZE. When broker data is missing or uninitialized, it switches to manual base/quote parsing with conversion-rate queries to produce account-currency results.
Volume output is normalized to broker constraints by clamping to SYMBOL_VOLUME_MIN and SYMBOL_VOLUME_MAX and snapping to SYMBOL_VOLUME_STEP to reduce invalid volume rejections.
The class is encapsulated as CRiskCalculator, avoids global scope noise, and auto-detects ACCOUNT_CURRENCY on initializa...
π Read | Freelance | @mql5dev
β€5π5
Finite Volume Elements (FVE) refines classic volume analysis by weighting volume with price location inside the bar and typical-price change, then applying a CutOff threshold to ignore small fluctuations. The result is a cleaner read of accumulation vs distribution, with support for both real and tick volume in MetaTrader 5.
An extended variant, FinVolEleLinRegSl, adds linear-regression slopes for both FVE and Close, making it easier to spot when price and volume momentum align or diverge. This turns FVE from a static pressure gauge into a tool for tracking acceleration, weakening trends, and early divergence cues.
The article also shows a practical EA integration: classify each slope line as rising, falling, or turning, combine both into a discrete βstate,β and use that state as a direction filter for existing signals (e.g., WPR + Bollinger), ignori...
π Read | VPS | @mql5dev
An extended variant, FinVolEleLinRegSl, adds linear-regression slopes for both FVE and Close, making it easier to spot when price and volume momentum align or diverge. This turns FVE from a static pressure gauge into a tool for tracking acceleration, weakening trends, and early divergence cues.
The article also shows a practical EA integration: classify each slope line as rising, falling, or turning, combine both into a discrete βstate,β and use that state as a direction filter for existing signals (e.g., WPR + Bollinger), ignori...
π Read | VPS | @mql5dev
β€11π5π₯1π¨βπ»1
Cricket Algorithm (CA) is a 2015 metaheuristic by Canayaz and Karci, combining update mechanics from Bat Algorithm, global-best guidance from PSO, and pairwise attraction from Firefly. Agent interaction is computed via acoustic propagation and atmospheric absorption, with chirp rate mapped to temperature using Dolbearβs law.
Each iteration samples chirps N, derives temperature and speed of sound, then sets frequency from distance to global best. Velocity/position updates add a sound-speed term, then a strategy switch uses an absorption-derived coefficient: either sequential attraction toward all better agents with decaying noise alpha, or a local random walk around the best.
Implementation notes highlight normalization of distance, speed, frequency, and absorption to keep values bounded. A class design uses a per-agent velocity structure, parameter...
π Read | AlgoBook | @mql5dev
Each iteration samples chirps N, derives temperature and speed of sound, then sets frequency from distance to global best. Velocity/position updates add a sound-speed term, then a strategy switch uses an absorption-derived coefficient: either sequential attraction toward all better agents with decaying noise alpha, or a local random walk around the best.
Implementation notes highlight normalization of distance, speed, frequency, and absorption to keep values bounded. A class design uses a per-agent velocity structure, parameter...
π Read | AlgoBook | @mql5dev
β€27π5π₯1π€©1π1
This article finalizes an SSCNN-based market forecaster by assembling previously built modules into a single MQL5/OpenCL Encoder designed for noisy, regime-shifting price series.
The Encoder splits input into four parallel branches: long-term trend, seasonality (phase-aligned via cycle transposition), short-term dynamics, and cross-feature βspatialβ structure. Each branch applies normalization (including attention-based normalization where useful), then extrapolates both residuals and their statistics into the forecast horizon.
Several engineering choices stand out: replacing a trainable extrapolation matrix with a linear convolution for shared weights and GPU efficiency; using tensor transposition to separate mean/variance streams without copying; zeroing gradient buffers to avoid variance-gradient contamination; and generating horizon-wide mean ...
π Read | NeuroBook | @mql5dev
The Encoder splits input into four parallel branches: long-term trend, seasonality (phase-aligned via cycle transposition), short-term dynamics, and cross-feature βspatialβ structure. Each branch applies normalization (including attention-based normalization where useful), then extrapolates both residuals and their statistics into the forecast horizon.
Several engineering choices stand out: replacing a trainable extrapolation matrix with a linear convolution for shared weights and GPU efficiency; using tensor transposition to separate mean/variance streams without copying; zeroing gradient buffers to avoid variance-gradient contamination; and generating horizon-wide mean ...
π Read | NeuroBook | @mql5dev
β€11π5π₯2π1
PropFirm account monitoring EAs often fail in three areas: inputs get reset across restarts, identical logins on different servers cause rule collisions, and invalid percentages or threshold ordering reach drawdown math.
Part 1 establishes a strict foundation before any compliance logic runs. Runtime account state is separated from persistent rule configuration, inputs are validated during OnInit with fail-fast errors, and SQLite persistence is keyed by account login plus trading server.
Implementation covers the EA lifecycle, shared enumerations, grouped Inputs, SAccountState and SAccountSettings, UpdateAccountState(), and ValidateComplianceInputs(). It then adds database globals, OpenDatabase()/CloseDatabase(), schema creation with a composite primary key, and prepared-statement helpers.
Startup order becomes: validate, read account identity, open DB, ensu...
π Read | NeuroBook | @mql5dev
Part 1 establishes a strict foundation before any compliance logic runs. Runtime account state is separated from persistent rule configuration, inputs are validated during OnInit with fail-fast errors, and SQLite persistence is keyed by account login plus trading server.
Implementation covers the EA lifecycle, shared enumerations, grouped Inputs, SAccountState and SAccountSettings, UpdateAccountState(), and ValidateComplianceInputs(). It then adds database globals, OpenDatabase()/CloseDatabase(), schema creation with a composite primary key, and prepared-statement helpers.
Startup order becomes: validate, read account identity, open DB, ensu...
π Read | NeuroBook | @mql5dev
β€5π2π€‘1