SessionRangeBreakout.mq5 is an MT5 chart-window indicator that derives a completed intraday session high/low from M1 data using broker server time. It can draw a session rectangle plus extension lines, fill two non-plotted iCustom buffers (0=high, 1=low), and issue a single breakout alert per direction on the most recent completed session with an active extension.
Configuration covers session start/end (end is exclusive), line extension end, and a lookback of 1β365 completed session start dates, counting dates even when bars are missing. The range is computed from available M1 bars in [start, end), tolerating market-closure gaps and skipping sessions with no M1 bars.
Break detection supports touch (live price strictly outside, tick-driven) or close (bar close strictly outside, timeframe-driven), with optional popup/push/email. History and restarts pr...
π Read | AlgoBook | @mql5dev
Configuration covers session start/end (end is exclusive), line extension end, and a lookback of 1β365 completed session start dates, counting dates even when bars are missing. The range is computed from available M1 bars in [start, end), tolerating market-closure gaps and skipping sessions with no M1 bars.
Break detection supports touch (live price strictly outside, tick-driven) or close (bar close strictly outside, timeframe-driven), with optional popup/push/email. History and restarts pr...
π Read | AlgoBook | @mql5dev
β€11π3π€©2
This article treats common indicator rules as noisy voters rather than truth. Five cheap, independent heuristics (RSI crossback, EMA cross, Bollinger reversion, MACD histogram flip, candle proxy) output buy/sell/abstain on closed bars, and abstain is preserved to avoid contaminating the statistics.
A Snorkel-style generative model in MQL5 fuses these votes without labels or outcome feedback. Using Expectation-Maximization on a rolling window, it learns a per-heuristic reliability score and a shifting buy/sell prior purely from agreement patterns, then produces P(Buy) via a log-space Naive Bayes posterior for numerical stability.
Benchmarks against an unweighted majority vote across symbols/timeframes show weighting can change results, usually by reducing losses, but not enough to be statistically distinct. The value is a reusable signal-fusion laye...
π Read | AlgoBook | @mql5dev
A Snorkel-style generative model in MQL5 fuses these votes without labels or outcome feedback. Using Expectation-Maximization on a rolling window, it learns a per-heuristic reliability score and a shifting buy/sell prior purely from agreement patterns, then produces P(Buy) via a log-space Naive Bayes posterior for numerical stability.
Benchmarks against an unweighted majority vote across symbols/timeframes show weighting can change results, usually by reducing losses, but not enough to be statistically distinct. The value is a reusable signal-fusion laye...
π Read | AlgoBook | @mql5dev
β€10π4π₯3
Trade Manager Utility is a position management EA for MT5 that runs on both ticks and a timer, with a shared minimum cycle interval. It only modifies and closes existing positions and never opens trades.
Core functions include adding missing initial SL/TP anchored to entry, break-even moves with optional lock points, and trailing stops with points or ATR modes. Stop updates only tighten protection and are skipped when invalid under current price, broker limits, freeze distance, or spread filters.
Scope controls cover magic number filtering (-1 all, 0 manual, >0 specific), single-symbol vs all-symbols management, and a position-count monitor with optional alerts and newest-first excess closes.
Daily account protection can pause management and attempt closes after configurable equity/balance gain or loss thresholds. State is stored in terminal globals using ...
π Read | Calendar | @mql5dev
Core functions include adding missing initial SL/TP anchored to entry, break-even moves with optional lock points, and trailing stops with points or ATR modes. Stop updates only tighten protection and are skipped when invalid under current price, broker limits, freeze distance, or spread filters.
Scope controls cover magic number filtering (-1 all, 0 manual, >0 specific), single-symbol vs all-symbols management, and a position-count monitor with optional alerts and newest-first excess closes.
Daily account protection can pause management and attempt closes after configurable equity/balance gain or loss thresholds. State is stored in terminal globals using ...
π Read | Calendar | @mql5dev
β€8π€©2
Outlier filters based on global thresholds fail when the market shifts by session or volatility regime. Local Outlier Factor (LOF) addresses this by comparing a barβs neighbourhood density to the densities of its nearest neighbours, allowing quiet and volatile regimes to be βnormalβ at the same time.
An MQL5 implementation is built from scratch using native matrix/vector types. Each closed bar becomes a 5D point; the last 500 bars are the reference cloud. The newest bar is scored against the cloud without being added. The trigger is a quantile (default 97.5%) of reference LOF scores, so it adapts per symbol/timeframe.
Architecture uses a refit lane every 4 bars and a query lane on each close. Features: log return, range/ATR, log(1+volume), spread, close location in range. The LOF score gates entries of a simple EMA-cross EA; tests focus on which t...
π Read | Signals | @mql5dev
An MQL5 implementation is built from scratch using native matrix/vector types. Each closed bar becomes a 5D point; the last 500 bars are the reference cloud. The newest bar is scored against the cloud without being added. The trigger is a quantile (default 97.5%) of reference LOF scores, so it adapts per symbol/timeframe.
Architecture uses a refit lane every 4 bars and a query lane on each close. Features: log return, range/ATR, log(1+volume), spread, close location in range. The LOF score gates entries of a simple EMA-cross EA; tests focus on which t...
π Read | Signals | @mql5dev
β€13π€©3
A grid EA for XAUUSD that starts each basket from an RSI reversal on a closed candle. Buy when RSI crosses back above oversold, sell when it crosses back below overbought. A Reverse switch flips both signals. One-direction mode prevents a new basket in the opposite direction while one is active.
When price moves against an open basket, new grid levels are added every N points, using a lot multiplier up to a maximum level count. The initial lot can be fixed or sized from a percent of balance or equity. No per-trade stop loss is used.
The basket exits as a group via a money target or points from the average price, with optional basket stop loss and optional trading-hours filter. Margin usage increases with each level; disabling the basket stop allows deep drawdowns during sustained adverse moves. Strategy Tester validation and conservative sizing are required; ...
π Read | Docs | @mql5dev
When price moves against an open basket, new grid levels are added every N points, using a lot multiplier up to a maximum level count. The initial lot can be fixed or sized from a percent of balance or equity. No per-trade stop loss is used.
The basket exits as a group via a money target or points from the average price, with optional basket stop loss and optional trading-hours filter. Margin usage increases with each level; disabling the basket stop allows deep drawdowns during sustained adverse moves. Strategy Tester validation and conservative sizing are required; ...
π Read | Docs | @mql5dev
β€12π₯4
This MQL5 workflow closes the gap between analysis and execution by treating trade actions as proposals, not immediate commands. Read-only tools run instantly, while order placement/close/modify/delete calls are queued and blocked behind a single human approval step.
Each proposed action is rendered as an approval card describing the exact operation, volume, stops/targets, and affected tickets. The tool loop pauses mid-turn until approve/reject, then resumes so the assistant can react to the outcome.
Execution is centralized in one dispatcher + validated executors: typed JSON argument readers prevent crashes, a safety gate enforces symbol/lot/position limits, lots are normalized to broker steps, and ownership scoping restricts bulk actions to allowed trades. Broker-specific constraints are left to the trade server, with refusals reported back for iterative corr...
π Read | VPS | @mql5dev
Each proposed action is rendered as an approval card describing the exact operation, volume, stops/targets, and affected tickets. The tool loop pauses mid-turn until approve/reject, then resumes so the assistant can react to the outcome.
Execution is centralized in one dispatcher + validated executors: typed JSON argument readers prevent crashes, a safety gate enforces symbol/lot/position limits, lots are normalized to broker steps, and ownership scoping restricts bulk actions to allowed trades. Broker-specific constraints are left to the trade server, with refusals reported back for iterative corr...
π Read | VPS | @mql5dev
β€16π6π₯4β3π€©2
Terminal deal history is not position history. Partial closes often appear as multiple lines, and netting reversals can collapse close and open into a single deal. This exporter reconstructs positions from deals and writes one CSV row per closed position for external analysis.
Each row includes ticket, symbol, magic, comment, side, opened volume, entry/exit time and volume-weighted prices, duration, initial SL/TP (only if set on the opening order), and aggregated P&L components (gross, commission, swap, net). Risk metrics include risk_money and R-multiple when an initial SL exists.
Optional MFE/MAE are computed from M1 bars between entry and exit (Bid high/low), producing points and account-currency excursions plus bar count, session/weekday tags, and close reason. Limits: bar-based estimates, empty excursions if M1 history is missing, no export of open position...
π Read | NeuroBook | @mql5dev
Each row includes ticket, symbol, magic, comment, side, opened volume, entry/exit time and volume-weighted prices, duration, initial SL/TP (only if set on the opening order), and aggregated P&L components (gross, commission, swap, net). Risk metrics include risk_money and R-multiple when an initial SL exists.
Optional MFE/MAE are computed from M1 bars between entry and exit (Bid high/low), producing points and account-currency excursions plus bar count, session/weekday tags, and close reason. Limits: bar-based estimates, empty excursions if M1 history is missing, no export of open position...
π Read | NeuroBook | @mql5dev
π13β€8π₯6π€©4π2
Most EAs treat calendar releases as categories and block trading by importance and time window. That ignores what drives price: actual versus forecast, scaled so surprises are comparable across indicators.
MqlCalendarValue supports actual/forecast/previous, but forecast history starts May 2017. Central bank rate decisions and most speeches have no forecasts, so surprise-based models cannot cover them. Large currency-wide CalendarValueHistory calls can timeout; querying per event avoids silent zero-row returns.
Standardizing surprise with mean/stdev fails due to mis-scaled forecasts. Median and MAD (1.4826 scaled) with expanding history avoids look-ahead bias, plus a hard gate (10 robust sigma) removes impossible rows.
Release timestamps often miss the bar that moved due to startup GMT/server-time flips and DST shifts. Offsets can be recovered from price by...
π Read | Signals | @mql5dev
MqlCalendarValue supports actual/forecast/previous, but forecast history starts May 2017. Central bank rate decisions and most speeches have no forecasts, so surprise-based models cannot cover them. Large currency-wide CalendarValueHistory calls can timeout; querying per event avoids silent zero-row returns.
Standardizing surprise with mean/stdev fails due to mis-scaled forecasts. Median and MAD (1.4826 scaled) with expanding history avoids look-ahead bias, plus a hard gate (10 robust sigma) removes impossible rows.
Release timestamps often miss the bar that moved due to startup GMT/server-time flips and DST shifts. Offsets can be recovered from price by...
π Read | Signals | @mql5dev
β€14π11π€©11π₯8π1
An MT4/MT5 indicator processes only closed bars and flags five candle patterns: bullish/bearish engulfing, bullish/bearish pin bar, and inside bar. Pin bars are defined by configurable wick and body percentages, inclusive at the limits. Inside bar direction follows the mother bar; doji mother bars are skipped. Signals require a minimum bar range expressed as a multiple of Wilder ATR, with an optional EMA trend filter.
Each signal opens a case at the signal bar close. Take and adverse levels are set at entry Β± X*ATR and β Y*ATR using the signal bar ATR. Resolution is the first subsequent bar to hit either level; a bar touching both counts as a miss. Unresolved cases after a fixed wait are discarded.
A panel reports rolling hit rate per pattern over the last N resolved cases, plus sample size. Values are non-repainting and deterministic, with iCustom b...
π Read | AlgoBook | @mql5dev
Each signal opens a case at the signal bar close. Take and adverse levels are set at entry Β± X*ATR and β Y*ATR using the signal bar ATR. Resolution is the first subsequent bar to hit either level; a bar touching both counts as a miss. Unresolved cases after a fixed wait are discarded.
A panel reports rolling hit rate per pattern over the last N resolved cases, plus sample size. Values are non-repainting and deterministic, with iCustom b...
π Read | AlgoBook | @mql5dev
β€26π14π€©11π₯9β3
An opening-range session indicator for the US cash window, using a configurable GMT schedule. It builds a box from the opening range high/low (default 13:30 GMT, 30 minutes), then extends those levels to session end (default 20:00 GMT) and plots 1R/2R targets based on box height.
Session VWAP is computed as cumulative typical price (H+L+C)/3 weighted by volume, restarting at session start. Tick volume is default, with an option to use real volume when available and fall back otherwise. Sessions crossing midnight are supported; range length must align with the chart timeframe.
A historical stats panel summarizes the last N completed sessions with a full range: close outcomes relative to the box and post-break reach of 1R/2R in the direction of the first break. It is sample counting only, excludes costs/slippage, and is not a win rate.
No repainting: all ...
π Read | Calendar | @mql5dev
Session VWAP is computed as cumulative typical price (H+L+C)/3 weighted by volume, restarting at session start. Tick volume is default, with an option to use real volume when available and fall back otherwise. Sessions crossing midnight are supported; range length must align with the chart timeframe.
A historical stats panel summarizes the last N completed sessions with a full range: close outcomes relative to the box and post-break reach of 1R/2R in the direction of the first break. It is sample counting only, excludes costs/slippage, and is not a win rate.
No repainting: all ...
π Read | Calendar | @mql5dev
β€26π14π₯14π€©13
The article reframes βtrendβ as a measurable deviation from a memoryless random walk, not a visual chart interpretation. Profitability is tied to breaking the 50/50 equilibrium where direction accuracy is 50% and average win equals average loss, yielding zero expected payoff.
To reduce candle noise, price is discretized into fixed-size point blocks, treating each block as one step. This enables estimating how far price travels vertically over N steps and building a reference distribution for a true random walk using combinatorics.
Comparing real market data (GBPUSD) to the reference shows a wider, flatter distribution: price crosses zero less often and continues direction slightly more than 50%. That small edge implies a trend-following strategy (buy after an up block / sell after a down block) can produce positive expectancy; if reversal probability...
π Read | AlgoBook | @mql5dev
To reduce candle noise, price is discretized into fixed-size point blocks, treating each block as one step. This enables estimating how far price travels vertically over N steps and building a reference distribution for a true random walk using combinatorics.
Comparing real market data (GBPUSD) to the reference shows a wider, flatter distribution: price crosses zero less often and continues direction slightly more than 50%. That small edge implies a trend-following strategy (buy after an up block / sell after a down block) can produce positive expectancy; if reversal probability...
π Read | AlgoBook | @mql5dev
π₯20β€14π€©14π8β2π¨βπ»2π€‘1
Expert Advisor descriptions are unverified claims. Trading history is verifiable. EA Auditor analyzes the account deal history and outputs a short note on how trading was actually executed, including entry timing, SL/TP presence and movement, lot sizing behavior, concurrent positions, trading hours, and average holding time. Output is shown in the Experts tab, on-chart, and saved to a text file in English or Russian.
Martingale detection is based on post-loss lot growth, typically 1.5x or more and clearly higher than after wins. Averaging is detected when additional trades are opened at worse prices while an earlier same-direction trade remains open, reported only when frequent enough to avoid false positives. It also flags unprotected trades that open without stops, trailing or break-even behavior, and skewed SL/TP where win rate requirements matter.
Install...
π Read | Signals | @mql5dev
Martingale detection is based on post-loss lot growth, typically 1.5x or more and clearly higher than after wins. Averaging is detected when additional trades are opened at worse prices while an earlier same-direction trade remains open, reported only when frequent enough to avoid false positives. It also flags unprotected trades that open without stops, trailing or break-even behavior, and skewed SL/TP where win rate requirements matter.
Install...
π Read | Signals | @mql5dev
π25π₯19β€15π€©14π¨βπ»2
Stop manager for MetaTrader 5 that applies breakeven and trailing stop logic to existing positions, including manual trades and positions opened by other EAs. No trade entries are generated.
Breakeven triggers at a configured profit in points and moves SL to entry plus an offset. Trailing can start only after breakeven completes or run independently. Trailing distance is either fixed points or an ATR multiple, and updates are rate-limited by a minimum improvement step to reduce modification traffic.
Positions can be filtered by magic number (0 includes all, including manual), direction, and scope (chart symbol or all symbols). If a position has no SL, an initial SL can be placed at a specified distance.
Operates on ticks and a 1-second timer to cover off-chart symbols. Every SL change is validated against broker stop levels before sending. Works on hedging...
π Read | Calendar | @mql5dev
Breakeven triggers at a configured profit in points and moves SL to entry plus an offset. Trailing can start only after breakeven completes or run independently. Trailing distance is either fixed points or an ATR multiple, and updates are rate-limited by a minimum improvement step to reduce modification traffic.
Positions can be filtered by magic number (0 includes all, including manual), direction, and scope (chart symbol or all symbols). If a position has no SL, an initial SL can be placed at a specified distance.
Operates on ticks and a 1-second timer to cover off-chart symbols. Every SL change is validated against broker stop levels before sending. Works on hedging...
π Read | Calendar | @mql5dev
β€27π22π€©19π₯18
MetaTrader 5 integration work increasingly depends on modern networking. A WebSocket client can be implemented in MQL5 without using a DLL, enabling direct connectivity to external services while staying inside the terminal runtime.
WebSockets provide full-duplex communication over a single TCP connection. Compared with polling, long polling, streaming, and AJAX-style request patterns, the protocol reduces repetitive HTTP headers and avoids keeping wasteful server-side connections.
RFC 6455 defines the HTTP upgrade handshake, then a frame-based format with opcodes (text, binary, continuation, close, ping, pong). Client-to-server frames must be masked using a fresh random 4-byte key per frame.
A practical MQL5 design splits into three classes: CSocket (TCP/TLS, timeouts, send/receive, certificate info), CFrame (frame parsing, size, final flag, type), a...
π Read | NeuroBook | @mql5dev
WebSockets provide full-duplex communication over a single TCP connection. Compared with polling, long polling, streaming, and AJAX-style request patterns, the protocol reduces repetitive HTTP headers and avoids keeping wasteful server-side connections.
RFC 6455 defines the HTTP upgrade handshake, then a frame-based format with opcodes (text, binary, continuation, close, ping, pong). Client-to-server frames must be masked using a fresh random 4-byte key per frame.
A practical MQL5 design splits into three classes: CSocket (TCP/TLS, timeouts, send/receive, certificate info), CFrame (frame parsing, size, final flag, type), a...
π Read | NeuroBook | @mql5dev
β€52π27π₯24π€©14π¨βπ»5π4π1
Risk Lot Panel is an on-chart tool that calculates position size from a specified risk amount and stop-loss distance. It addresses lot sizing before entry and supports forex, metals, indices, and crypto.
The calculation is based on the brokerβs contract parameters, including tick size and loss-side tick value, aligning results with symbol specifications and the account currency. Risk can be set as a percentage of balance, percentage of equity, or a fixed amount.
Output volume is rounded down to the brokerβs volume step and constrained by minimum and maximum lot limits. The panel displays the effective monetary risk after rounding and flags cases where the minimum lot already exceeds the configured risk. Current spread is also shown.
The indicator is display-only, reading data and drawing labels without trading functions or buffers. Example: 100 USD ...
π Read | Calendar | @mql5dev
The calculation is based on the brokerβs contract parameters, including tick size and loss-side tick value, aligning results with symbol specifications and the account currency. Risk can be set as a percentage of balance, percentage of equity, or a fixed amount.
Output volume is rounded down to the brokerβs volume step and constrained by minimum and maximum lot limits. The panel displays the effective monetary risk after rounding and flags cases where the minimum lot already exceeds the configured risk. Current spread is also shown.
The indicator is display-only, reading data and drawing labels without trading functions or buffers. Example: 100 USD ...
π Read | Calendar | @mql5dev
β€14π₯7π5π€©2π¨βπ»2
Spread ATR Monitor quantifies current trading cost by comparing the live spread to ATR, rather than using an absolute point value. This normalizes spread impact across symbols, where the same spread can be negligible on XAUUSD and material on EURUSD.
The panel shows current spread, plus average and maximum spread over the last N ticks. It also reports ATR for the last closed bar on the current timeframe, in points, and calculates spread as a percentage of ATR.
A configurable threshold (10% default) triggers a warning color when spread/ATR becomes excessive. Typical usage includes manual trade checks around session opens or news, and setting a realistic max-spread filter for automated strategies.
The indicator is read-only: it consumes price data and draws labels. Inputs cover tick window size, ATR period, warning threshold, panel position and offset...
π Read | AlgoBook | @mql5dev
The panel shows current spread, plus average and maximum spread over the last N ticks. It also reports ATR for the last closed bar on the current timeframe, in points, and calculates spread as a percentage of ATR.
A configurable threshold (10% default) triggers a warning color when spread/ATR becomes excessive. Typical usage includes manual trade checks around session opens or news, and setting a realistic max-spread filter for automated strategies.
The indicator is read-only: it consumes price data and draws labels. Inputs cover tick window size, ATR period, warning threshold, panel position and offset...
π Read | AlgoBook | @mql5dev
β€19π₯6π€©4π3π2β1
Restart-Safe EA Template provides an Expert Advisor skeleton focused on execution reliability and restart persistence. A common failure mode is duplicate trades after a terminal or VPS restart when the same signal is reprocessed.
Signals are evaluated on closed bars and only once per bar. The last processed bar timestamp is stored in a terminal global variable, preventing repeat execution across restarts. Position state is re-identified after restart with a one-position-per-symbol-and-magic constraint.
Risk and broker-constraint checks include a spread filter, stop-level validation, and volume normalization. Operational transparency is emphasized: entries, skipped signals with reasons, and broker retcodes are written to the Experts log.
A moving-average cross is included only as a placeholder. The GetSignal() function is intended for replacement. Inputs co...
π Read | NeuroBook | @mql5dev
Signals are evaluated on closed bars and only once per bar. The last processed bar timestamp is stored in a terminal global variable, preventing repeat execution across restarts. Position state is re-identified after restart with a one-position-per-symbol-and-magic constraint.
Risk and broker-constraint checks include a spread filter, stop-level validation, and volume normalization. Operational transparency is emphasized: entries, skipped signals with reasons, and broker retcodes are written to the Experts log.
A moving-average cross is included only as a placeholder. The GetSignal() function is intended for replacement. Inputs co...
π Read | NeuroBook | @mql5dev
β€17π€©9π7π₯4π2
Prop-firm evaluations most often fail on risk rules tied to daily loss and max drawdown. Prop-firm Guard is a utility EA for MT5 that enforces those limits with a buffer before the firmβs threshold is reached.
Attached to a single chart, it monitors the entire account across symbols, magic numbers, and manual orders on every tick and once per second. When equity reaches a configured share of a limit (default 90%), it cancels pendings, closes positions, and blocks further trading. While blocked, any new trade is closed immediately. Daily-loss blocks reset at the next trading day; max-DD and profit-target blocks persist until manually cleared.
Supported modes include daily loss based on initial balance or day-start value, configurable day reset hour, static or trailing drawdown (equity or balance high), optional profit target stop, and optional scheduled flat...
π Read | AlgoBook | @mql5dev
Attached to a single chart, it monitors the entire account across symbols, magic numbers, and manual orders on every tick and once per second. When equity reaches a configured share of a limit (default 90%), it cancels pendings, closes positions, and blocks further trading. While blocked, any new trade is closed immediately. Daily-loss blocks reset at the next trading day; max-DD and profit-target blocks persist until manually cleared.
Supported modes include daily loss based on initial balance or day-start value, configurable day reset hour, static or trailing drawdown (equity or balance high), optional profit target stop, and optional scheduled flat...
π Read | AlgoBook | @mql5dev
β€30π₯19π€©8π3π3
Account leverage settings such as 1:500 do not describe the effective leverage per instrument. Many brokers apply instrument-specific margin rates and reduce leverage as position size increases via margin tiers.
Leverage Monitor aggregates per-symbol margin, effective leverage, tiers, swaps, commissions, and spreads for all Market Watch instruments into a single on-chart panel. It is informational only and does not place, modify, or close orders.
The panel shows symbol type, effective leverage with change highlighting, tier breakpoints by volume, swap long/short, commission rules, current spread versus 1-hour average, and a per-minute history view that can switch between leverage and spread. Values are read from instrument specifications and sampled terminal margin calculations; leverage history persists between sessions.
Runs on MetaTrader 5 as an Expert ...
π Read | VPS | @mql5dev
Leverage Monitor aggregates per-symbol margin, effective leverage, tiers, swaps, commissions, and spreads for all Market Watch instruments into a single on-chart panel. It is informational only and does not place, modify, or close orders.
The panel shows symbol type, effective leverage with change highlighting, tier breakpoints by volume, swap long/short, commission rules, current spread versus 1-hour average, and a per-minute history view that can switch between leverage and spread. Values are read from instrument specifications and sampled terminal margin calculations; leverage history persists between sessions.
Runs on MetaTrader 5 as an Expert ...
π Read | VPS | @mql5dev
β€20π€©14π₯7π6
Prop Firm Live Daily Breach Line is a lightweight MT5 chart indicator for prop firm evaluations and funded accounts. It tracks the remaining daily drawdown buffer in account currency and plots a dynamic Daily Breach Level on the active symbol, showing the exact price where current net exposure reaches the daily loss limit.
Accuracy is maintained by reconstructing the 00:00 server-time baseline from todayβs deal history, reversing realized P/L, swaps, fees, and commissions for both entry and exit deals. A short history cache reduces load during rapid ticks. The reset rule supports Balance Only or the higher of Balance/Equity at 00:00, with a single GlobalVariable snapshot to prevent post-rollover equity spikes from shifting the daily floor.
The breach price uses net open volume on the chart symbol, then validates the estimate with a two-step OrderC...
π Read | Docs | @mql5dev
Accuracy is maintained by reconstructing the 00:00 server-time baseline from todayβs deal history, reversing realized P/L, swaps, fees, and commissions for both entry and exit deals. A short history cache reduces load during rapid ticks. The reset rule supports Balance Only or the higher of Balance/Equity at 00:00, with a single GlobalVariable snapshot to prevent post-rollover equity spikes from shifting the daily floor.
The breach price uses net open volume on the chart symbol, then validates the estimate with a two-step OrderC...
π Read | Docs | @mql5dev
β€13π13π€©8π₯4
An MT4 indicator identifies bullish and bearish fair value gaps using three closed candles only, preventing repaint. Detection excludes bar 0 for both creation and mitigation, and each zone is tracked until mitigation.
A bullish gap forms when candle 1 high is below candle 3 low; bearish is the inverse. Zones are drawn as rectangles extending right until mitigated, with optional retention and recoloring after mitigation. Mitigation supports touch-based or full-fill rules; βtouchedβ is only used under full-fill mode.
Zone state and prices are exposed via iCustom buffers, written on the candle 3 bar: state (0β3), top, bottom, and direction (+1/-1). Gaps can be filtered by minimum size in points or ATR fraction, with configurable history scan and maximum tracked zones. No alerts, trading logic, DLL, or WebRequest are included.
π Read | AlgoBook | @mql5dev
A bullish gap forms when candle 1 high is below candle 3 low; bearish is the inverse. Zones are drawn as rectangles extending right until mitigated, with optional retention and recoloring after mitigation. Mitigation supports touch-based or full-fill rules; βtouchedβ is only used under full-fill mode.
Zone state and prices are exposed via iCustom buffers, written on the candle 3 bar: state (0β3), top, bottom, and direction (+1/-1). Gaps can be filtered by minimum size in points or ATR fraction, with configurable history scan and maximum tracked zones. No alerts, trading logic, DLL, or WebRequest are included.
π Read | AlgoBook | @mql5dev
β€21π10π€©7π₯5