MetaEditor transfers compiled output to the Experts mirror of Shared
Projects, so the hook's archive step never found an .ex5 next to the
.mq5. Archive from the mirror instead, and also deploy each successful
build to MQL5/Experts/VizionAI-Trading/profitgtx.ex5 so the EA shows up
top-level in the MT5 Navigator for drag-and-drop.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- NormalizeLots: derive rounding digits from SYMBOL_VOLUME_STEP instead of
hardcoded 2, floor onto the step grid before clamping to min/max
- FitLotsToMargin: shrink volume to fit 90% of free margin via
OrderCalcMargin; skip the trade when even VOLUME_MIN cannot be afforded
(fixes repeated 'not enough money' rejects on XAUUSD)
- GetSLPoints/GetTPPoints: clamp to SYMBOL_TRADE_STOPS_LEVEL + spread
(fixes repeated 'invalid stops' rejects on GBPUSD counter trades)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
/compile only runs headless when no instance is open; otherwise it
hands off to the running instance and silently does nothing. Detect
that case via tasklist and skip cleanly instead of racing a compile
that will never happen.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
MetaEditor64.exe hands off /compile requests to an already-running
instance and returns immediately, so the previous version read an
empty/missing log file. Now waits for the log to appear and stop
growing before checking it.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Every commit to main now tags itself sequentially, compiles the EA via
MetaEditor CLI, archives the .ex5 to builds/, pushes, and prunes tags
and archived builds down to the last 10.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- AIGateway.mqh: use StringLen(json_payload) instead of WHOLE_ARRAY to avoid
null terminator being included in POST body (caused malformed JSON to gateway)
- ea_template.tpl: add XAUUSD H1 chart template for MT5 terminal setup
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>