Files
mt5-quant/CHANGELOG.md
Devid HW c0626572f3 release: v1.34.0
- Version bump 1.33.0 → 1.34.0
- server.json identifier URL updated (SHA256 set by CI after build)
- CHANGELOG.md updated
2026-07-02 04:16:38 +07:00

4.9 KiB

Changelog

[1.34.0] — 2026-07-02

  • docs: update changelog and tool documentation for rolling backtest
  • feat: add rolling backtest and optimization improvements
  • fix: sync Cargo.lock, remove unused Agents config from optimizer
  • fix: sync Cargo.lock version, remove unused agents config from optimizer

[1.33.0] — 2026-06-25

Added

  • src/utils/ module: shared read_file_as_utf8 utility for UTF-16LE BOM detection, used across set file and config handlers.
  • OS detection and diagnostics: utility.rs gains OsType enum, get_os_context, get_system_memory, and crossover_server_running helper for better CrossOver diagnostics.
  • Wine binary detection: MT5.app and CrossOver now detect both wine and wine64 binaries; Homebrew and Linux paths add wine alongside wine64.

Changed

  • Optimizer launch mechanism: rewritten from /mt5mcp_backtest.ini + .bat to /config: INI + shell script. Now patches terminal.ini directly with full optimization parameters and appends agent configuration — no longer relies on batch file or separate INI.
  • Removed unused local agent config: stripped the [Agents] section (4 entries with UUIDs/IPs/ports) from terminal.ini output — no local agent processes are used.
  • OptMode reset: removed as a separate step; now included inline in terminal.ini patching during optimizer startup.
  • Wine prefix resolution: changed from 2-parent to 3-parent traversal, matching the backtest pipeline's Wine prefix logic.
  • Optimizer /config: INI: now includes Model=4 and Period=M1 in the test-configuration passed via /config: flag (previously hardcoded in the older INI-based approach).
  • Set file parsing: parameter delimiter changed from : to = (matches actual MT5 .set format); ||Y sweep param parsing rewritten to split on || for accurate range extraction.
  • OptimizationParams: model parameter removed (was hardcoded to 0 everywhere anyway; MT5 now defaults correctly).

Fixed

  • Cargo.lock sync: lockfile version field is now kept in sync with the release process.
  • Set file cross-platform reading: .set files are now read as UTF-16LE (with BOM) or UTF-8 regardless of platform, fixing potential encoding issues on macOS/Linux.
  • Read-only set file overwrite: handles pre-existing read-only files during .set write by removing them first.

[1.32.4] — 2026-04-25

Fixed

  • HTML report extraction: ShutdownTerminal=1 does not cause terminal64.exe to exit on Wine/macOS. Inactivity watchdog now waits 30 s for the report file after the tester log goes quiet, then kills MT5 unconditionally — no longer depends on natural process exit.
  • Duplicate deals: tester agent log writes each deal twice; deduplicated via HashSet<deal_number> in parse_journal_deals.
  • Entry direction inference: all journal deals were marked entry="in" because no direction info exists in the log. Fixed with a per-symbol position tracker (signed lot accumulation) to infer "in" / "out" correctly.
  • list_deals returning 0 results: is_closed_trade() was gating on profit != 0.0; journal deals legitimately have zero profit. Removed the profit gate.
  • Wrong tester log selected: Agent-0.0.0.0 logs only contain startup lines, not deal lines. find_active_tester_agent_log now prefers Agent-127.0.0.1 and tiebreaks by file size.

Added

  • launch_backtest exposes shutdown (default true) and inactivity_kill_secs (default: disabled; set to e.g. 120 to enable the inactivity watchdog) as explicit tool parameters.
  • Report DB stores deals in SQLite; all analytics tools resolve by report_id / report_dir / latest.

Verified

  • 1-month DPS21/XAUUSD.cent/M5 backtest produces full HTML report: win_rate=70%, profit_factor=0.77, sharpe=-3.61, max_dd=6.93%. All 17 analytics tools return real data.

[1.31.5] — 2026-04-22

  • feat: add check_update and update tools with background auto-check
  • release: v1.31.4
  • fix: update all scripts for correctness and consistency
  • release: v1.31.3
  • docs: clean up public repo — remove IDE files, fix stale refs
  • release: v1.31.2
  • refactor: reduce handler boilerplate in analysis and experts modules
  • fix: registryType mcpbPackageType → mcpb

[1.31.4] — 2026-04-22

  • fix: update all scripts for correctness and consistency
  • release: v1.31.3
  • docs: clean up public repo — remove IDE files, fix stale refs
  • release: v1.31.2
  • refactor: reduce handler boilerplate in analysis and experts modules
  • fix: registryType mcpbPackageType → mcpb

[1.31.3] — 2026-04-22

  • docs: clean up public repo — remove IDE files, fix stale refs
  • release: v1.31.2
  • refactor: reduce handler boilerplate in analysis and experts modules
  • fix: registryType mcpbPackageType → mcpb

[1.31.2] — 2026-04-22

  • refactor: reduce handler boilerplate in analysis and experts modules
  • fix: registryType mcpbPackageType → mcpb

[1.31.1] — 2026-04-22

  • Minor improvements and bug fixes