uz
Feedback
MQL5 Algo Trading

MQL5 Algo Trading

Kanalga Telegram’da o‘tish

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

Ko'proq ko'rsatish

📈 Telegram kanali MQL5 Algo Trading analitikasi

MQL5 Algo Trading (@mql5dev) Ingliz til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 526 360 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 145-o'rinni va Birlashgan Qirollik mintaqasida 5-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 526 360 obunachiga ega bo‘ldi.

26 Iyul, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni 12 325 ga, so‘nggi 24 soatda esa 323 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 3.26% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 1.92% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 17 146 marta ko‘riladi; birinchi sutkada odatda 10 090 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 37 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent indicator, chart, mql5, candle, range kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
The best publications of the largest community of algotraders. Subscribe to stay up-to-date with modern technologies and trading programs development.

Yuqori yangilanish chastotasi (oxirgi ma’lumot 27 Iyul, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

526 360
Obunachilar
+32324 soatlar
+2 9827 kunlar
+12 32530 kunlar
Postlar arxiv
This article replaces lagging indicator filters with a rule-driven “order block” engine that detects imbalance zones: the las
This article replaces lagging indicator filters with a rule-driven “order block” engine that detects imbalance zones: the last opposite candle before an impulse that breaks nearby structure (MSS), then keeps the zone valid until a retest mitigates it. The logic validates zones via displacement intensity, a full close beyond the structural high/low, and mitigation on closed bars only (shift=1). Zones are tracked using the base candle’s OHLC and removed immediately after a wick retest on a completed candle. Engineering focus: a reusable OrderBlock_Engine.mqh class shared by both an indicator and an EA, using heap allocation with pointer checks and safe deletion. Ind_OrderBlock visualizes zones efficiently with prev_calculated and EMPTY_VALUE handling; EA_OrderBlock adds a new-bar gate, CTrade execution, and notes netting vs hedging position selection. 👉 Read | NeuroBook | @mql5dev

This part extends candlestick encoding from single bars to ordered two-candle sequences, using an MQL5 script that builds ove
This part extends candlestick encoding from single bars to ordered two-candle sequences, using an MQL5 script that builds overlapping pairs, counts occurrences, and ranks them by frequency across GBPUSD and XAUUSD on M5, M15, and H1. A key finding is that the most common pairs often include an unclassified “_” candle (especially “__”), showing the classifier leaves many bars outside defined types. Filtering those out reveals the real structure: fully classified pairs are dominated by Marubozu transitions (A and a). Across timeframes and both symbols, the top classified patterns are consistently Aa, aA, aa, and AA, with spinning-top transitions (G/g) appearing far less. The output is best used to shortlist candidate transitions for later return/testing, not as signals by itself. 👉 Read | VPS | @mql5dev

Classic indicators such as RSI, MACD, and moving-average crossovers have lost statistical edge as markets adapted to widely s
Classic indicators such as RSI, MACD, and moving-average crossovers have lost statistical edge as markets adapted to widely shared signals. Reported win rates for simple MA crossover systems shifted from 65–70% in the 1990s to ~52% by 2010, nearing 50% in recent conditions. Early neural nets improved nonlinearity but struggled with sequence context; RNN/LSTM designs faced vanishing gradients on long histories. Standard Transformers improved long-range handling but introduced O(N²) attention cost and frequent overfitting on continuous market series. PatchTST reframes time-series input into fixed patches (often 16 bars) and uses multi-channel features such as price change and log volume. This reduces compute, preserves local structure, and supports hierarchical attention across intraday and multi-session dependencies. 👉 Read | Calendar | @mql5dev

Chart Navigator MT5 Light adds a compact mini-chart to the main price chart to speed up navigation across long history ranges
Chart Navigator MT5 Light adds a compact mini-chart to the main price chart to speed up navigation across long history ranges. The visible area is highlighted with a frame, allowing fast repositioning without manual scrolling. Clicking on the mini-chart moves the main chart to the selected point. Dragging the frame shifts the viewport quickly. Vertical lines placed on the main chart are mirrored on the mini-chart as time markers, enabling one-click jumps back to saved events such as signals, trades, news timestamps, or review zones. The mini-chart supports dynamic date readout on hover, mouse-based resizing, and a low-height bottom bar mode to minimize screen usage. Start and optional end dates can limit the displayed range. Implementation details: canvas rendering only. No trading logic, no trade requests, no DLL usage, no external services, and no... 👉 Read | NeuroBook | @mql5dev

Forex intraday movement is driven by repeatable liquidity cycles tied to global trading sessions and scheduled events, not ra
Forex intraday movement is driven by repeatable liquidity cycles tied to global trading sessions and scheduled events, not random chart noise. Session overlaps, especially London/New York, concentrate volume and volatility, while Asia and the Pacific tend to be quieter and range-bound. The article focuses on intraday seasonality in spreads between symbols using the ISI ProSpread SMA indicator. It applies probability and basic statistics to detect hour-by-hour directional bias and strength that are hard to see visually. ISI ProSpread SMA supports four calculation modes (spread/price SMA, price difference, volatility index, candle strength), configurable trading hours and history depth, plus a dashboard that reports hourly probabilities and bias. Practical uses include intraday timing, spread/arbitrage setups, seasonal pattern research, and signal conf... 👉 Read | VPS | @mql5dev

This part turns a chart-drawing toolkit into a durable workspace by persisting both drawings and UI state. It adds an SQLite
This part turns a chart-drawing toolkit into a durable workspace by persisting both drawings and UI state. It adds an SQLite layer (built into MT5) that restores objects, tool style memory, theme, panel geometry, pinned tools, and selection after timeframe changes or terminal restarts. Drawn objects are serialized into a versioned text payload, including geometry, styling, and a timeframe-visibility mask. A small “segment codec” flattens typed arrays into self-delimited text so complex tools (paths, Fibonacci levels, per-level styles) round-trip safely and can evolve without breaking old rows. Persistence is wired into the session lifecycle using dirty tracking, transaction-based snapshots, and a simple settings key-value store. Objects are saved per symbol, IDs are re-synced on load, corrupt rows are skipped, and the tool is converted from EA to indic... 👉 Read | Calendar | @mql5dev

Part 2 upgrades the earlier portfolio risk script from a single “risk gap” number to full matrix inspection. A CCovarianceMat
Part 2 upgrades the earlier portfolio risk script from a single “risk gap” number to full matrix inspection. A CCovarianceMatrix class wraps MQL5/OpenBLAS .Cov(), stores the [asset x asset] covariance matrix, guarantees the required layout (assets as rows, observations as columns), and keeps symbol labels attached to the data. The script CovarianceMatrixPrinter.mq5 adds structural checks and diagnostics: it verifies symmetry with a numeric tolerance before decomposition, then prints a readable labeled grid with enough precision to expose small FX covariances and the sign of each relationship. It then runs native .Eig() on the covariance matrix to extract eigenvalues and eigenvectors, turning total variance into independent risk factors. Traders get a clear view of which instruments share the same underlying driver; developers get a reusable compone... 👉 Read | CodeBase | @mql5dev

This article digs into an underused MQL5 detail: ZOrder. It controls not just which chart object looks “on top”, but which on
This article digs into an underused MQL5 detail: ZOrder. It controls not just which chart object looks “on top”, but which one receives clicks and selection events, even when another object visually covers it. Small ZOrder differences can prevent confusing interactions after timeframe changes or when overlays are present. That behavior becomes critical in a Position View indicator where SL/TP lines can overlap. If both share the same ZOrder, selection becomes ambiguous; assigning a higher ZOrder to one line makes event handling deterministic, but overlapping across multiple positions still exposes edge cases on hedging accounts. To make iterative fixes safer, the indicator logic is refactored into a class, then moved into a header. Private creation methods hide implementation details, names are undefined to avoid global conflicts, and configuratio... 👉 Read | NeuroBook | @mql5dev

MetaTrader 5 file I/O in pure MQL5 runs inside a sandbox, with paths resolved to predefined roots rather than arbitrary disk
MetaTrader 5 file I/O in pure MQL5 runs inside a sandbox, with paths resolved to predefined roots rather than arbitrary disk locations. This becomes critical when moving from chart object handling to persistence and configuration storage. Binary and text files can carry any payload, so format and encoding details matter. A simple string-to-char array write may include the terminator byte, which can appear as an extra character in external editors but usually does not break readback when converted correctly. The FILE_COMMON flag switches the root from MQL5\Files to Terminal\Common\Files. Read and write calls must use the same storage scope, or the terminal may return errors or load the wrong file. Relative paths allow subdirectories under the sandbox root, and MetaTrader 5 can create missing folders. Attempts to traverse outside the sandbox root using path t... 👉 Read | Forum | @mql5dev

A common requirement after opening a position is automatic profit protection. The usual approach is a trailing stop that star
A common requirement after opening a position is automatic profit protection. The usual approach is a trailing stop that starts only after price reaches a defined profit threshold, then moves the stop to reduce downside while allowing continuation. Key parameters are activation distance, trailing step, and update frequency to avoid excessive modifications. A break-even rule is often added: once the position is in profit by a set amount, the stop-loss is moved to entry price plus costs and a small offset. Implementation details matter: handle bid/ask correctly by order type, respect minimum stop levels and freeze levels, and avoid repeated updates when the new stop is not better than the current one. Logging and throttling are recommended for stability under fast ticks. 👉 Read | Signals | @mql5dev

MetaTrader 5 input parameters scale poorly: each chart instance freezes its settings at attach time, so changing lot size, st
MetaTrader 5 input parameters scale poorly: each chart instance freezes its settings at attach time, so changing lot size, stops, or filters means manually reopening properties and restarting every chart. That breaks down fast when the same EA runs across many symbols or risk profiles. A shared JSON file becomes the single configuration source. All EA instances can read the same file (or per-symbol files) and refresh settings on a trigger, avoiding reattach cycles and enabling scripted updates outside the terminal. The design uses a typed SStrategyConfig with safe defaults, plus a lightweight JSON tokenizer focused on a flat object (quoted keys, string/number values). It avoids DLL dependencies, handles commas inside quoted strings, and falls back cleanly when the file is missing or malformed. 👉 Read | AppStore | @mql5dev

New beta version 6006 is available at MetaQuotes-Demo.

Live EAs under news volatility routinely hit failure sequences: requotes, connection drops, spread spikes, and overlapping ti
Live EAs under news volatility routinely hit failure sequences: requotes, connection drops, spread spikes, and overlapping ticks. Immediate retries inside OnTick() can create duplicate submissions for the same signal, bypassing risk controls and producing untracked exposure. Common patterns like Sleep(500), local retry loops, and uniform GetLastError() handling fail in three areas: no retcode classification, no cumulative failure state, and duplicated logic across the codebase. This increases missed entries, uncontrolled doubling, and cases where stop attachment fails without recovery or diagnostics. A structured approach uses three layers: a retry executor with explicit retryable retcodes and exponential backoff; a circuit breaker tracking consecutive failures with OPEN/HALF-OPEN/CLOSED behavior; and a gateway that composes both behind a single, configured... 👉 Read | Quotes | @mql5dev

MMAR is finalized as a native MQL5 library that packages multifractal analysis, spectrum fitting, simulation, and Monte Carlo
MMAR is finalized as a native MQL5 library that packages multifractal analysis, spectrum fitting, simulation, and Monte Carlo forecasting behind a single CMMAR facade. An EA feeds returns, calls Fit(), then Forecast(); optional setters control moments, partitioning, cascade base, and RNG seeding for repeatable runs. The pipeline extracts scaling exponents and Hurst diagnostics, then fits a singularity spectrum against multiple cascade distributions using bounded optimization. A status enum exposes partial results when spectrum fitting fails, so EAs can still use H and multifractality signals. Forecasting runs many simulated MMAR paths to produce forward volatility plus a confidence interval, enabling risk-based position sizing and regime monitoring. The demo EA shows full portability: only MT5 Standard Library components (ALGLIB FFT/Cholesky, BLEIC, Math... 👉 Read | Freelance | @mql5dev

Work continued on MT5 replay/simulation tooling to render position state directly on the chart, not in terminal text. Standar
Work continued on MT5 replay/simulation tooling to render position state directly on the chart, not in terminal text. Standard platform position visuals are insufficient under cross-order execution and replay models. The update adds three HLINE objects per position: open price, stop-loss, and take-profit. Object naming uses the position ticket plus suffixes to keep uniqueness and support bulk cleanup on indicator removal. A priority enumeration was introduced to reduce selection issues when objects overlap. C_Terminal and C_ChartFloatingRAD were adjusted to consume the shared priority list, keeping Chart Trade above most graphics while allowing order/position overlays to remain selectable. Further refinements add OBJPROP_TEXT descriptions for each line so the Objects list remains self-explanatory without changing user chart settings. 👉 Read | CodeBase | @mql5dev

MetaTrader 5 object interactivity is extended from simple selection outlines to controlled resizing workflows. Current implem
MetaTrader 5 object interactivity is extended from simple selection outlines to controlled resizing workflows. Current implementation highlights a selected object but lacks usable grab handles because helper objects share a protected name prefix, making them non-selectable. Forcing initial selection on specific objects enables MT5 drag behavior, but default anchor handling creates inconsistent resizing visuals and disconnected outline segments. The update adds dedicated corner points and uses switch fall-through to reuse creation logic while adjusting placement, producing two effective resize handles. Event handling is then tightened: clicking should move objects without toggling their selected state. A small handler addition blocks selection-state changes while keeping drag operations active. 👉 Read | Forum | @mql5dev

An open-source EA focuses on Stochastic-based position closing with three modes. Crossing Mode closes in OB/OS when %K and %D
An open-source EA focuses on Stochastic-based position closing with three modes. Crossing Mode closes in OB/OS when %K and %D cross. Entering Mode closes when %D enters overbought or oversold. Exiting Mode closes when %D exits those zones. A profit-state filter restricts closures to Loss, Profit, or both. Core parameters cover %K/%D periods, slowing, OB/OS levels, price field, and a selectable Stochastic timeframe independent of the chart. Logic runs on every tick and affects only the current symbol. Optional Test Mode adds simple entries for research: 0.01-lot trades when %D crosses 50 with a configurable offset, only when no positions exist. No SL/TP, no magic filtering, and it can run alongside the closing logic. No money management features are included. 👉 Read | VPS | @mql5dev

Indicator buffer data is being formalized as a first-class timeseries: per indicator, maintain a list containing all buffer v
Indicator buffer data is being formalized as a first-class timeseries: per indicator, maintain a list containing all buffer values for every bar used in calculations. This enables consistent storage, search, sort, and later statistical analysis across library collections. Core library changes: the NewBar class is relocated to Services; SeriesDE include paths are updated; new message indices/texts are added; a dedicated collection ID and timer constants are introduced. Indicator data gains an extra integer property for indicator handle, including sorting/search criteria support. New class CSeriesDataInd stores CDataInd objects per bar/buffer, supports creation, refresh on current bar, append on new bar, and trimming to required depth. Indicator objects are extended with total buffer count and an embedded buffer-data series; the indicators collection and eng... 👉 Read | AlgoBook | @mql5dev

BBandsPsar is a custom hybrid indicator that merges a volatility model (Bollinger Bands) with a trend-following signal (Parab
BBandsPsar is a custom hybrid indicator that merges a volatility model (Bollinger Bands) with a trend-following signal (Parabolic SAR) into one output. The core calculation measures the gap between the Parabolic SAR value and the current candle’s open or close, reflecting SAR’s alternating behavior during trend changes. That gap is then normalized using Bollinger Bands, producing a standardized histogram rather than raw price-distance values. Because the output is scaled, the same threshold logic can be applied across instruments with different price ranges, improving cross-asset comparability. BBandsPsar inherits the full input sets of both Bollinger Bands and Parabolic SAR, allowing adjustment of period, deviation, price source, step, and maximum settings to control sensitivity. For dynamic parameter testing, the iBands call can be refactored so ... 👉 Read | Freelance | @mql5dev

Backtests only charge the costs that were configured, so net profit and profit factor do not show how close a strategy is to
Backtests only charge the costs that were configured, so net profit and profit factor do not show how close a strategy is to the execution-cost boundary. This MQL5 tool measures the limit directly: how much cost the strategy can absorb before the edge disappears. It reads a CSV (Date,Profit,Volume; one row per closing deal) and prints a report to the Experts tab. Output includes breakeven cost per deal, cushion versus an assumed realistic cost, net and profit factor re-priced at the assumed cost, a cost-sensitivity curve from 0 to 3x, and win erosion where costs flip winners into losers. A composite A+ to F score aggregates cushion, profit-factor resilience, and erosion, with recommendations. Input file goes to MQL5\Files; Volume is optional. If missing on first run, a reproducible sample file is generated. A helper ExportCost.mq5 can export deals from ... 👉 Read | CodeBase | @mql5dev