ch
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) 英语 语言赛道中的 是活跃参与者。目前社区聚集了 507 410 名订阅者,在 技术与应用 类别中位列第 155,并在 英国 地区排名第 5

📊 受众指标与增长动态

невідомо 创建以来,项目保持高速增长,吸引了 507 410 名订阅者。

根据 03 六月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 10 171,过去 24 小时变化为 635,整体触达仍然可观。

  • 认证状态: 未认证
  • 互动率 (ER): 平均受众互动率为 4.00%。内容发布后 24 小时内通常能获得 1.99% 的反应,占订阅者总量。
  • 帖子覆盖: 每篇帖子平均可获得 20 295 次浏览,首日通常累积 10 085 次浏览。
  • 互动与反馈: 受众积极参与,单帖平均反应数为 37
  • 主题关注点: 内容集中在 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.

凭借高频更新(最新数据采集于 04 六月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。

507 410
订阅者
+63524 小时
+2 0597
+10 17130
帖子存档
DEA (Dolphin Echolocation Algorithm) is a population-based optimizer aimed at trading-robot parameter tuning. Agents evaluate
DEA (Dolphin Echolocation Algorithm) is a population-based optimizer aimed at trading-robot parameter tuning. Agents evaluate candidates, broadcast influence within an effective radius Re, and build an accumulated fitness (AF) prospectivity map. PP (predetermined probability) increases over epochs using Power to shift from wider sampling to stronger reuse of high-quality regions. A key detail is AF reset for the current best location, which reduces early collapse into a single point and keeps neighborhood probing active. Re controls locality: small Re tightens search, mid values balance, large Re spreads influence but reduces precision. Implementation notes cover S_Alternative and S_Coordinate storage, plus a DEA class with Init/Moving/Revision and internal routines for PP, AF, best-location reset, and next-location selection. Memory cost scales with... 👉 Read | Freelance | @mql5dev

This part of the market simulation series shifts from basic SELECT queries to the core of relational design: primary and fore
This part of the market simulation series shifts from basic SELECT queries to the core of relational design: primary and foreign keys, used to preserve data integrity and prevent duplicate or inconsistent records. It also recommends moving beyond MetaEditor’s minimal SQLite support when learning database concepts, using DB Browser for SQLite to edit, save, and run SQL scripts in a database-focused environment. The article ties SQL back to algorithmic trading infrastructure: MT5 tools can reach databases over sockets, enabling scalable data flows between terminals, Excel, and server-hosted SQL. The key takeaway is to rely on SQL and proper schema constraints instead of reinventing database behavior in code, keeping systems reusable across applications. 👉 Read | Calendar | @mql5dev

The article contrasts “static” MT5 indicators built with compilation directives versus “dynamic” ones configured at runtime t
The article contrasts “static” MT5 indicators built with compilation directives versus “dynamic” ones configured at runtime through standard library calls. Removing directive-based plot definitions compiles but produces no output until buffers, plots, and color palettes are explicitly set in OnInit. A key takeaway: runtime configuration enables changing visual behavior without recompiling, but it can hide options in the indicator dialog until after the first attach, and user color changes may reset when the chart is rebuilt (e.g., timeframe change). The approach becomes practical when an indicator must adapt to chart modes. By reading the current mode via ChartGetInteger (ENUM_CHART_MODE), the code can switch drawing logic so Inside Bar rendering matches candles, bars, or line charts, improving robustness across chart types. 👉 Read | Docs | @mql5dev

A MetaTrader 4 release is available for the previously published MetaTrader 5 implementation of the Nadaraya-Watson estimator
A MetaTrader 4 release is available for the previously published MetaTrader 5 implementation of the Nadaraya-Watson estimator. The MT4 version mirrors the MT5 logic, focusing on kernel-based smoothing for price series and producing the same type of output expected from the original indicator. Recommendations remain unchanged from the MT5 release, including the same usage conditions, parameter considerations, and limits noted in the prior publication. 👉 Read | NeuroBook | @mql5dev

A lightweight chart indicator displays a configurable info panel with spread statistics updated on every tick. The panel show
A lightweight chart indicator displays a configurable info panel with spread statistics updated on every tick. The panel shows current spread in points and pips, plus session minimum, session maximum, and a running arithmetic mean since attachment. Current spread output switches between two user-defined colors based on a wide-spread threshold in points. This supports quick identification of elevated execution costs during events such as session opens, scheduled news, or low-liquidity windows. Configuration includes normal and wide colors, threshold level, font size, and X/Y offsets for placement. Implementation uses OBJ_LABEL only and does not draw indicator buffers, keeping the price chart unchanged. Statistics reset on reattach or terminal restart, and the tool works across all symbols and timeframes. 👉 Read | AlgoBook | @mql5dev

An on-chart XAUUSD/Gold dashboard for MetaTrader 5 focused on learning, observation, and fast market context. It does not ope
An on-chart XAUUSD/Gold dashboard for MetaTrader 5 focused on learning, observation, and fast market context. It does not open or close trades, manage positions, or send signals. All values should be treated as informational market data. The panel aggregates standard platform indicators and symbol info into a compact view: live spread (points), H1 ATR volatility, H1 EMA trend bias, H4 EMA trend filter, H1 RSI state, daily range (D1 high-low), a basic session label, and optional standard/cent account text detection. Three visual themes and a configurable refresh timer are included. Usage is limited to attaching the indicator to an XAUUSD chart; it can be viewed on any timeframe since it reads H1/H4 internally. Parameters cover panel placement, ATR/EMA/RSI periods, low/high ATR thresholds, and a spread warning level. Educational utility only; no forecast... 👉 Read | Freelance | @mql5dev

MetaTrader 5 candles use fixed time widths, so high-activity and low-activity periods can look identical. The EquiVolume appr
MetaTrader 5 candles use fixed time widths, so high-activity and low-activity periods can look identical. The EquiVolume approach fixes this by encoding volume into candle width while keeping price range as height, making participation visible directly in the chart structure. The indicator is built in MQL5 as a separate subwindow and draws everything with rectangle objects rather than plot buffers. It auto-selects real volume when available, otherwise falls back to tick volume, keeping it broker-agnostic. Core logic: scan a lookback range to find max volume, normalize each bar’s volume to that reference, map it to a user-defined maximum width, then draw wick-range and body rectangles with bull/bear coloring. Performance is kept stable by updating existing objects, running once per new bar, and removing off-range rectangles. 👉 Read | NeuroBook | @mql5dev

Many strategy failures in live trading come from execution, not signal logic. Spread expansion, erratic tick flow, quote gaps
Many strategy failures in live trading come from execution, not signal logic. Spread expansion, erratic tick flow, quote gaps, and slippage can erase expected value, while remaining invisible on candlestick charts. This EA is built as an execution-quality filter placed between strategy rules and the market. Per symbol, it maintains tick buffers, spread history, and volatility profiles, then blocks trading unless spread, tick velocity, quote gaps, micro-volatility, and execution stability stay within thresholds. Only after conditions are stable does a liquidity sweep continuation module activate. It waits for a stop-hunt, requires noise settlement and a structure shift, then applies exposure caps, correlation limits, and equity-scaled sizing. Direction accuracy is not the objective; fill quality is. 👉 Read | CodeBase | @mql5dev

Part II extends structured logs with two internal diagnostics: a lightweight profiler that writes CSV timing summaries, and a
Part II extends structured logs with two internal diagnostics: a lightweight profiler that writes CSV timing summaries, and a minimal unit-test harness for pure trading logic. PerfMeter.mqh measures named sections, aggregates microseconds, and reports calls, total, min/max, average, and slow-call counts under a per-section threshold. The intent is stable, comparable reports across Strategy Tester runs, with clear section names and controlled sampling. TestLite.mqh runs deterministic assertions, collects all failures, and writes a plain text report. TradeMathCore.mqh isolates testable helpers such as pip/point conversion, volume normalization, stop-distance checks, and MA crossover classification. ProfilerExampleEA.mq5 profiles event-driven paths without trading; UnitTestRunner.mq5 verifies rules before longer tester passes. 👉 Read | Docs | @mql5dev

This article connects AFML-style bet sizing to a safe pyramiding engine in MetaTrader 5 by inserting a small adapter layer, C
This article connects AFML-style bet sizing to a safe pyramiding engine in MetaTrader 5 by inserting a small adapter layer, CPyramidBridge. The sizing module decides risk as a signed bet_size in [-1, 1]; the pyramid engine decides how to express that risk as multiple entries with strictly decreasing lots and a single stop that advances so total risk drops after each add-on. Five integration points replace hardcoded engine parameters with live sizing outputs: probability-calibrated initial/add-on lots (with floor-to-step logic and trade skipping when ratios collapse), a budget-based entry gate using concurrent signal occupancy, a forecast-driven add-on trigger using BetSizeDynamic, a reserve-based adaptive trailing stop using EF3M CDF, and synchronization of the sizing signal arrays when the pyramid closes to prevent concurrency overcounts. Implementation... 👉 Read | AlgoBook | @mql5dev

Multi-symbol entry logic in MQL5 often ends up in hard-coded multidimensional arrays, with limited relational state managemen
Multi-symbol entry logic in MQL5 often ends up in hard-coded multidimensional arrays, with limited relational state management and increasing maintenance risk as strategies scale. A proposed alternative is a Wizard-integrated signal class, CSignalBTreeBayesian, combining SQLite-style B-Tree indexing with a Bayesian neural network uncertainty filter. Parameters exposed to Wizard: BTreeMode (1–4), UseBayesian, MaxUncertainty. BTreeMode supports direct lookup, range scan, depth discrepancy search, or a hybrid. The BNN runs repeatable Monte Carlo passes per bar (seeded by timestamp) to produce mean and variance, rejecting trades when variance exceeds MaxUncertainty. This shifts signals from deterministic execution toward confidence-gated execution in noisy regimes. 👉 Read | Quotes | @mql5dev

Repeated trade utilities remain a common source of bugs and inconsistent behavior across MQL5 EAs. Centralizing them into inc
Repeated trade utilities remain a common source of bugs and inconsistent behavior across MQL5 EAs. Centralizing them into include modules reduces duplication and makes maintenance and reviews more predictable. A reusable positions layer typically covers position existence checks and counters with optional filters (symbol, magic, type, ticket), plus bulk close helpers including profitable/losing filters. Additional utilities return the newest or oldest position by open time for grid, pyramiding, and time-based logic. A companion orders module mirrors the same patterns for pending orders: exists, count, recent/oldest selection, and cancel routines. Positions and orders stay separate to match MT5’s object model and execution differences. A minimal SMA(10/20) crossover reversal EA demonstrates cleaner strategy code by delegating selection, counting, and clo... 👉 Read | CodeBase | @mql5dev

A two-part MQL5 series outlines a framework for portable, reusable, maintainable indicators, starting from a minimal applied-
A two-part MQL5 series outlines a framework for portable, reusable, maintainable indicators, starting from a minimal applied-price line and refactoring into a template. The first section formalizes incremental recalculation using rates_total and prev_calculated, then hardens OnCalculate for Strategy Tester batching via tester_everytick_calculate and edge cases like rates_total=1. The next steps move logic into .mqh headers and OOP modules. Applied price becomes a CAppliedPrice sub-indicator with its own buffer and onCalculate, reducing coupling. Global state is removed by introducing a root CIndicator object. Input handling is isolated using a params object pattern with a base class in headers and a derived class near the input variables to avoid leaking inputs into core modules. 👉 Read | Signals | @mql5dev

Two recent TASC articles (July and August 2021) described Moving Average Bands and Band Width as trend-following tools. The m
Two recent TASC articles (July and August 2021) described Moving Average Bands and Band Width as trend-following tools. The method tracks a shorter-term moving average relative to a longer-term moving average, rendering bands that help quantify directional bias and consolidation versus expansion. An updated implementation keeps the original logic but adds one practical parameter: the input price can be selected instead of being fixed to Close. This allows testing against Open, High, Low, Median, Typical, or Weighted prices depending on the market and timeframe. Operationally, the bands can be interpreted in a similar manner to Bollinger Bands, with band expansion and contraction used to gauge volatility regime changes while maintaining a moving-average trend framework. 👉 Read | Forum | @mql5dev

Candlestick patterns can be treated as ordered strings once each candle is encoded into a finite alphabet (e.g., bullish “AHE
Candlestick patterns can be treated as ordered strings once each candle is encoded into a finite alphabet (e.g., bullish “AHEGD”, bearish “ahegd”). This converts price-action pattern search into a permutation problem that can be exhaustively counted and generated in MQL5. Two cases are covered: permutations without repetition, computed as P(n,r)=n!/(n-r)! (or efficiently via a descending product), and permutations with repetition, computed as n^r. The article shows how quickly the search space grows as r increases, making manual pattern discovery unrealistic. An MQL5 utility is built in two parts: a calculator that validates inputs and reports counts, and generators that output all sequences as string arrays. The generators use recursive backtracking, with a “used” mask for no-repetition and free reuse for repetition, enabling systematic backtests ... 👉 Read | AppStore | @mql5dev

MMAR research in Python has covered data loading, partition scaling, Hurst extraction, spectrum fitting, cascade construction
MMAR research in Python has covered data loading, partition scaling, Hurst extraction, spectrum fitting, cascade construction, fBM generation, Monte Carlo tests, and benchmarking versus GARCH, with MMAR showing stronger results. Operational use in MetaTrader 5 requires a native MQL5 implementation. The current focus is a dependency-free library that reacts per tick and integrates with Strategy Tester without bridge processes or IPC latency. Work starts with the Partition Analysis engine in MQL5. It computes S_q(dt) across log-spaced time scales and a q-grid, runs OLS on log-log fits to obtain tau(q), estimates H via tau(q)=0 with GHE as fallback, and applies diagnostics to confirm multifractality from scaling quality and curve shape. 👉 Read | Quotes | @mql5dev

This installment tackles a recurring issue in an MQL5 volatility library ported from Python’s ARCH: identical data and starti
This installment tackles a recurring issue in an MQL5 volatility library ported from Python’s ARCH: identical data and starting values produced noticeably different GARCH-family parameters in MetaTrader 5. Log-likelihood verification with fixed Python parameters showed the MQL5 objective was correct, narrowing the mismatch to the optimizer’s behavior rather than model math. To improve cross-platform parity, the library replaces ALGLIB’s minNLC (penalty/interior-point style) with SLSQP, matching ARCH’s approach. SLSQP solves a sequence of quadratic subproblems, enforces constraints via an active-set method, and targets KKT satisfaction—useful for variance non-negativity and stationarity constraints that must be respected tightly. An MQL5-native SLSQP (Fortran Kraft port) is integrated via CSLSQP, adding constraint abstractions, optional variable clippi... 👉 Read | VPS | @mql5dev

Utility script sets Stop Loss on all open positions using a per-position maximum loss defined in the account deposit currency
Utility script sets Stop Loss on all open positions using a per-position maximum loss defined in the account deposit currency (for example, 50 units). The calculation works across any forex symbol and deposit currency by using SYMBOL_TRADE_TICK_VALUE_LOSS for automatic conversion. For each position, the script derives an SL price that targets the configured loss if hit, then validates broker stop and freeze levels before sending a modification request. Positions are skipped when the existing SL is already within one tick of the target. If market movement makes the computed SL invalid under broker constraints, the script leaves the position unchanged and logs a specific reason for the rejection, enabling quick diagnosis of unmodifiable trades. 👉 Read | CodeBase | @mql5dev

A script for MT5 audits tick-value properties across every symbol in Market Watch: SYMBOL_TRADE_TICK_VALUE, SYMBOL_TRADE_TICK
A script for MT5 audits tick-value properties across every symbol in Market Watch: SYMBOL_TRADE_TICK_VALUE, SYMBOL_TRADE_TICK_VALUE_LOSS, and SYMBOL_TRADE_TICK_VALUE_PROFIT. This matters for EAs that size positions from tick value. On many brokers, especially with cross-currency pairs, LOSS and PROFIT can differ. Using LOSS yields a conservative risk estimate and smaller lots. Using the generic tick value often matches PROFIT, producing slightly larger positions than intended. Workflow: add symbols to Market Watch, run the script on any chart, and read the summary in the Experts tab. Optional CSV export writes full per-symbol results to MQL5/Files/ to avoid log line limits. Symbols are classified as ALL_EQUAL, TV_MATCHES_PROFIT, TV_MATCHES_LOSS, or ALL_DIFFER, followed by an aggregate count per category. 👉 Read | Quotes | @mql5dev

MetaTrader 5 chart panels can host self-contained documentation rendered directly in-terminal, without external files. A canv
MetaTrader 5 chart panels can host self-contained documentation rendered directly in-terminal, without external files. A canvas-based engine built on CCanvas supports tabs, scrollable rich text, inline images, theming, and supersampled anti-aliased UI elements. Implementation details include embedding bitmaps via #resource, defining paragraph types, and parsing inline markup into styled runs. Rendering uses a two-pass alpha reconstruction method to preserve glyph transparency on any background, then blends via Porter-Duff over. Images are loaded from resources, scaled with bicubic interpolation, and cached per panel width. Paragraphs are wrapped into encoded display lines with helpers to decode type, indent, and image slots during paint and scroll. 👉 Read | Quotes | @mql5dev