MQL5 Algo Trading
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) языкового сегмента Английский является активным участником. Сейчас сообщество объединяет 513 021 подписчиков, занимая 152 место в категории Технологии и приложения и 5 место в регионе Великобритания.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 513 021 подписчиков.
Согласно последним данным от 23 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило 8 960, а за последние 24 часа — 152, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 3.48%. В первые 24 часа после публикации контент обычно набирает 1.78% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 17 846 просмотров. В течение первых суток публикация набирает 9 117 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 41.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как 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.”
Благодаря высокой частоте обновлений (последние данные получены 24 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
Загрузка данных...
| Дата | Привлечение подписчиков | Упоминания | Каналы | |
| 23 июня | +155 | |||
| 22 июня | +619 | |||
| 21 июня | +142 | |||
| 20 июня | +54 | |||
| 19 июня | +393 | |||
| 18 июня | +287 | |||
| 17 июня | +95 | |||
| 16 июня | +468 | |||
| 15 июня | +635 | |||
| 14 июня | +309 | |||
| 13 июня | +57 | |||
| 12 июня | +366 | |||
| 11 июня | +203 | |||
| 10 июня | +373 | |||
| 09 июня | +291 | |||
| 08 июня | +713 | |||
| 07 июня | +238 | |||
| 06 июня | +72 | |||
| 05 июня | +96 | |||
| 04 июня | +492 | |||
| 03 июня | +641 | |||
| 02 июня | +521 | |||
| 01 июня | +143 |
| 2 | Static-weight SMA/EMA filters can’t handle regime shifts: they jitter in tight ranges and lag on breakouts. This piece replaces the fixed blend with a scalar Kalman smoother where the per-bar Kalman Gain becomes the optimal, adaptive weight between the latest close and the prior estimate.
The model treats price as a latent “true” state with a random-walk process and noisy measurements. Process noise Q and measurement noise R are estimated online from rolling variances of returns and price deviations, then floor-clamped to avoid zero-volatility degeneration.
Implementation details focus on MT5 usability: a native MQL5 indicator with controlled warmup, stable single-pass rolling variance, incremental OnCalculate updates, and Kalman Gain exposed in the Data Window via an invisible INDICATOR_DATA plot (clrNONE) without adding chart clutter.
👉 Read | AppStore | @mql5dev | 7 543 |
| 3 | MetaTrader 5 object events provide a structured way to react to chart object lifecycle changes, including click, move, property edits, creation, and deletion. Most of these notifications are disabled by default and must be explicitly enabled, reducing overhead when object monitoring is not required.
Event-based handling avoids constant polling of object state, which increases CPU use and complexity. It also supports defensive logic when users modify application-owned objects, intentionally or accidentally.
A practical case is object duplication via Ctrl+drag. MT5 generates a new standardized name (timeframe, object type, random suffix), which can be used to detect likely duplicates and enforce rules such as single-instance informational objects.
👉 Read | Forum | @mql5dev | 8 284 |
| 4 | Work on a MetaTrader 5 custom crosshair indicator in MQL5, built from mouse event handling without requiring OOP.
Key point is converting OS screen X/Y into chart time/price via ChartXYToTimePrice, then driving OBJ_VLINE and OBJ_HLINE with those values. Intraday timestamps on higher timeframes are expected due to fractional coordinate mapping.
Implementation evolves from always-on crosshair to middle-button toggle, then adds hide/show control via a key event. Price is normalized to the symbol tick size to keep the horizontal line on valid tradable prices.
Final step extracts the crosshair logic into a header, adds a structure to return current mouse-derived values, and keeps the indicator file minimal for reuse across tools.
👉 Read | Signals | @mql5dev | 9 016 |
| 5 | Many MT5 trading models fail live because they overfit history and don’t cope with regime shifts; accuracy often collapses to the low‑50% range with large drawdowns. The article proposes a “quantum-inspired” architecture that treats market signals as interacting components: superposition (conflicting multi-timeframe evidence), interference (signals reinforcing/canceling), decoherence (event impact decays), and resonance (cycle alignment amplifies trends).
The EA processes 400+ quantized features (price, volume, indicators, patterns, time/cycle signals) through a pipeline combining quantum-style signal processing, multi-level memory, Markov regime states, transformer attention, and a 256-dim state-space model for long-horizon dynamics. It also uses dynamic class weighting to improve recall on rare strong-move events.
Delivered as MQL5 source (Simpl...
👉 Read | NeuroBook | @mql5dev | 9 368 |
| 6 | MetaTrader 5 frames AI trading as an end-to-end engineering workflow: terminal-grade market data, research in Python, model deployment, deterministic testing, and automated execution in one ecosystem. The emphasis is on turning ideas into reproducible systems, not persuasive predictions.
Python integration pulls bars, ticks, symbol specs, and account state directly from the terminal, reducing train/live data mismatches. Trained models can be exported to ONNX and embedded into MQL5 EAs, keeping inference local and testable in the Strategy Tester.
For LLM-assisted analysis, WebRequest can power an on-chart assistant, but external services are non-deterministic and unavailable in the Strategy Tester. The practical pattern is structured LLM outputs plus an “AI signal dispatcher” that validates confidence, margin, broker limits, duplicates, and strategy r...
👉 Read | NeuroBook | @mql5dev | 9 470 |
| 7 | A time-based exit routine can be built by storing configured hour and minute values, then checking the platform time on each tick. When the current time matches the configured schedule, the logic can run only once per day to prevent repeated triggers.
A separate date check should confirm that the current weekday is Friday before acting. If not Friday, the routine should exit without changes.
When both conditions are met, filter open positions by symbol (currency pair) and evaluate profit per position. Close only positions with positive profit, leaving losing or zero-profit positions untouched. Use reliable order/position iteration, handle partial fills, validate trade permissions, and log close results and error codes for auditing.
👉 Read | Signals | @mql5dev | 10 173 |
| 8 | The article reframes “market physics” as modeling price with measurable components rather than intuitive narratives. Since price is discrete, derivatives are treated as average changes over a fixed step, and only statistical properties (expectation, variance) are considered realistically exploitable.
A practical simplification is proposed: approximate the predictable component via market-player pressure, expressed as the imbalance between aggregated buy and sell volumes. To avoid unreliable, broker-specific tick streams, the model prefers bar data (O/H/L/C) for stability and speed.
It then outlines four ways to extract patterns—hand-built formulas, order-flow simulation, general mathematical principles, and machine learning—highlighting a position-simulator EA that places stop/limit/market order grids per bar, updates incrementally, and trades on the evolvi...
👉 Read | Forum | @mql5dev | 15 923 |
| 9 | An Expert Advisor design combines three standard building blocks: ADX for trend strength confirmation, EMA for pullback timing, and ATR for volatility-scaled risk controls. Signal processing is restricted to closed bars on a selectable indicator timeframe and evaluated once per new bar.
Entry requires ADX above a threshold and rising versus the prior bar, filtering out flat or weakening conditions. A pullback is identified when the price-to-EMA distance (normalized by ATR) transitions from at-or-above a configured ratio to below it on the next bar, indicating a completed approach-and-rejection sequence.
Direction is taken from +DI and -DI on the prior bar, with optional buy-only or sell-only constraints. Stop loss is set as ATR multiplied by an SL factor, while take profit is derived via a fixed risk-reward ratio. Execution enforces one open position per sy...
👉 Read | Forum | @mql5dev | 14 481 |
| 10 | Retail volume bars report transaction count per period, but without price response they add little. High volume with limited price progress often signals absorption rather than trend strength, with aggressive flow being met by resting liquidity.
Kyle’s Lambda measures liquidity density via a simple impact ratio: |ΔPrice|/Volume. The result approximates the cost to move price by one point, separating real participation from low-quality moves driven by thin liquidity.
Low lambda during high volume indicates absorption and potential accumulation or distribution zones. High lambda spikes flag liquidity vacuums where small volume produces outsized gaps and unstable continuation.
Implementation notes for MT4 include backward-index parsing to minimize CPU load in a single-threaded runtime, plus division guards for session opens, weekend gaps, and zero-v...
👉 Read | Calendar | @mql5dev | 17 052 |
| 11 | Part 2 moves from option emulation theory to a working MT5 EA that trades the underlying while tracking an emulated option’s delta. The EA converts “emulation levels” into real positions and continuously rebalances to keep the synthetic exposure aligned with the selected construction (Long/Short Call/Put), using daily expiration.
The design introduces an option-construction base class built on MQL5’s CList, letting developers compose portfolios and compute total delta by iterating contained options. A range-setting method normalizes delta behavior per strike, making future multi-leg strategies straightforward to extend.
On each tick, the EA updates the current level, adds or closes market positions when the level changes, and fully exits at level zero or at the forced expiration time. Practical details include lot-step normalization, magic-number encoding p...
👉 Read | NeuroBook | @mql5dev | 15 100 |
| 12 | AlternativeBarsViewer adds in-terminal inspection for the 10 alternative bar types from López de Prado, using the same CBarConstructor hierarchy as BarBuilderEA to keep outputs consistent across EA, indicator, and Python checks.
Three data sources are supported: real ticks via CopyTicksRange with millisecond deduplication, synthetic ticks derived from chart OHLC, and replay from the EA’s per-type CSV with auto reload on file size changes. Tick and OHLC modes also show the current forming bar.
Rendering uses DRAW_COLOR_CANDLES with buffers for OHLC plus a color index. Closed bars can be projected by time-slot alignment or packed sequentially by index. Colors separate bullish, bearish, and in-progress bars, and surface degenerate bars that close with minimal tick volume.
A lightweight subwindow panel reports bar stats, degenerate counts, last times...
👉 Read | NeuroBook | @mql5dev | 13 628 |
| 13 | Adding timing, logging, or filtering directly into an RSI class turns one indicator into a shared container for unrelated concerns. Each edit increases regression risk, expands the test matrix across EAs, and raises merge-conflict probability. These concerns belong to usage context, not to RSI computation.
A decorator chain keeps the core indicator closed for modification. All components implement IIndicator with GetValue(shift) and GetName(). Decorators wrap an IIndicator pointer, delegate calls downward, then add behavior before or after the delegation. The EA holds only the outermost IIndicator*.
Typical stack: CTimingDecorator → CLoggingDecorator → CThresholdFilterDecorator → CRSIIndicator. Order matters: side-effect decorators observe; filters transform values. Ownership is hierarchical: deleting the outermost decorator frees the entire chain safely.
👉 Read | AppStore | @mql5dev | 12 955 |
| 14 | DA-CG-LSTM targets dynamic multivariate time series where volatility and latent drivers degrade classical forecasting. The design combines dual attention with a modified CG-LSTM to separate relevant signals from noise while retaining both long-range dependencies and short-term reactions.
Feature attention reweights inputs per timestep, then temporal attention selects informative history windows. The CG-LSTM block adds control over memory updates using feature and time relevance, improving stability on long sequences and reducing stochastic artifacts.
Implementation work in MQL5 consolidates existing components: a linear attention module reused from Hidformer and a previously implemented CG-LSTM block. Model design extends beyond point forecasts by integrating an encoder latent space with an Actor-Director-Critic RL stack, plus a probabilistic trend m...
👉 Read | Calendar | @mql5dev | 11 664 |
| 15 | This part extends an MQL5 replay/simulation stack by turning a SQLite helper class from “run scripts only” into a component that can execute SELECT queries and expose result sets to MQL5 code.
It highlights a behavioral mismatch in MT5’s built-in SQLite (Build 3815): dropping tables with active foreign-key relationships can fail when the same script is executed again shortly after, while standalone SQLite may succeed. A practical workaround is deleting the database file and recreating it from embedded SQL resources.
On the implementation side, the database is built from two embedded scripts: one for schema, one for seed data. Query support is added via DatabasePrepare for prepared statements, DatabaseFinalize to release prior statements, and a separate read step to consume results, avoiding redundant queries and improving performance for trading tools.
👉 Read | Forum | @mql5dev | 10 931 |
| 16 | MetaTrader 5 does not emit mouse events for chart apps by default to protect performance, so indicators and EAs must explicitly enable only the required mouse resources and reliably disable them on shutdown. Failing to “turn off what was turned on” can leave a chart generating unnecessary events and degrade responsiveness.
Mouse input is received through OnChartEvent, with separate handling for move and wheel actions. Mouse coordinates are reported only inside the chart’s client area, using chart-local coordinates, and values often need explicit type conversion before display or logic.
The article also covers controlled capture of mouse buttons and related UI controls. Developers can temporarily block built-in chart behaviors (dragging, context menu, crosshair, keyboard scrolling/zoom, ENTER symbol input) to avoid conflicts, but must restore default...
👉 Read | Forum | @mql5dev | 10 934 |
| 17 | The SymbolInfo sample has been reworked from a single source file plus two headers into a three-file variant where each unit now contains two functions and explicit call sites. Output rendering was also redesigned to improve readability and consistency.
Nine output fields were added. Seven are standard symbol attributes, with two additional risk-related values: Margin Required (MT4 naming) and Standard Leverage. Margin Required is derived from the symbol’s Margin Calc Mode, while Standard Leverage is derived from Margin Required and may differ by volume depending on broker rules.
All formulas and calculation steps follow the standard MQL5 documentation.
👉 Read | AppStore | @mql5dev | 10 434 |
| 18 | CoSO (Community of Scientists Optimization) is an optimization algorithm published in 2012 by A. Milani and V. Santucci. It models a research community: agents publish to journals, compete for limited funds, form local groups, and keep diversity via funded outsiders. Population size can change during runtime.
Each agent maintains position x, velocity v, personal best b, funds m, strategy s, and journal selection probabilities ρ. Velocity update combines inertia, cognitive pull to b, and a weighted social term from journal entries; position updates as x(t)=x(t-1)+v(t).
Journals act as shared memory, storing the top-k solutions, updated only when a submission improves the worst entry. Funds are redistributed by rank roulette; inactive agents drop out when m reaches zero. Outsider share Ω adapts using fitness standard deviation, while successful agent...
👉 Read | Calendar | @mql5dev | 12 093 |
| 19 | Standard indicators capture level, range, and volatility, but miss trajectory shape. Two EURUSD windows can match mean close, average range, and realized volatility while producing different phase-space paths: an elongated arc versus a closed loop.
Topological Data Analysis focuses on invariants across scales and represents signal as birth-death pairs in a persistence diagram. The prerequisite step is converting a 1D series into a higher-dimensional point cloud, then defining a distance metric over that cloud.
Takens time-delay embedding constructs vectors (x[i], x[i+tau], …) with user-controlled embDim and delay. The implementation uses CTDAPointCloud as a flat buffer for cache-friendly access.
CTDADistance builds an NxN symmetric distance matrix under Euclidean, Manhattan, or Chebyshev norms, tracking max distance for later filtrations.
👉 Read | CodeBase | @mql5dev | 12 310 |
| 20 | Chart objects can now be edited after placement via a floating property ribbon. The update replaces fixed-at-creation styles with descriptor-driven editing and a snapshot-based preview/rollback model.
Four components back the system: per-tool property descriptors, engine get/set by string ID, widget renderers per property type, and a ribbon that binds widgets to the selected object and applies changes live.
Descriptors define type, label, range, defaults, and visibility for ribbon vs settings. Composite types cover compact rows, per-level lists for Fibonacci/Gann, and action entries.
Engine property access resolves object ID, dispatches by property ID, supports per-level arrays, and rejects non-applicable properties cleanly. Changes can be previewed immediately and reverted on cancel.
👉 Read | Forum | @mql5dev | 11 921 |
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
