MQL5 Cloud Network: inconsistent OnTick stream under real-tick modeling Technical reproduction report | 14 October 2026 | MetaTrader 5 Strategy Tester 1. Issue summary A non-trading diagnostic Expert Advisor (TickParityDiagnostic_V4.mq5) produces materially different OnTick event sequences in local Strategy Tester optimization and MQL5 Cloud Network optimization when configured for “Every tick based on real ticks”. The CopyTicksRange tick-history metrics and CopyRates(M1) bar metrics match exactly between environments in the same fixed one-hour window. The discrepancy changes optimization outcomes and prevents reliable local reproduction of Cloud-optimized trading strategies. Observed OnTick events: local 45,665 versus Cloud 28,758 (16,907 fewer; approximately 37.0% below local). This is an observed discrepancy, not proof that the Cloud deliberately uses generated ticks. 2. Reproduction configuration * Broker/server: FxPro-MT5; symbol GOLD; chart timeframe M5. * Modeling option selected: Every tick based on real ticks (Portuguese UI: “Cada tick baseado em tick real”). * Test interval: 2026-06-22 00:00 through 2026-06-27 00:00 (server time). * DiagnosticHour = 2026.06.22 10:00:00 (one-hour measurement window: 10:00–11:00, server time). * Optimization: complete optimization, Custom max; DiagnosticVariant = 1..22 with step 1; CacheBuster kept fixed for comparable runs (change only to avoid reuse of cached results). * EA performs no trading. Each optimization pass reports one diagnostic metric via OnTester(). * Cloud run: 22 tasks (100%) processed on Cloud agents, previously reported agent build 6251. Local run: agent build 6230. Updated portable local run: terminal and agents build 6259, 10 local tasks (100%). 3. Metric-by-metric results Values below are taken from exported optimization results. The portable build 6259 run measured variants 1–9 only. The full local and Cloud runs measured all 22 variants. Variant / metric Local full Cloud full Local 6259 Cloud vs local 1. OnTick count 45665 28758 45665 DIFF 2. OnTick timestamp hash 514014352 1491913586 514014352 DIFF 3. OnTick Bid hash 1608073743 339140397 1608073743 DIFF 4. OnTick Ask hash 2761616376 2513685456 2761616376 DIFF 5. OnTick combined hash 4060870639 32894255 4060870639 DIFF 6. OnTick Bid changes 13311 28723 13311 DIFF 7. OnTick Ask changes 13313 28723 13313 DIFF 8. OnTick first time_msc 1782122400020 1782122400000 1782122400020 DIFF 9. OnTick last time_msc 1782125999870 1782125999751 1782125999870 DIFF 10. CopyTicksRange count 45665 45665 45665 MATCH 11. CopyTicksRange timestamp hash 514014352 514014352 — MATCH 12. CopyTicksRange Bid hash 1608073743 1608073743 — MATCH 13. CopyTicksRange Ask hash 2761616376 2761616376 — MATCH 14. CopyTicksRange combined hash 4060870639 4060870639 — MATCH 15. CopyTicksRange Bid changes 13311 13311 — MATCH 16. CopyTicksRange Ask changes 13313 13313 — MATCH 17. CopyTicksRange first time_msc 1782122400020 1782122400020 — MATCH 18. CopyTicksRange last time_msc 1782125999870 1782125999870 — MATCH 19. M1 bar count 60 60 — MATCH 20. M1 bar hash 2084135571 2084135571 — MATCH 21. M1 summed tick volume 30916 30916 — MATCH 22. M1 missing minutes 0 0 — MATCH 4. Key controls and observations * Local real-tick OnTick count equals the CopyTicksRange count (45,665). Cloud OnTick count is 28,758, whereas its CopyTicksRange count is also 45,665. * All nine CopyTicksRange metrics match local versus Cloud, including hashes and first/last millisecond timestamps. * All four M1 metrics match local versus Cloud: 60 bars; bar hash 2,084,135,571; summed tick volume 30,916; zero missing minutes. * OnTick Bid/Ask changes: local 13,311 / 13,313; Cloud 28,723 / 28,723. * OnTick first and last tick timestamps (milliseconds): local 1782122400020 / 1782125999870; Cloud 1782122400000 / 1782125999751. * The local portable installation downloaded fresh GOLD M1 history and tick history, including approximately 290.86 MB of preliminary tick downloads, and still reproduced the earlier local OnTick results exactly on build 6259. * The portable log explicitly confirms “authorized (agent build 6259)” and “local 10 tasks (100%), remote 0 tasks (0%), cloud 0 tasks (0%)”. 5. Requested investigation Please investigate why Cloud optimization agents generate or deliver a different OnTick event stream from local Strategy Tester agents for the same broker, symbol, time interval, and selected real-tick modeling mode, despite identical historical tick and M1 queries. In particular: * Does the Cloud use a different tick modeling, validation, filtering, or fallback path under “Every tick based on real ticks”? * Could agent build differences, environment restrictions, or tick preparation explain this reproducible mismatch? * How can a user verify from agent logs which tick stream was actually supplied to OnTick during a Cloud optimization? * Is there a documented configuration or corrective procedure to ensure Cloud and local Strategy Tester tick-stream parity? 6. Reproduction steps 1. Compile the attached TickParityDiagnostic_V4.mq5 in MetaEditor. 2. Select GOLD / M5, the stated dates, and “Every tick based on real ticks”. 3. Set DiagnosticHour and optimize DiagnosticVariant from 1 to 22 with Custom max. 4. Run once with local agents only and once with MQL5 Cloud Network only, with identical parameters and broker data. 5. Export optimization results; compare variants 1–9 (OnTick), 10–18 (CopyTicksRange), and 19–22 (M1). 6. Confirm task allocation and agent builds in the Tester Journal; avoid optimization cache reuse. 7. Scope and limitations The evidence establishes a repeatable discrepancy in these test environments, but does not establish its internal cause. CopyTicksRange agreement does not prove that the same ticks were delivered as OnTick events. The portable build 6259 run was local only and is not a same-build Cloud comparison. The Cloud build 6251 was observed in prior Cloud journal evidence; the attached 20261014.log documents the later portable local run. No claim is made that the Cloud intentionally substitutes generated ticks. 8. Attached evidence TickParityDiagnostic_V4.mq5 (source); Novo Teste Local(1).xlsx (full local 22-variant results); Novo Teste Cloud Network(1).xlsx (full Cloud 22-variant results); Teste Local Portátil.xlsx (build 6259 local variants); 20261014.log (portable Tester journal). Prepared as a minimal, independent reproduction. No trading-account identifiers or proprietary strategy source are needed.