Media is too big
VIEW IN TELEGRAM
With Model Context Protocol (MCP), AI can work directly with MetaTrader 5 data and tools β turning the built-in AI Assistant into an agent capable of handling complex, multi-step tasks.
Analyze markets and trading history, review open positions, work with charts, test and optimize Expert Advisors, and perform supported trading operations β all through natural-language instructions.
Instead of manually collecting data and switching between tools, simply describe what you want to achieve and let the AI Assistant coordinate the necessary steps.
Watch the video to see how MCP works in MetaTrader 5 and explore practical AI workflows for trading, analysis, and algorithmic development.
Discuss the video:
π MQL5.community for traders
π MetaQuotes official YouTube channel
Analyze markets and trading history, review open positions, work with charts, test and optimize Expert Advisors, and perform supported trading operations β all through natural-language instructions.
Instead of manually collecting data and switching between tools, simply describe what you want to achieve and let the AI Assistant coordinate the necessary steps.
Watch the video to see how MCP works in MetaTrader 5 and explore practical AI workflows for trading, analysis, and algorithmic development.
Discuss the video:
π MQL5.community for traders
π MetaQuotes official YouTube channel
β€28π4π₯4π€©4π€1π1π1
Running one strategy across multiple symbols and hours creates separate variants, and account-level metrics can hide where performance differs. A dashboard script addresses this by grouping closed deals by symbol and UTC closing hour, then computing win rate and payoff-based edge ratio per cell.
The pipeline reduces each deal to symbol, close-hour, and net profit, aggregates into symbol-hour cells, and renders two CCanvas heatmaps: win rate and edge ratio. Undefined ratios (all wins or all losses) are explicitly flagged and shown as neutral cells, not zero.
Breakeven deals count toward volume but are excluded from win/loss buckets to avoid ratio distortion and divide-by-zero. An Experts-tab table lists best and worst symbol-hour combinations by win rate with minimum-trade filtering. Limitations include linear scans, fixed color boundaries, server-time a...
π Read | AppStore | @mql5dev
The pipeline reduces each deal to symbol, close-hour, and net profit, aggregates into symbol-hour cells, and renders two CCanvas heatmaps: win rate and edge ratio. Undefined ratios (all wins or all losses) are explicitly flagged and shown as neutral cells, not zero.
Breakeven deals count toward volume but are excluded from win/loss buckets to avoid ratio distortion and divide-by-zero. An Experts-tab table lists best and worst symbol-hour combinations by win rate with minimum-trade filtering. Limitations include linear scans, fixed color boundaries, server-time a...
π Read | AppStore | @mql5dev
β€17π6π€©2π2π2β‘1π₯1
Adaptive EA design using random graph theory instead of a fixed market map.
A state-transition network encodes each closed bar via EMA spread/ATR, ATR regime, and optional RSI buckets, producing 45 states. Transitions update a decayed, Laplace-smoothed Markov matrix. A k-step matrix power yields the distribution k bars ahead, converted into a bounded directional expectation plus an entropy-based confidence gate.
A second outcome graph manages exits as an R-multiple random walk across milestones. Smoothed survival probabilities trigger closes when the next hop becomes unlikely.
A structural filter binarizes edges above a uniform baseline, measures clustering, then compares it to an ErdosβRenyi G(n,p) null via z-score. Near-zero separation is treated as a βstay flatβ condition.
π Read | AppStore | @mql5dev
A state-transition network encodes each closed bar via EMA spread/ATR, ATR regime, and optional RSI buckets, producing 45 states. Transitions update a decayed, Laplace-smoothed Markov matrix. A k-step matrix power yields the distribution k bars ahead, converted into a bounded directional expectation plus an entropy-based confidence gate.
A second outcome graph manages exits as an R-multiple random walk across milestones. Smoothed survival probabilities trigger closes when the next hop becomes unlikely.
A structural filter binarizes edges above a uniform baseline, measures clustering, then compares it to an ErdosβRenyi G(n,p) null via z-score. Near-zero separation is treated as a βstay flatβ condition.
π Read | AppStore | @mql5dev
β€19π5π₯4β‘2π€©2π2π1
Markov chains offer a practical way to model market uncertainty by turning price behavior into discrete states and estimating transition probabilities between them. The key constraint is βmemorylessnessβ: forecasts depend only on the current state, which can still work well for changing, nonstationary conditions.
The article shows two implementations: a simple 3-state regime model (down/flat/up) using a transition matrix, and a richer chain built from price differences bucketed into multiple states. Forecasts can be generated step-by-step via vectorβmatrix multiplication, with accuracy degrading as multi-step probabilities flatten.
It also extends beyond forecasting: a 2-state win/loss chain updates in real time to adjust expected value and win probability after each trade, enabling adaptive position sizing and risk-aware scenario planning in MT5 s...
π Read | Freelance | @mql5dev
The article shows two implementations: a simple 3-state regime model (down/flat/up) using a transition matrix, and a richer chain built from price differences bucketed into multiple states. Forecasts can be generated step-by-step via vectorβmatrix multiplication, with accuracy degrading as multi-step probabilities flatten.
It also extends beyond forecasting: a 2-state win/loss chain updates in real time to adjust expected value and win probability after each trade, enabling adaptive position sizing and risk-aware scenario planning in MT5 s...
π Read | Freelance | @mql5dev
β€16π₯9π€©4π2π1
MetaTrader 5 Build 6060 adds an AI Assistant plus MCP support as a native natural-language access layer for development, debugging, chart interaction, testing, and permission-controlled terminal actions. This reduces reliance on WebRequest, local middleware, external APIs, JSON parsing, and related credential and lifecycle management.
MCP changes the integration path, not MQL5 responsibilities. The assistant can generate and review code, but a compiled EA still enforces deterministic signal, risk, execution, and logging rules. Trading permissions remain bounded by terminal AI/MCP settings and separate EA-level switches.
A reference EA, MCP_Accessibility_Assistant.mq5, is built around explicit state output (BUY SETUP, SELL SETUP, WAIT, DATA ERROR), confirmation gating, and audit logging. It uses closed-bar EMA crossover signals, ATR-based stops, reward-to...
π Read | VPS | @mql5dev
MCP changes the integration path, not MQL5 responsibilities. The assistant can generate and review code, but a compiled EA still enforces deterministic signal, risk, execution, and logging rules. Trading permissions remain bounded by terminal AI/MCP settings and separate EA-level switches.
A reference EA, MCP_Accessibility_Assistant.mq5, is built around explicit state output (BUY SETUP, SELL SETUP, WAIT, DATA ERROR), confirmation gating, and audit logging. It uses closed-bar EMA crossover signals, ATR-based stops, reward-to...
π Read | VPS | @mql5dev
β€27π8π₯7π¨βπ»4π€©3π1π1
Many EAs persist state in terminal global variables (balances, locks, heartbeats, last trade times). Over time this builds up, while the F3 viewer remains unsorted, unfiltered, and provides no backup. After a restart, diagnosing unexpected behavior often depends on identifying which variable was read.
Global Variable Inspector addresses this with snapshot-based inspection. It filters and sorts variables by name, then prints name, value, last access time, and age to the Experts journal. Whole-number values between years 2000β2100 are additionally rendered as dates to expose timestamp usage. Snapshots can also be exported to CSV, deleted with a mandatory backup step, or restored later via import.
Notable behavior: reading a variable updates its access time and extends expiry. The script avoids refreshing non-matching entries by collecting names and access times...
π Read | VPS | @mql5dev
Global Variable Inspector addresses this with snapshot-based inspection. It filters and sorts variables by name, then prints name, value, last access time, and age to the Experts journal. Whole-number values between years 2000β2100 are additionally rendered as dates to expose timestamp usage. Snapshots can also be exported to CSV, deleted with a mandatory backup step, or restored later via import.
Notable behavior: reading a variable updates its access time and extends expiry. The script avoids refreshing non-matching entries by collecting names and access times...
π Read | VPS | @mql5dev
β€18π8π€©6π₯5π2β‘1β1
SensibleGuide_MTF_H1 is an H1 indicator that gates signals through multi-timeframe confluence and explicit risk constraints. Trend is scored via EMA alignment (10/20/50/100/200) with an optional minimum alignment threshold before any setup is considered.
Higher-timeframe modules load closed-bar data only and compute EMA bias plus confirmed swing points for H4, D1, and W1. The CHtf layer refreshes rates and EMA buffers, confirms swings with strength-based validation, and uses binary search to reference the last closed bar at a given H1 close time, supporting non-repainting decisions.
Support/resistance is aggregated into a capped level list: round numbers, H1 swings, long EMAs, Bollinger bands, Fibonacci from the screening timeframe, higher-TF EMAs/swings, and previous day levels. A k...
π Read | Calendar | @mql5dev
Higher-timeframe modules load closed-bar data only and compute EMA bias plus confirmed swing points for H4, D1, and W1. The CHtf layer refreshes rates and EMA buffers, confirms swings with strength-based validation, and uses binary search to reference the last closed bar at a given H1 close time, supporting non-repainting decisions.
Support/resistance is aggregated into a capped level list: round numbers, H1 swings, long EMAs, Bollinger bands, Fibonacci from the screening timeframe, higher-TF EMAs/swings, and previous day levels. A k...
π Read | Calendar | @mql5dev
β€13π11π€©7π₯6π€―2π2β1
Symbol Spec Auditor consolidates contract specification details that affect risk and trading cost into a single on-chart panel. It converts key inputs into money per 1.00 lot in the account currency, then flags broker settings that can break lot sizing or order management without any journal errors.
The panel covers point and tick metrics, contract size, spread cost, margin, swap, volume constraints, execution and filling policies, GTC behavior, stops and freeze levels, and todayβs trading sessions. Values that cannot be computed are marked n/a with the reason, and warning rows are highlighted with a one-line consequence.
Common triggers include non-standard contract sizes (e.g., XAUUSD 1 oz vs 100 oz), cent-denominated accounting, tick size not matching point, minimum volume/step forcing rounding, close-only modes, end-of-day order deletion, and unu...
π Read | Calendar | @mql5dev
The panel covers point and tick metrics, contract size, spread cost, margin, swap, volume constraints, execution and filling policies, GTC behavior, stops and freeze levels, and todayβs trading sessions. Values that cannot be computed are marked n/a with the reason, and warning rows are highlighted with a one-line consequence.
Common triggers include non-standard contract sizes (e.g., XAUUSD 1 oz vs 100 oz), cent-denominated accounting, tick size not matching point, minimum volume/step forcing rounding, close-only modes, end-of-day order deletion, and unu...
π Read | Calendar | @mql5dev
β€23π€©8π₯5π4π3β1
Spread Profile by Hour builds an hourly spread distribution from the brokerβs own tick history and presents the median and 90th percentile across 24 server-time hours. Instead of a single per-bar spread value, it aggregates every bid/ask quote over the last N calendar days (excluding today), making rollover, session opens, and news-prone hours visible in the data.
Two sampling modes are supported: tick count (each quote once) and time-weighted (each quote weighted by how long it remained valid, capped at 60 seconds). A weekday filter allows isolating specific days.
A cost view maps median spread to a typical stop size in points, showing the spread as a percentage of 1R per hour, plus an account-currency estimate per 1.00 lot based on tick value and tick size. Current hour highlighting and a live spread line help with intraday context.
Optional CSV exp...
π Read | VPS | @mql5dev
Two sampling modes are supported: tick count (each quote once) and time-weighted (each quote weighted by how long it remained valid, capped at 60 seconds). A weekday filter allows isolating specific days.
A cost view maps median spread to a typical stop size in points, showing the spread as a percentage of 1R per hour, plus an account-currency estimate per 1.00 lot based on tick value and tick size. Current hour highlighting and a live spread line help with intraday context.
Optional CSV exp...
π Read | VPS | @mql5dev
β€18π7π₯4π€©4π4β1π1
Market Session Pro+ v3 expands coverage to 24 markets, up from the original 12, targeting session-driven short-term price moves such as Gold scalping.
The indicator renders market open and optional close times directly in the chart window. Built-in sessions include New York, Shanghai, Euronext, Tokyo, Shenzhen, Mumbai, Hong Kong, London, Toronto, Zurich, Frankfurt, and Sydney, plus two configurable custom markets.
Session schedules are defined in UTC with per-market offsets and per-region DST rules. Broker GMT offset can be auto-detected or set manually, including minute-level adjustment. Countdowns use server time so timing matches the plotted lines. Weekend handling and sessions crossing midnight are supported.
Visuals include configurable vertical lines, optional session boxes, edge markers, labels with countdowns, hover tooltips, and a sortable i...
π Read | AlgoBook | @mql5dev
The indicator renders market open and optional close times directly in the chart window. Built-in sessions include New York, Shanghai, Euronext, Tokyo, Shenzhen, Mumbai, Hong Kong, London, Toronto, Zurich, Frankfurt, and Sydney, plus two configurable custom markets.
Session schedules are defined in UTC with per-market offsets and per-region DST rules. Broker GMT offset can be auto-detected or set manually, including minute-level adjustment. Countdowns use server time so timing matches the plotted lines. Weekend handling and sessions crossing midnight are supported.
Visuals include configurable vertical lines, optional session boxes, edge markers, labels with countdowns, hover tooltips, and a sortable i...
π Read | AlgoBook | @mql5dev
β€22π5π₯5β3π3β‘1π€©1
GBPJPY βMondayβ EA: one scheduled long trade per week with fully readable source and no indicators, optimization, or bar-based logic. It runs on a 1-second timer and uses only server day/time, so timeframe selection (M1 to H1) does not affect execution.
Rules are fixed: Monday only, buy at 11:00 server time and close at 23:00 the same day. Positions are flat before rollover to avoid swap. Server time assumes GMT+2 winter and GMT+3 summer; on startup the EA prints the broker offset for manual hour adjustment.
Backtest (2022-01-01 to 2026-09-17): +52.9% on a 10k account at 0.2 lot, 11.2% annualized after $6/lot fees, 7.05% max drawdown, PF 1.86, 59.1% win rate, 242 trades. Profitability persisted with entry shifted across 09:00β13:00.
Guards: skip if spread > 1.5 pips; block entry if margin level would drop below 300%. No stop loss; risk is the full 12-hour mo...
π Read | CodeBase | @mql5dev
Rules are fixed: Monday only, buy at 11:00 server time and close at 23:00 the same day. Positions are flat before rollover to avoid swap. Server time assumes GMT+2 winter and GMT+3 summer; on startup the EA prints the broker offset for manual hour adjustment.
Backtest (2022-01-01 to 2026-09-17): +52.9% on a 10k account at 0.2 lot, 11.2% annualized after $6/lot fees, 7.05% max drawdown, PF 1.86, 59.1% win rate, 242 trades. Profitability persisted with entry shifted across 09:00β13:00.
Guards: skip if spread > 1.5 pips; block entry if margin level would drop below 300%. No stop loss; risk is the full 12-hour mo...
π Read | CodeBase | @mql5dev
β€34π8π€©4π3π2β1π₯1
Council of 15 extends the earlier four-role setup by widening signal diversity and separating forecasting from tradability. Ten analysts run in parallel and output BUY/SELL/NO SIGNAL with numeric justification. Four risk managers then gate entries with APPROVED/CAUTION/BLOCKED. A Chair applies a fixed algorithm: risk gate, vote count, then argument weighting, returning a single JSON decision.
Execution uses ThreadPoolExecutor: 10 analyst calls (4β6s), 4 risk calls (3β4s), Chair (3β4s), for a 10β15s cycle. Designed for H1 position trading, not scalping. Backward compatible with existing EA fields.
Backtest: EURUSD M15, 2026-02-01 to 2026-03-02. 43 trades, +$2,942.67 on $100k. Profit Factor 1.47, win rate 60.47%, max relative drawdown 2.73%, Sharpe 3.05.
π Read | Forum | @mql5dev
Execution uses ThreadPoolExecutor: 10 analyst calls (4β6s), 4 risk calls (3β4s), Chair (3β4s), for a 10β15s cycle. Designed for H1 position trading, not scalping. Backward compatible with existing EA fields.
Backtest: EURUSD M15, 2026-02-01 to 2026-03-02. 43 trades, +$2,942.67 on $100k. Profit Factor 1.47, win rate 60.47%, max relative drawdown 2.73%, Sharpe 3.05.
π Read | Forum | @mql5dev
β€17π₯5π€©4π3π2π2β1
This article builds an MQL5 indicator that turns market sessions into structured data, not just chart boxes. Each session occurrence is captured as a SessionData record with OHLC, range, net movement, high/low timestamps, extreme order, and range growth measured at 25/50/75/100% of the session.
A global engine state keeps configs, session history, UI selection, click debouncing, and bar-based throttling consistent across OnCalculate and OnChartEvent. Sessions are rebuilt from chart bars (timeframe-based, not tick-exact) and flagged as completed using TimeCurrent().
Visualization stays lightweight: clickable open-time markers plus a comparison panel (range and net move) and a session inspector that reveals full metrics for any selected session, including partial progress for live sessions.
π Read | AlgoBook | @mql5dev
A global engine state keeps configs, session history, UI selection, click debouncing, and bar-based throttling consistent across OnCalculate and OnChartEvent. Sessions are rebuilt from chart bars (timeframe-based, not tick-exact) and flagged as completed using TimeCurrent().
Visualization stays lightweight: clickable open-time markers plus a comparison panel (range and net move) and a session inspector that reveals full metrics for any selected session, including partial progress for live sessions.
π Read | AlgoBook | @mql5dev
β€23π4π₯4π€©4π2
Collaborative debugging in MQL5 often meant copying source and compiler output into an external AI chat, then returning fixes to MetaEditor. That loop worked, but context drift and manual transfer added friction.
MetaTrader 5 Build 6060 adds MCP support and an AI Assistant inside MetaEditor. The key change is proximity to the editor and compiler, not automatic correctness. Prompts still need constraints, and fixes must be reviewed.
A D1 PriceMarker exercise highlights the gap between compilation and runtime validity. The buggy version fails due to a missing semicolon, an invalid object property (OBJPROP_Y), and unchecked return values. An AI-fixed version can compile cleanly, but the final implementation adds rate validation, deterministic object naming, checked chart operations, timer refresh, and bounded cleanup.
Successful compilation is only stage one...
π Read | NeuroBook | @mql5dev
MetaTrader 5 Build 6060 adds MCP support and an AI Assistant inside MetaEditor. The key change is proximity to the editor and compiler, not automatic correctness. Prompts still need constraints, and fixes must be reviewed.
A D1 PriceMarker exercise highlights the gap between compilation and runtime validity. The buggy version fails due to a missing semicolon, an invalid object property (OBJPROP_Y), and unchecked return values. An AI-fixed version can compile cleanly, but the final implementation adds rate validation, deterministic object naming, checked chart operations, timer refresh, and bounded cleanup.
Successful compilation is only stage one...
π Read | NeuroBook | @mql5dev
β€12π€©7π4π₯4π€―3β‘1π1
ST-Expert tackles non-stationary markets by using a Mixture of Experts: multiple specialized predictors trained on distinct regimes (trend, correction, flat), with a mixing module that reallocates weights as conditions shift. Expert βgraphonsβ model changing inter-asset connectivity, improving robustness without a large parameter increase.
The implementation extends a Transformer-style stack (Extralonger) with a graphon-driven global-local attention block. Global attention captures long-horizon structure, while local attention targets short-term anomalies; outputs are concatenated and adaptively mixed.
Engineering details cover clean module lifecycle (Init), real-time forward flow, correct gradient splitting/merging during backprop, and weight updates delegated to submodulesβuseful patterns for building adaptive forecasting components in MT5 pipeli...
π Read | Signals | @mql5dev
The implementation extends a Transformer-style stack (Extralonger) with a graphon-driven global-local attention block. Global attention captures long-horizon structure, while local attention targets short-term anomalies; outputs are concatenated and adaptively mixed.
Engineering details cover clean module lifecycle (Init), real-time forward flow, correct gradient splitting/merging during backprop, and weight updates delegated to submodulesβuseful patterns for building adaptive forecasting components in MT5 pipeli...
π Read | Signals | @mql5dev
β€16π7π₯4π€©4π2
This EA targets a common pullback failure mode: swings that look valid to pivot logic but lack real displacement. It fixes that by grading each impulse leg and allowing pullback setups only when the leg shows measurable imbalance.
Swings are confirmed on closed bars with strict alternation, so every extreme has a clean origin-to-extreme leg to evaluate. A deterministic Candle Imbalance Engine scores legs from four bounded signals: average body-to-range (displacement), close-direction consistency, efficiency (net vs gross travel), and Fair Value Gap coverage normalized by leg height.
Only swings above a configurable threshold can arm a pullback state machine (armed β in-zone β done). Entries require an in-zone confirmation close; invalidation includes origin breaks and an optional first-clean-retest rule.
Exit management runs on every tick with R-m...
π Read | Freelance | @mql5dev
Swings are confirmed on closed bars with strict alternation, so every extreme has a clean origin-to-extreme leg to evaluate. A deterministic Candle Imbalance Engine scores legs from four bounded signals: average body-to-range (displacement), close-direction consistency, efficiency (net vs gross travel), and Fair Value Gap coverage normalized by leg height.
Only swings above a configurable threshold can arm a pullback state machine (armed β in-zone β done). Entries require an in-zone confirmation close; invalidation includes origin breaks and an optional first-clean-retest rule.
Exit management runs on every tick with R-m...
π Read | Freelance | @mql5dev
β€18π€©8π5π₯5π2π2
Backtest Sharpe ratios are biased upward when reported from the best optimization pass. No data manipulation is required; selection alone inflates the result.
Raw Sharpe is optimistic for three reasons: limited sample size, non-normal return distributions (skew and fat tails), and the βbest-of-Nβ effect across parameter trials.
Probabilistic Sharpe Ratio (PSR) converts an observed Sharpe, trade count, skewness, and Pearson kurtosis into the probability that the true Sharpe exceeds a benchmark.
Deflated Sharpe Ratio (DSR) adds selection adjustment by raising the benchmark to the expected maximum Sharpe from N no-edge trials, using the cross-trial variance and a normal quantile approximation.
Example: 56 MA variants on XAUUSD H1. Winner SR=0.070 (711 trades). PSR vs 0: 98.5%. DSR vs hurdle 0.028: 90.6%, below a 95% significance threshold.
π Read | NeuroBook | @mql5dev
Raw Sharpe is optimistic for three reasons: limited sample size, non-normal return distributions (skew and fat tails), and the βbest-of-Nβ effect across parameter trials.
Probabilistic Sharpe Ratio (PSR) converts an observed Sharpe, trade count, skewness, and Pearson kurtosis into the probability that the true Sharpe exceeds a benchmark.
Deflated Sharpe Ratio (DSR) adds selection adjustment by raising the benchmark to the expected maximum Sharpe from N no-edge trials, using the cross-trial variance and a normal quantile approximation.
Example: 56 MA variants on XAUUSD H1. Winner SR=0.070 (711 trades). PSR vs 0: 98.5%. DSR vs hurdle 0.028: 90.6%, below a 95% significance threshold.
π Read | NeuroBook | @mql5dev
β€13π₯6π€©6π4π2
Edge Drift Detector adds statistical monitoring to an MT5 Expert Advisor by testing whether live closing deals still match the backtest distribution, or whether average outcome per deal has regressed toward zero. It reads baseline and live data from tester reports, CSV, or account history, and prints a full report in the Experts tab.
Coverage includes a bootstrap-calibrated CUSUM edge-loss alarm with a selectable false-alarm rate over a planned deal horizon, an estimated drift start deal/date, and tail-probability checks over short and long windows (default 20 and 100 deals). Expectancy change is decomposed into win-rate, win-size, and loss-size effects, with a symbol-mix warning when live instruments differ from the baseline.
Output includes detection-delay estimates, an A+ to F Edge Health Score, and an explicit CONTINUE/WATCH/REDUCE/SUSPEND verdict with ...
π Read | Freelance | @mql5dev
Coverage includes a bootstrap-calibrated CUSUM edge-loss alarm with a selectable false-alarm rate over a planned deal horizon, an estimated drift start deal/date, and tail-probability checks over short and long windows (default 20 and 100 deals). Expectancy change is decomposed into win-rate, win-size, and loss-size effects, with a symbol-mix warning when live instruments differ from the baseline.
Output includes detection-delay estimates, an A+ to F Edge Health Score, and an explicit CONTINUE/WATCH/REDUCE/SUSPEND verdict with ...
π Read | Freelance | @mql5dev
β€24π₯7π5π€©4π2β1π¨βπ»1
βNon-repaintingβ is one of the most common claims in indicator descriptions and one of the hardest to verify visually. A manual reload test typically misses two costly cases: closed-bar values changing while the chart stays open, and history changing after a reload caused by timeframe switches, terminal restarts, or opening a fresh chart.
Repaint Inspector measures this directly by re-reading indicator buffers on already closed bars (shift 1+), keyed by bar open time rather than shift. The first observed value becomes the reference; later reads are compared to both the previous value (event counting) and the first value (drift). Events are split into Changed, Appeared, and Vanished, with MaxShift reporting how far back any event occurred.
Each event is written to CSV with bar time, buffer, shift at detection, and old/new values, making the report auditable...
π Read | Calendar | @mql5dev
Repaint Inspector measures this directly by re-reading indicator buffers on already closed bars (shift 1+), keyed by bar open time rather than shift. The first observed value becomes the reference; later reads are compared to both the previous value (event counting) and the first value (drift). Events are split into Changed, Appeared, and Vanished, with MaxShift reporting how far back any event occurred.
Each event is written to CSV with bar time, buffer, shift at detection, and old/new values, making the report auditable...
π Read | Calendar | @mql5dev
β€23π8π€©5π₯4π4
ATS Liquidity City plots likely stop locations and marks which pools were swept on the current server day.
Liquidity pools are defined as confirmed swing highs/lows using N bars on each side (default 5), equal highs/lows when multiple swings fall within 0.10 x ATR(14), and yesterdayβs high/low valid for today only. Equal levels increase pool size and are rendered with thicker lines.
A sweep is flagged on the first closed bar that trades beyond a pool. If the bar closes back inside it is marked grabbed & rejected, otherwise taken. Active pools render as solid lines with labels and prices; swept pools are dotted and retained for 300 bars. Tooltips show type, price, and status.
The panel reports nearest pools above/below in ATR distance, and a taken-today ticker. For developers: buffers expose sweep arrows and nearest active levels; the panel uses a 5...
π Read | AlgoBook | @mql5dev
Liquidity pools are defined as confirmed swing highs/lows using N bars on each side (default 5), equal highs/lows when multiple swings fall within 0.10 x ATR(14), and yesterdayβs high/low valid for today only. Equal levels increase pool size and are rendered with thicker lines.
A sweep is flagged on the first closed bar that trades beyond a pool. If the bar closes back inside it is marked grabbed & rejected, otherwise taken. Active pools render as solid lines with labels and prices; swept pools are dotted and retained for 300 bars. Tooltips show type, price, and status.
The panel reports nearest pools above/below in ATR distance, and a taken-today ticker. For developers: buffers expose sweep arrows and nearest active levels; the panel uses a 5...
π Read | AlgoBook | @mql5dev
β€32π10π₯6π€©5π2π€£2
Arixis Backtest Robustness Analyzer is a free, open-source utility for MetaTrader 5 focused on evaluating backtest robustness beyond Profit Factor, net profit, and win rate. It operates on closed trade history and reports how results were generated, including average/median trade, best and worst trades, streaks, percentiles, and sample-size context.
Dependency and sensitivity checks recalculate outcomes after removing top or bottom trades to quantify concentration and the impact of extremes. When net profit is non-positive, dependency ratios are suppressed to avoid misleading percentages while still showing adjusted net results.
The tool reconstructs a closed-equity curve to analyze drawdown depth, underwater time, and recovery, with the limitation that intratrade floating drawdown cannot be derived from closed history alone. Time and direction breakd...
π Read | AppStore | @mql5dev
Dependency and sensitivity checks recalculate outcomes after removing top or bottom trades to quantify concentration and the impact of extremes. When net profit is non-positive, dependency ratios are suppressed to avoid misleading percentages while still showing adjusted net results.
The tool reconstructs a closed-equity curve to analyze drawdown depth, underwater time, and recovery, with the limitation that intratrade floating drawdown cannot be derived from closed history alone. Time and direction breakd...
π Read | AppStore | @mql5dev
β€23π₯9π6π€©5π2