ru
Feedback
MQL5 Algo Trading

MQL5 Algo Trading

Открыть в Telegram

The best publications of the largest community of algotraders. Subscribe to stay up-to-date with modern technologies and trading programs development.

Больше

📈 Аналитический обзор Telegram-канала MQL5 Algo Trading

Канал MQL5 Algo Trading (@mql5dev) языкового сегмента Английский является активным участником. Сейчас сообщество объединяет 524 633 подписчиков, занимая 149 место в категории Технологии и приложения и 5 место в регионе Великобритания.

📊 Показатели аудитории и динамика

С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 524 633 подписчиков.

Согласно последним данным от 21 июля, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило 12 218, а за последние 24 часа — 653, при этом общий охват остаётся высоким.

  • Статус верификации: Не верифицирован
  • Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 3.25%. В первые 24 часа после публикации контент обычно набирает 1.90% реакций от общего числа подписчиков.
  • Охват публикаций: В среднем каждый пост получает 17 063 просмотров. В течение первых суток публикация набирает 9 960 просмотров.
  • Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 36.
  • Тематические интересы: Контент сосредоточен на ключевых темах, таких как indicator, chart, mql5, candle, range.

📝 Описание и контентная политика

Автор описывает ресурс как площадку для выражения субъективного мнения:
The best publications of the largest community of algotraders. Subscribe to stay up-to-date with modern technologies and trading programs development.

Благодаря высокой частоте обновлений (последние данные получены 22 июля, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.

524 633
Подписчики
+65324 часа
+3 5757 дней
+12 21830 день
Архив постов
Parts 2–6 generate eleven one‑minute environment metrics. Acting on all of them in real time is impractical for sizing and ri
Parts 2–6 generate eleven one‑minute environment metrics. Acting on all of them in real time is impractical for sizing and risk controls, so Part 7 reduces the vector to a single regime label plus quality scores. RegimeClassifier() maps the metrics into six regimes: Normal, Stressed, Noisy, Informed, Trending, Mean‑Reverting. It returns confidence in [0,1] and a composite directional score in [-1,+1]. Boundaries are percentile thresholds calibrated on 514 NQ M1 sessions (May 2024–May 2026). Classification is rule-based with priority ordering: Stressed, Informed, Trending, Noisy, Mean‑Reverting, Normal. Reliability is the geometric mean of MFDFA fit confidence and flow_confidence; roll confidence is excluded. Deliverables include MARKET_REGIME, RegimeAnalysis, RegimeClassifier(), and PopulateRegimeAnalysis() calling Parts 2–6 sequentially. 👉 Read | Docs | @mql5dev

Quasimodo reversals are hard to trade manually because the “shape” is subjective and entries often feel late. This article tu
Quasimodo reversals are hard to trade manually because the “shape” is subjective and entries often feel late. This article turns the QM idea into a rule-based MT5 EA that detects the pattern, confirms it with a break of structure, then enters only after a retrace to the QM (left-shoulder) level. Detection is built on confirmed swing pivots: a pivot is accepted only after N bars close on both sides, then compressed into an alternating zig-zag by merging consecutive same-type pivots into the most extreme point. A prior-trend filter validates there was a real trend before the reversal. Execution is fully structured: entry at the QM line, invalidation beyond the head, target at the broken leg level, with optional close-back-through confirmation, reward/risk filtering, risk-based lot sizing, trailing/TP modes, trade-record syncing after restarts, and vi... 👉 Read | Signals | @mql5dev

Transformers bottleneck on market history because attention scales as O(N²), making multi-thousand-bar context too slow for l
Transformers bottleneck on market history because attention scales as O(N²), making multi-thousand-bar context too slow for latency-sensitive trading. Mamba replaces attention with Selective State Space Models, delivering O(N) sequence processing and effectively unbounded context. Its core gain is selective memory: SSM dynamics adapt to the input so the model reinforces regime shifts (volatility spikes, news-like shocks) while damping routine noise. The block design combines local convolution for short-term structure, a selective SSM for long memory, gating for controlled information flow, plus stability-focused initialization (HiPPO) and training with AdamW. Patching further reduces compute by turning bar groups into meaningful tokens. A MetaTrader 5 implementation (ModernAI_Expert.mq5) shows practical integration: normalized price/volume inputs,... 👉 Read | Quotes | @mql5dev

A free script is available for closing all open positions in compliance with FIFO rules. It can be attached to a chart via dr
A free script is available for closing all open positions in compliance with FIFO rules. It can be attached to a chart via drag-and-drop and will process open trades regardless of whether they are in profit or loss. Autotrading must be enabled before execution. After activation, the routine issues close requests in FIFO order until no eligible positions remain. Operational use should account for broker constraints, partial fills, and slippage, and should be validated on a demo environment before running on a live account. 👉 Read | Calendar | @mql5dev

Many EAs generate signals but lack an authorization layer between detection and execution. That gap causes premature entries,
Many EAs generate signals but lack an authorization layer between detection and execution. That gap causes premature entries, late trades after expiry, and interference from other EAs or manual orders. A discipline model can formalize setup lifecycle states: NO_SETUP, SETUP_FORMING, SETUP_CONFIRMED, SETUP_ACTIVE, SETUP_EXPIRED. Execution becomes state-driven, not pattern-driven. Trade authorization rules can be centralized in a CanTrade() gate: confirmation, expiry window, freshness, session filter, and a global lock. Enforcement is handled separately via CDisciplineGuardian: alert, auto-close, or auto-close plus terminal-wide lock. Visibility is provided by CDisciplinePanel with on-chart status for state, permission, expiry, freshness, session, and guardian mode. Integration into an EA routes every order through the layer before any execution call. 👉 Read | Docs | @mql5dev

Multi-symbol risk often gets understated when per-trade sizing is evaluated in isolation. During macro releases, EURUSD, GBPU
Multi-symbol risk often gets understated when per-trade sizing is evaluated in isolation. During macro releases, EURUSD, GBPUSD, and XAUUSD can move in the same direction on the same driver, turning three 1% allocations into a fast 3% portfolio hit. Single-instrument volatility is useful but incomplete for portfolios. The missing component is co-movement, captured by the covariance matrix. Portfolio variance is wᵀΣw, not the sum of individual variances; cross terms dominate when correlations rise. A practical MQL5 implementation centers on PortfolioRiskAnalyzer.mq5: fetch multi-symbol closes, compute log returns, assemble a returns matrix, then compute Σ via matrix.Cov() and risk via MatMul(). Recent MT5 builds back these operations with OpenBLAS for scalable linear algebra. 👉 Read | VPS | @mql5dev

Four intrabar entropy estimators—Shannon, Plug-In (w-grams), Lempel–Ziv complexity, and Kontoyiannis entropy rate—are ported
Four intrabar entropy estimators—Shannon, Plug-In (w-grams), Lempel–Ziv complexity, and Kontoyiannis entropy rate—are ported from a NumPy/Numba Python reference to practical MQL5 code for MetaTrader 5. The design works around MT5 constraints: intrabar ticks come only from the broker-limited CopyTicksRange() cache, so older bars are marked with a sentinel (ENT_EMPTY). Bars also require a minimum tick count to avoid meaningless estimates. Tick directions are encoded from bid changes into a compact ternary uchar stream {0,1,2}. Sequential estimators avoid missing Python primitives by using a base-3 hash for overlapping w-gram counts and a bounded look-back window to cap Kontoyiannis’ O(n²) search. Integration targets live use: a single Calculate() call per new bar updates feature arrays, with explicit sentinel checks to prevent trading on missing tick history.... 👉 Read | Signals | @mql5dev

MT5 restarts clear an EA’s in-memory state, resetting risk counters, regime flags, optimization schedules, and runtime toggle
MT5 restarts clear an EA’s in-memory state, resetting risk counters, regime flags, optimization schedules, and runtime toggles. Production systems need deterministic continuity, not a fresh start after every terminal interruption. The article builds a native MQL5 persistence layer using a readable key=value flat file in MQL5/Files/, avoiding SQLite, terminal GlobalVariables, and external dependencies. Flat files stay inspectable and per-EA, while GlobalVariables are shared, double-only, and opaque. The design is modular: a typed value wrapper with safe type inference, a strict line parser (whitespace, comments, key validation), a serializer for consistent formatting, and a CHashMap-backed cache for O(1) reads. Writes rewrite the small file (O(n)), trading simplicity for reliability and easy integration into existing EAs. 👉 Read | Forum | @mql5dev

Trading losses are usually tied to risk drift: daily limits get exceeded after a losing trade, drawdowns accumulate unchecked
Trading losses are usually tied to risk drift: daily limits get exceeded after a losing trade, drawdowns accumulate unchecked, and predefined rules are ignored at execution time. A MetaTrader 5 risk layer can remove that failure mode. An include-based EnhancedRiskManager.mqh centers on CEnhancedRiskManager, enforcing per-trade risk, daily drawdown, and total drawdown with conservative/moderate/aggressive presets, plus adaptive balance/equity drawdown measurement and state persistence via terminal globals. Stress test: an aggressive martingale grid (1.5x, 200-point steps, up to 8 positions, no SL). Baseline lifespan averaged 3.2 days with 100% drawdown. With limits (5% daily, 10% total, 2% per trade), the 9-year run stayed profitable: max daily DD 4.8%, max total DD 9.7%, total return 127%, using trade blocking, forced close near limits, and profit trailing. 👉 Read | Docs | @mql5dev

This article extends MT5 money management beyond linear lot scaling by adding a regime-aware circuit breaker for tail-risk, h
This article extends MT5 money management beyond linear lot scaling by adding a regime-aware circuit breaker for tail-risk, high-volatility periods. The core idea is to size positions based on how close current conditions are to historical liquidity failures, not just per-trade risk percentages. A KD-Tree maps market states into a 2D space (log returns, ATR) and uses fast nearest-neighbor queries to detect proximity to “crash” clusters. An Echo State Network adds low-latency temporal context via reservoir dynamics, producing a bounded lot-size multiplier that dampens exposure when return sequences look unstable. Implementation centers on an MQL5 CExpertMoney-derived class, using ATR for volatility normalization and MACD as a momentum vector to modulate behavior around detected risk zones, enabling modular switching between offensive and defensive siz... 👉 Read | AppStore | @mql5dev

Part 2 extends the Wyckoff EA from entry logic to exits using Wyckoff’s Law of Cause and Effect with a point-and-figure horiz
Part 2 extends the Wyckoff EA from entry logic to exits using Wyckoff’s Law of Cause and Effect with a point-and-figure horizontal count. A self-contained MQL5 Expert Advisor is built with a finite state machine: range detection, spring→SOS→LPS for longs, and upthrust→SOW→LPSY for shorts. Sequencing is enforced to reduce false positives; invalidation resets to idle. Take profit is computed from P&F: count line at LPS/LPSY, columns counted at that level, box size derived from range ATR (~0.25 ATR), and a 1-box reversal. Targets outside bounds fall back to 2R. Only Trade/Trade.mqh is required. 👉 Read | Calendar | @mql5dev

A single profitable MT5 backtest can hide whether an EA would survive prop-style constraints. This article adds a reusable MQ
A single profitable MT5 backtest can hide whether an EA would survive prop-style constraints. This article adds a reusable MQL5 evaluation module that simulates challenge rules during Strategy Tester runs: profit target, daily loss, overall drawdown, minimum trading days, and optional time limits. It normalizes tester balance/equity to a configurable “virtual” challenge account, then evaluates either one attempt or rolling attempts that restart daily/weekly/monthly to expose start-date sensitivity. Each attempt tracks state (dates, trading days, daily reference, status, failure/incomplete reason) and confirms breaches before marking a pass. Results are surfaced as an Experts journal summary plus an HTML dashboard with stats, attempt history, and optional charts, helping traders and developers diagnose whether failures come from daily limits, overall draw... 👉 Read | Calendar | @mql5dev

Premium Discount Range Mapper is an educational indicator for MT5 that maps a user-defined price range into Premium, Equilibr
Premium Discount Range Mapper is an educational indicator for MT5 that maps a user-defined price range into Premium, Equilibrium, and Discount zones to support market context analysis. The active range can be set manually or calculated automatically from a lookback period. With automatic mode, leaving Range High and Range Low at 0 makes the tool use the highest high and lowest low in the selected window. With manual mode, custom inputs define the zone boundaries. Output includes Range High/Low, the 50% Equilibrium level, and optional 25% and 75% reference levels. The zones are visual references only and are not trade signals. The indicator does not place orders, does not generate buy/sell calls, does not forecast direction, and does not guarantee outcomes. 👉 Read | VPS | @mql5dev

Multi-timeframe EAs can require hundreds of indicator handles when monitoring many symbols and timeframes. Eager creation in
Multi-timeframe EAs can require hundreds of indicator handles when monitoring many symbols and timeframes. Eager creation in OnInit() forces the terminal to connect feeds, sync history, allocate buffers, and register every handle upfront, which increases startup latency and wastes memory on rarely used combinations. A lazy-loading handle manager reduces this cost by creating handles only when requested, sharing identical configurations via reference counting, and centralizing cleanup through a single FlushAll() in OnDeinit(). The cache uses a composite key: symbol + EnumToString(timeframe) + integer indicator type + serialized parameters. Parameters should be serialized with IntegerToString() and fixed DoubleToString() to avoid locale-dependent keys. Release decrements ref counts and calls IndicatorRelease() only at zero, preventing orphaned handles across relo... 👉 Read | Quotes | @mql5dev

Breakeven and trailing stops are dynamic, so an MT5 terminal restart can break trade management even when the position stays
Breakeven and trailing stops are dynamic, so an MT5 terminal restart can break trade management even when the position stays open. The missing pieces are not just virtual SL/TP levels, but the decision history: whether breakeven already fired, whether trailing is active, and the last price that advanced the trail. This part extends the recovery architecture by persisting that state in SQLite. Breakeven becomes a one-time transition tracked by a breakevenActivated flag, saved immediately when the virtual stop is upgraded. Trailing is treated as an evolving workflow. A lastTrailPrice marker plus step/distance rules prevents repeated updates and lets the EA resume trailing from the exact progression point after restart. Runtime management centralizes breakeven, trailing, virtual exits, and heartbeat updates, continuously saving state so recovery restores cont... 👉 Read | Forum | @mql5dev

Standard moving averages miss a key intraday detail in MT5: they ignore tick volume, so a high-impact news candle can distort
Standard moving averages miss a key intraday detail in MT5: they ignore tick volume, so a high-impact news candle can distort “fair value” and trick EAs into pullbacks far from where real liquidity concentrated. This article implements a daily-reset VWAP with volume-weighted deviation bands, using typical price (HLC/3) and tick volume. It enforces closed-bar calculations (shift=1) and a hard reset at 00:00 broker time, treating VWAP as a liquidity anchor rather than fixed support/resistance. The core is a reusable VWAP_Engine.mqh class: midnight is found via MqlDateTime (robust to missing bars), rates are loaded with CopyRates and ArraySetAsSeries, and a two-pass loop computes VWAP then volume-weighted variance with zero-volume safeguards. The same engine powers both an indicator (fast updates via prev_calculated) and a pullback EA (new-bar gate, CTrade, mean-... 👉 Read | Forum | @mql5dev

Entropy features for ML can be derived from the information content of tick-rule direction sequences inside each bar. Four es
Entropy features for ML can be derived from the information content of tick-rule direction sequences inside each bar. Four estimators are commonly used: Shannon (marginal distribution), plug-in block entropy (w-grams), Lempel-Ziv complexity (compressibility), and Kontoyiannis entropy (entropy rate via average match length). A production issue in afml.features.entropy was traced to Numba usage: applying @njit to functions consuming Python strings forced silent object-mode fallback, leaving interpreter overhead while appearing JIT-accelerated. Converting messages to uint8 at the boundary and running pure nopython kernels removed the bottleneck. Three fixes were applied: a corrected Kontoyiannis match-length kernel (including overlap handling), a Lempel-Ziv phrase-library membership check aligned with the greedy parsing definition, and a plug-in trunca... 👉 Read | Quotes | @mql5dev

Grey models (GM) are being used as forecasting and smoothing tools when market data is limited, noisy, or non-stationary. Cor
Grey models (GM) are being used as forecasting and smoothing tools when market data is limited, noisy, or non-stationary. Core requirements are minimal: at least 4 points, strictly positive values, equal sampling intervals, and no gaps. GM(1,1) applies an Accumulated Generating Operation (AGO) to reduce noise, then fits parameters via a discretized form and OLS. The same closed-form allows both smoothing and multi-step forecasts, with strong behavior on linear trends. Extensions include Rolling GM (averaging multiple GM windows) and adaptive weighting based on forecast error. GM(1,1) can also build trend channels by deriving bounds from parameter ranges. Discrete variants avoid fragile symbolic math and enable GM(0,2), GM(1,2), and GM(2,1) style models. They are typically most reliable for 1-step-ahead forecasts, with higher horizons adding compl... 👉 Read | Signals | @mql5dev

Systematic trading based on price-only signals remains under-specified compared with HFT, arbitrage, options, or spread frame
Systematic trading based on price-only signals remains under-specified compared with HFT, arbitrage, options, or spread frameworks. Two practical directions are usually considered: ML “black box” models with ongoing retraining, or an explicit theory of price formation with factors encoded into rules. A baseline empirical observation is that, across instruments and timeframes, bullish and bearish candles tend toward a 50/50 split on large samples. Short windows deviate, and the mean-reversion speed back to that balance appears instrument-specific and relatively stable. A prototype EA design uses this imbalance: scan N within MinBars..MaxBars, trigger when bullish/bearish share exceeds OpenPerc, trade contrarian in a position series, size lots by expected series length, and exit via profit-per-lot, imbalance normalization (ClosePerc), or equity floor. 👉 Read | Signals | @mql5dev

Net profit and win rate can hide where returns actually come from. A strategy may look stable while a small set of outlier tr
Net profit and win rate can hide where returns actually come from. A strategy may look stable while a small set of outlier trades carries most of the result. Profit Concentration Analyzer processes closed trades from a CSV (Date, Profit) and prints a report in the Experts tab. It quantifies concentration via the gross-profit share from the top 1%, 5%, 10%, 25% and 50% of winners, plus the net-profit share from the Top-N largest trades. It also calculates the Gini coefficient for winner inequality. Robustness checks include a survival test that removes the best winners by a configurable percentage and recomputes net profit and profit factor, and a day-consistency check that compares the best day against a prop-firm-style limit (PASS/FAIL). A composite A+ to F score summarizes concentration, consistency, and survival, with targeted recommendations. Input exp... 👉 Read | CodeBase | @mql5dev