Channel logic uses a symmetric triangular-weighted moving average over 2ΓHalfLength+1 bars as the center line. Band width is derived from an adaptive, EMA-style variance of positive/negative deviations, plotting Center Β± (Deviation multiplier Γ StdDev).
Signal rules are closed-form: Sell triggers when a bullish bar pushes High above the upper band, followed by a bearish close. Buy triggers when a bearish bar pushes Low below the lower band, followed by a bullish close. Arrow offsets scale with ATR(20) for consistent readability.
MTF mode computes the channel on a selectable higher timeframe via CopyRates(), with optional linear interpolation to avoid stair-stepped lines. Optional filters include minimum band width, tick-volume confirmation, and cooldown. Implementation is single-file MQL5, chart-window indicator, cached MTF updates, and proper handle...
π Read | AppStore | @mql5dev
Signal rules are closed-form: Sell triggers when a bullish bar pushes High above the upper band, followed by a bearish close. Buy triggers when a bearish bar pushes Low below the lower band, followed by a bullish close. Arrow offsets scale with ATR(20) for consistent readability.
MTF mode computes the channel on a selectable higher timeframe via CopyRates(), with optional linear interpolation to avoid stair-stepped lines. Optional filters include minimum band width, tick-volume confirmation, and cooldown. Implementation is single-file MQL5, chart-window indicator, cached MTF updates, and proper handle...
π Read | AppStore | @mql5dev
β€28π6π2π¨βπ»1
A reusable MQL5 include file (.mqh) targets risk management and position sizing across multi-asset portfolios, with consistent results on accounts using non-USD base currencies and on brokers that apply symbol suffixes such as .pro or .ecn.
The module uses a triangular currency conversion engine to translate the instrumentβs profit currency into the account currency. It checks direct, inverse, and USD cross paths to produce an accurate tick value, reducing sizing errors caused by currency mismatches.
Key methods include CalculateLotSize for risk-percent sizing from balance and stop distance, GetConversionRate for automatic path resolution, ExtractSuffix to normalize broker symbols during lookups, and CheckDrawdownLimit to block new trades when equity drawdown exceeds configured limits.
Deployment is via MQL5\Include\, then include the header, create the cl...
π Read | Quotes | @mql5dev
The module uses a triangular currency conversion engine to translate the instrumentβs profit currency into the account currency. It checks direct, inverse, and USD cross paths to produce an accurate tick value, reducing sizing errors caused by currency mismatches.
Key methods include CalculateLotSize for risk-percent sizing from balance and stop distance, GetConversionRate for automatic path resolution, ExtractSuffix to normalize broker symbols during lookups, and CheckDrawdownLimit to block new trades when equity drawdown exceeds configured limits.
Deployment is via MQL5\Include\, then include the header, create the cl...
π Read | Quotes | @mql5dev
β€18π4π2π1
Crow Search Algorithm (CSA) is presented as a swarm-based global optimizer inspired by crows that remember good βcacheβ locations, follow other agents, and sometimes force random detours to prevent premature convergence. Its appeal is a small parameter set and straightforward implementation, making it suitable for iterative tuning problems in trading.
The MQL5 design centers on S_CrowMemory to persist each agentβs best position and fitness, plus a C_AO_CrowSearchAlgorithm class with configurable population size, flight length, and awareness probability. Core methods cover initialization, randomized opponent selection, position updates via either guided moves toward another crowβs cached best or full random relocation, and a revision step that updates both per-crow memory and the global best solution.
π Read | NeuroBook | @mql5dev
The MQL5 design centers on S_CrowMemory to persist each agentβs best position and fitness, plus a C_AO_CrowSearchAlgorithm class with configurable population size, flight length, and awareness probability. Core methods cover initialization, randomized opponent selection, position updates via either guided moves toward another crowβs cached best or full random relocation, and a revision step that updates both per-crow memory and the global best solution.
π Read | NeuroBook | @mql5dev
β€8π8π3β‘1
Media is too big
VIEW IN TELEGRAM
Introducing metatrader.com β a new destination for traders, investors, and MetaTrader users.
The homepage gives you a complete view of the markets at a glance. Track U.S. stocks, forex, indices, metals, and commodities from a single hub.
Every instrument comes with a fully featured interactive chart. Use drawing tools, including trend lines, channels, Fibonacci levels, and other analytical objects.
Read news and analysis from more than 30 international providers, including Reuters, Bloomberg, Yahoo Finance, and others.
Visit the portal today and discover a new hub for financial analysis and trading.
Discuss the video:
π MQL5.community for traders
π MetaQuotes official YouTube channel
The homepage gives you a complete view of the markets at a glance. Track U.S. stocks, forex, indices, metals, and commodities from a single hub.
Every instrument comes with a fully featured interactive chart. Use drawing tools, including trend lines, channels, Fibonacci levels, and other analytical objects.
Read news and analysis from more than 30 international providers, including Reuters, Bloomberg, Yahoo Finance, and others.
Visit the portal today and discover a new hub for financial analysis and trading.
Discuss the video:
π MQL5.community for traders
π MetaQuotes official YouTube channel
β€17π₯6π3π3π2β‘1π€£1
Market-neutral trading can be built on empirical return distributions instead of directional forecasts. Returns are computed over a fixed horizon, collected from history, sorted, and converted into percentiles to place a two-sided grid at statistically likely price levels without assuming a Gaussian model or ignoring fat tails.
Order sizing uses inverse probability weighting: frequent, near-mean levels trade small; rare tail levels trade larger, tempered with a square-root factor and an aggressiveness multiplier. In MT5 terms, BUY LIMITs map to negative-return percentiles, SELL LIMITs to positive ones, with optional BUY/SELL/NEUTRAL bias.
The system stays adaptive by expiring and rebuilding grids as distributions drift, and manages risk via side-specific and global profit targets, order timeouts, position/volume caps, deviation limits, and news-awa...
π Read | Signals | @mql5dev
Order sizing uses inverse probability weighting: frequent, near-mean levels trade small; rare tail levels trade larger, tempered with a square-root factor and an aggressiveness multiplier. In MT5 terms, BUY LIMITs map to negative-return percentiles, SELL LIMITs to positive ones, with optional BUY/SELL/NEUTRAL bias.
The system stays adaptive by expiring and rebuilding grids as distributions drift, and manages risk via side-specific and global profit targets, order timeouts, position/volume caps, deviation limits, and news-awa...
π Read | Signals | @mql5dev
β€15π4π3π2
Most MT5 change detectors label regime breaks after theyβre visible. This article targets live trading with Bayesian Online Change-Point Detection (BOCPD), updating each bar using only past data and returning a calibrated probability that the current regime just ended.
BOCPD tracks a posterior over run length (bars since last change). A constant hazard rate sets expected regime duration, while a conjugate Normal-Gamma model yields a fast Student-t predictive score that reacts to shifts in mean or volatility.
Implementation is a standalone MQL5 CBOCPD class: capped run-length to keep cost bounded, log-space math to avoid underflow, and a warm-up status to prevent misleading early signals. Uses include a live regime monitor, a self-resetting adaptive average, and a risk overlay that reduces exposure on detected instability.
π Read | Calendar | @mql5dev
BOCPD tracks a posterior over run length (bars since last change). A constant hazard rate sets expected regime duration, while a conjugate Normal-Gamma model yields a fast Student-t predictive score that reacts to shifts in mean or volatility.
Implementation is a standalone MQL5 CBOCPD class: capped run-length to keep cost bounded, log-space math to avoid underflow, and a warm-up status to prevent misleading early signals. Uses include a live regime monitor, a self-resetting adaptive average, and a risk overlay that reduces exposure on detected instability.
π Read | Calendar | @mql5dev
β€16π11π4π¨βπ»1
MetaTrader 5 keeps closed-trade details in History, but built-in export emits HTML that Excel imports as text, triggers conversion prompts, and forces manual date and numeric cleanup. Copy-paste loses structure and does not scale.
An MQL5 script can export directly to XLSX by reconstructing trades from deal history. Trades are paired via DEAL_POSITION_ID, with SL/TP retrieved using a two-pass lookup: read DEAL_SL/DEAL_TP first, then fall back to ORDER_SL/ORDER_TP via DEAL_ORDER.
XLSX avoids CSV type inference by writing explicit cell types, Excel date serials with styles, and a bold header row. The implementation separates trade reconstruction, SpreadsheetML XML generation, and ZIP packaging into distinct modules, producing a file that opens in Excel or Google Sheets without conversion steps.
π Read | CodeBase | @mql5dev
An MQL5 script can export directly to XLSX by reconstructing trades from deal history. Trades are paired via DEAL_POSITION_ID, with SL/TP retrieved using a two-pass lookup: read DEAL_SL/DEAL_TP first, then fall back to ORDER_SL/ORDER_TP via DEAL_ORDER.
XLSX avoids CSV type inference by writing explicit cell types, Excel date serials with styles, and a bold header row. The implementation separates trade reconstruction, SpreadsheetML XML generation, and ZIP packaging into distinct modules, producing a file that opens in Excel or Google Sheets without conversion steps.
π Read | CodeBase | @mql5dev
β€15π7π1
Beginner MQL5 EAs often compile, trade, and backtest, yet still fail live due to missing architecture around execution, validation, and risk controls.
A moving-average crossover example highlights four common issues: repeated entries from per-tick evaluation, no position awareness, fixed SL/TP that ignores volatility, and no result checking on trade operations.
Key hardening steps: add new-bar detection, isolate trades with a Magic Number, count positions by symbol and direction with optional hedging rules, and replace static stops with ATR-based distances.
Production readiness also requires validation of indicator buffers and BarsCalculated(), CopyBuffer() checks, SymbolInfoTick() pricing snapshots, NormalizeDouble() on levels, and detailed error logging when orders are rejected.
π Read | NeuroBook | @mql5dev
A moving-average crossover example highlights four common issues: repeated entries from per-tick evaluation, no position awareness, fixed SL/TP that ignores volatility, and no result checking on trade operations.
Key hardening steps: add new-bar detection, isolate trades with a Magic Number, count positions by symbol and direction with optional hedging rules, and replace static stops with ATR-based distances.
Production readiness also requires validation of indicator buffers and BarsCalculated(), CopyBuffer() checks, SymbolInfoTick() pricing snapshots, NormalizeDouble() on levels, and detailed error logging when orders are rejected.
π Read | NeuroBook | @mql5dev
β€45π9β‘1
Mediana & Parallel Lines MTF is an MT5 indicator that plots higher-timeframe parallel channels on the current chart using only the last two closed candles of each selected timeframe (MN1, W1, D1, H4, H1, M30, M15).
For each timeframe, three lines are drawn with identical slope: a Median line through (Open+Close)/2, plus High and Low lines offset from the second-to-last candleβs High and Low. The slope is derived from the median change between the two reference candles and is extended to the right as a projection.
Timeframes can be enabled independently with per-timeframe colors, plus global line width and style. A safety rule hides channels that are not higher than the current chart timeframe. Calculations run once per new bar, objects are cleaned up on deinit, an info panel lists active channels, and the logic avoids repainting by using closed bars ...
π Read | CodeBase | @mql5dev
For each timeframe, three lines are drawn with identical slope: a Median line through (Open+Close)/2, plus High and Low lines offset from the second-to-last candleβs High and Low. The slope is derived from the median change between the two reference candles and is extended to the right as a projection.
Timeframes can be enabled independently with per-timeframe colors, plus global line width and style. A safety rule hides channels that are not higher than the current chart timeframe. Calculations run once per new bar, objects are cleaned up on deinit, an info panel lists active channels, and the logic avoids repainting by using closed bars ...
π Read | CodeBase | @mql5dev
β€18π5π4π¨βπ»2
Clock (Spread).mq5 is an MT5 chart utility indicator that places a corner label with two live metrics: time remaining until the current bar closes and the current spread in points (Ask β Bid) shown in parentheses.
The timer is updated once per second via EventSetTimer(1), keeping the countdown active even without incoming ticks, and it also refreshes on each tick through OnCalculate. Output follows formats like β04:32 (12)β, indicating 4 minutes 32 seconds to bar close with a 12βpoint spread.
No plots are drawn on the chart (indicator_plots 0). A single OBJ_LABEL is created, with a per chart/symbol/timeframe unique name derived from a configurable prefix to prevent object collisions across multiple instances.
Configurable inputs cover font name, size, color, and X/Y pixel offsets from the top-left corner.
π Read | CodeBase | @mql5dev
The timer is updated once per second via EventSetTimer(1), keeping the countdown active even without incoming ticks, and it also refreshes on each tick through OnCalculate. Output follows formats like β04:32 (12)β, indicating 4 minutes 32 seconds to bar close with a 12βpoint spread.
No plots are drawn on the chart (indicator_plots 0). A single OBJ_LABEL is created, with a per chart/symbol/timeframe unique name derived from a configurable prefix to prevent object collisions across multiple instances.
Configurable inputs cover font name, size, color, and X/Y pixel offsets from the top-left corner.
π Read | CodeBase | @mql5dev
β€29π5π1
SniperGold SMC ProPlus is an MT5 chart indicator that renders Smart Money Concepts structure and an optional setup readout. All BOS, CHoCH, sweeps, and signals are confirmed on fully closed candles, so plotted output does not change after bar close.
Chart objects include internal and swing structure lines, HH/HL/LH/LL labeling with strong/weak highs and lows, internal and swing order blocks (optionally volume-weighted), fair value gaps on the current timeframe or projected from a higher timeframe, equal highs/lows with resting liquidity levels, sweep markers, premium/equilibrium/discount zones, and prior day/week/month highs and lows. A multi-timeframe bias panel supports three higher timeframes.
The setup panel outputs BUY/SELL/WAIT with entry, SL/TPs, R:R, and a confluence score. Signals are gated by objective steps such as sweep, CHoCH, OB/FVG tap in t...
π Read | Signals | @mql5dev
Chart objects include internal and swing structure lines, HH/HL/LH/LL labeling with strong/weak highs and lows, internal and swing order blocks (optionally volume-weighted), fair value gaps on the current timeframe or projected from a higher timeframe, equal highs/lows with resting liquidity levels, sweep markers, premium/equilibrium/discount zones, and prior day/week/month highs and lows. A multi-timeframe bias panel supports three higher timeframes.
The setup panel outputs BUY/SELL/WAIT with entry, SL/TPs, R:R, and a confluence score. Signals are gated by objective steps such as sweep, CHoCH, OB/FVG tap in t...
π Read | Signals | @mql5dev
β€22π12π¨βπ»2π1π1
The article breaks down the Blue Monkey metaheuristic for optimizing discrete trading robots, mapping the methodβs βteams, leaders, offspring, and migrationβ into a structured search process. A population is split into groups that explore in parallel, while a separate offspring set injects new candidates and replaces weak adults when it improves fitness.
Implementation details focus on an MT5-ready design: a C_AO_BM class extends a base optimizer, exposes tunable population size, group count, and offspring ratio, and manages per-agent state via arrays for position, fitness, velocity (Rate), and adaptive weights.
Core iteration alternates between Moving and Revision: initialize bounded discrete parameters, then update positions by steering each agent toward its group leader (offspring toward the best child) using velocity-based updates plus random factors...
π Read | AppStore | @mql5dev
Implementation details focus on an MT5-ready design: a C_AO_BM class extends a base optimizer, exposes tunable population size, group count, and offspring ratio, and manages per-agent state via arrays for position, fitness, velocity (Rate), and adaptive weights.
Core iteration alternates between Moving and Revision: initialize bounded discrete parameters, then update positions by steering each agent toward its group leader (offspring toward the best child) using velocity-based updates plus random factors...
π Read | AppStore | @mql5dev
β€20π6π1
Managing multiple MetaTrader 5 Expert Advisors often requires separate terminal instances per strategy or account, sometimes across different servers. Existing tooling is limited: MT4 MultiTerminal is discontinued, MT5 has no equivalent, and third-party options mostly stop at monitoring.
A proposed architecture splits responsibilities between a main web server (dashboard and orchestration), per-host terminal web servers (local control via Python + MetaTrader5 library), and a lightweight data layer starting with SQLite, with a path to PostgreSQL later.
An MVP starts with a terminal-side REST API to start/stop a specific MT5 instance and query account status. Implementation uses FastAPI handlers and Uvicorn, beginning with GET / returning HTML via HTMLResponse instead of default JSON serialization.
π Read | Freelance | @mql5dev
A proposed architecture splits responsibilities between a main web server (dashboard and orchestration), per-host terminal web servers (local control via Python + MetaTrader5 library), and a lightweight data layer starting with SQLite, with a path to PostgreSQL later.
An MVP starts with a terminal-side REST API to start/stop a specific MT5 instance and query account status. Implementation uses FastAPI handlers and Uvicorn, beginning with GET / returning HTML via HTMLResponse instead of default JSON serialization.
π Read | Freelance | @mql5dev
β€17π15π€―1π1
Part 2 evolves an MVP FastAPI service from controlling one MT5 terminal to managing multiple local instances via a simple web UI.
The codebase is split for maintainability: terminal process logic moves into mt5_control.py, while main.py keeps only route handlers. Templates and static assets are added using Jinja2 plus a mounted /static path.
Instance management becomes name-based with POST /start/{name} and /stop/{name}. A load_instances() scan uses psutil to map registered terminal folders to running PIDs, preventing duplicate starts and handling already-stopped processes. Launch uses subprocess.Popen with /portable to isolate each terminal directory.
π Read | Signals | @mql5dev
The codebase is split for maintainability: terminal process logic moves into mt5_control.py, while main.py keeps only route handlers. Templates and static assets are added using Jinja2 plus a mounted /static path.
Instance management becomes name-based with POST /start/{name} and /stop/{name}. A load_instances() scan uses psutil to map registered terminal folders to running PIDs, preventing duplicate starts and handling already-stopped processes. Launch uses subprocess.Popen with /portable to isolate each terminal directory.
π Read | Signals | @mql5dev
β€16π8π2
Mamba4Cast targets zero-shot time-series forecasting for trading: deploy on new symbols without retraining, while SSM-based blocks keep inference linear in sequence length for low-latency decisions. It outputs the full forecast horizon in one pass, reducing the error drift common in step-by-step approaches.
This part focuses on the preprocessing layer CMamba4CastEmbedding. It standardizes inputs via convolutional projection with TANH, batch normalization, and a parallel path that injects sinusoidal/cosine temporal markers. The two representations are concatenated to form a dense per-bar embedding.
Implementation details matter for MQL5: static submodules avoid dynamic allocation, backprop cleanly de-concatenates gradients per branch, then merges them for stable weight updates. Next, the encoder stacks multi-kernel convolutions, concatenates and normalizes f...
π Read | Docs | @mql5dev
This part focuses on the preprocessing layer CMamba4CastEmbedding. It standardizes inputs via convolutional projection with TANH, batch normalization, and a parallel path that injects sinusoidal/cosine temporal markers. The two representations are concatenated to form a dense per-bar embedding.
Implementation details matter for MQL5: static submodules avoid dynamic allocation, backprop cleanly de-concatenates gradients per branch, then merges them for stable weight updates. Next, the encoder stacks multi-kernel convolutions, concatenates and normalizes f...
π Read | Docs | @mql5dev
β€14π6π€‘3π2
Most MT5 volatility indicators reduce each bar to a single close, ignoring open/high/low and missing most intrabar movement. Range-based estimators use full OHLC to produce a less noisy variance estimate from the same window, making volatility signals smoother and more responsive.
Four estimators are implemented: close-to-close (baseline), Parkinson (high/low, efficient but gap-blind), Garman-Klass (full bar, even more efficient but still gap-blind), and Yang-Zhang (adds previous close plus drift-robust intrabar term to measure overnight gaps directly). Yang-Zhang is the practical default for instruments with session breaks.
A reusable MQL5 library, VolatilityEstimators.mqh, wraps these methods behind one enum-driven interface using an O(1) ring buffer, shared window storage, readiness checks, input validation, and optional annualization. Two indicat...
π Read | Freelance | @mql5dev
Four estimators are implemented: close-to-close (baseline), Parkinson (high/low, efficient but gap-blind), Garman-Klass (full bar, even more efficient but still gap-blind), and Yang-Zhang (adds previous close plus drift-robust intrabar term to measure overnight gaps directly). Yang-Zhang is the practical default for instruments with session breaks.
A reusable MQL5 library, VolatilityEstimators.mqh, wraps these methods behind one enum-driven interface using an O(1) ring buffer, shared window storage, readiness checks, input validation, and optional annualization. Two indicat...
π Read | Freelance | @mql5dev
β€18π6π€3π1
Mantis targets time-series classification for trading tasks where forecasting models struggle: it learns regime and pattern labels efficiently, with reliable confidence for decision-making.
The core design splits a series into a fixed number of patches, then applies hybrid attention using local convolution/pooling tokens plus global tokens. This keeps computation near-linear while still capturing microstructure and longer trends in high-frequency data.
Self-supervised contrastive pretraining builds stable embeddings across augmentations, making patterns robust to timing and amplitude shifts. A calibration step via temperature scaling turns logits into probabilities that better match real-world hit rates for risk management.
For multivariate inputs, lightweight channel adapters compress cross-indicator relationships without parameter blowup, enabling practi...
π Read | AlgoBook | @mql5dev
The core design splits a series into a fixed number of patches, then applies hybrid attention using local convolution/pooling tokens plus global tokens. This keeps computation near-linear while still capturing microstructure and longer trends in high-frequency data.
Self-supervised contrastive pretraining builds stable embeddings across augmentations, making patterns robust to timing and amplitude shifts. A calibration step via temperature scaling turns logits into probabilities that better match real-world hit rates for risk management.
For multivariate inputs, lightweight channel adapters compress cross-indicator relationships without parameter blowup, enabling practi...
π Read | AlgoBook | @mql5dev
β€14π3β‘1π1
MetaTrader 5 stores deal history in an opaque format and exports mainly as static HTML, which limits querying, joins, and automated reporting.
An Expert Advisor can persist each OnTrade() event into an SQLite file in MQL5/Files/ using the built-in Database* API (build 2485+). Deals are captured incrementally by comparing HistoryDealsTotal() to the last processed count, with OnInit() reconciling missing rows after restarts via SELECT COUNT(*).
SQLite provides indexed, parameterized INSERTs via DatabasePrepare/DatabaseBind/DatabaseRead and supports fast analytics with standard SQL. A single trade_events table can store OPEN/CLOSE/BALANCE/OTHER with event_time as sortable YYYY.MM.DD HH:MM:SS text.
π Read | Docs | @mql5dev
An Expert Advisor can persist each OnTrade() event into an SQLite file in MQL5/Files/ using the built-in Database* API (build 2485+). Deals are captured incrementally by comparing HistoryDealsTotal() to the last processed count, with OnInit() reconciling missing rows after restarts via SELECT COUNT(*).
SQLite provides indexed, parameterized INSERTs via DatabasePrepare/DatabaseBind/DatabaseRead and supports fast analytics with standard SQL. A single trade_events table can store OPEN/CLOSE/BALANCE/OTHER with event_time as sortable YYYY.MM.DD HH:MM:SS text.
π Read | Docs | @mql5dev
β€24π3π¨βπ»3β2π1
Mini Panel Manager streamlines manual trade execution through a compact interface with focused controls.
The Information Panel shows account status and all active positions with real-time updates. The Trading Panel provides Buy and Sell actions with Magic Number support so automated logic can tag and manage its own orders consistently.
Position management tools include a dedicated Closing Panel for fast exit of selected trades. The Average TP Panel sets or updates Take Profit from the average entry price across open positions, useful for basket handling.
Risk and automation options include a Break-even Panel that shifts positions to break-even after a defined profit threshold, plus an Auto Grid Panel that can add grid or martingale orders when enabled.
π Read | Calendar | @mql5dev
The Information Panel shows account status and all active positions with real-time updates. The Trading Panel provides Buy and Sell actions with Magic Number support so automated logic can tag and manage its own orders consistently.
Position management tools include a dedicated Closing Panel for fast exit of selected trades. The Average TP Panel sets or updates Take Profit from the average entry price across open positions, useful for basket handling.
Risk and automation options include a Break-even Panel that shifts positions to break-even after a defined profit threshold, plus an Auto Grid Panel that can add grid or martingale orders when enabled.
π Read | Calendar | @mql5dev
β€17π4π€£2π1
A Relative Moving Average (RMA) framework for MT5 implements Daniel A. Blochβs construction, not Wilder-style smoothing. The core output is a fractile f_w: the current close is ranked inside a trailing window of normalised returns (close/SMA - 1) and mapped to a consistent [0, 1] scale across symbols and volatility regimes.
The stack is kept explicit: window SMA as equilibrium, an RMA family of scale-free ratios (sma/x - 1) at key landmarks, and empirical-CDF fractiles for current/min/max. On top, a regime classifier flags expansion, contraction, and transitions using extremum ratios with slope, z-score, and variation corroboration, plus adverse-movement metrics d_med_w and D_k for directional consistency.
Two indicators ship together. An engine publishes 19 buffers for reuse by EAs/indicators and draws f_w, envelope fractiles, smoothed quantile mean...
π Read | Signals | @mql5dev
The stack is kept explicit: window SMA as equilibrium, an RMA family of scale-free ratios (sma/x - 1) at key landmarks, and empirical-CDF fractiles for current/min/max. On top, a regime classifier flags expansion, contraction, and transitions using extremum ratios with slope, z-score, and variation corroboration, plus adverse-movement metrics d_med_w and D_k for directional consistency.
Two indicators ship together. An engine publishes 19 buffers for reuse by EAs/indicators and draws f_w, envelope fractiles, smoothed quantile mean...
π Read | Signals | @mql5dev
β€16π2π2π2
An MT5 Expert Advisor implements the Relative Moving Average framework based on fractiles rather than price levels. Each bar is ranked inside a trailing return distribution as a value in [0, 1], aiming to make thresholds portable across symbols and volatility regimes. The calculation is centralized in a companion indicator loaded via iCustom, so chart state and trading state cannot diverge, and the signal rules remain broker-independent.
All four cross-strategies are included: cross-reverse and cross-revert on both sides. Entries are armed at distribution extremes and triggered by subsequent quantile-bin crossings, not by the extreme itself. Exits use an Adaptive Crossover Exit that switches by regime between a full distribution crossover and an extremum revert trigger, with a separate adverse-movement safety exit and a re-entry block until median recross.
...
π Read | NeuroBook | @mql5dev
All four cross-strategies are included: cross-reverse and cross-revert on both sides. Entries are armed at distribution extremes and triggered by subsequent quantile-bin crossings, not by the extreme itself. Exits use an Adaptive Crossover Exit that switches by regime between a full distribution crossover and an extremum revert trigger, with a separate adverse-movement safety exit and a re-entry block until median recross.
...
π Read | NeuroBook | @mql5dev
π12β€11π2β‘1