将 TrackRecordPublisher.ex5(已编译的可执行文件)放入 MT5,即可把账户成绩自动发送到 https://track-record.atoz-gm.net。无需编译。
1. 生成 API 密钥
登录 https://track-record.atoz-gm.net/mypage →
- 点击「+ 注册EA」,输入 slug(例如
alpha)、显示名与平台(MT5)→ 创建 - 复制每个EA卡片上显示的 API 密钥(48位)
2. 将EA放入 MT5
- MT5 →「文件」→「打开数据文件夹」→ 打开
MQL5\Experts\文件夹 - 将
TrackRecordPublisher.ex5复制到该处(无需编译) - 右键点击 MT5 的「导航器」→「刷新」
3. 允许 WebRequest(必需・最重要)
MT5 →「工具 → 选项 → 智能交易系统」(Tools → Options → Expert Advisors)→
- 勾选「允许以下URL的WebRequest」
- 在列表中添加
https://track-record.atoz-gm.net→ 确定
未设置则无法发送,日志会提示「请添加允许的URL」。
4. 将EA挂到图表
- 在要发布成绩的账户MT5上,把
TrackRecordPublisher拖到任意图表 - 输入参数:
- InpApiKey:步骤1复制的API密钥(必填)
- InpDisplayName:显示名(留空则用MT5账户名)
- InpSendIntervalSec:发送间隔(默认120秒)
- InpSendOpen / InpSendClosed:是否发送持仓 / 已平仓历史
- 在「常用」标签勾选 「允许算法交易」 → 确定
- 打开工具栏的 「算法交易」(绿色)
图表左上出现「TrackRecord: 发送OK …」即成功。
反映全部历史(回填 Backfill)
EA 只能发送终端已加载的历史。要反映全部周期:
- 在 MT5 底部 工具箱 →「历史」标签右键 → 选择 「全部历史」(加载整个周期)
- 在EA属性(F7)中把
InpForceBackfillNow设为true→ 确定 - 等待图表左上出现「回填完成:已反映全部历史」(交易多时需数十秒,分批发送)
- 完成后把
InpForceBackfillNow改回false
baseline(基准余额)会以「当前余额 − 全部交易净损益」自动计算,资产曲线也会从过去重建。
运行说明
- 启动后立即发送一次,之后按设定间隔发送
- 发送内容:账户信息 / 余额・净值 / 持仓 / 已平仓历史
- 首次回填全部历史(
InpBackfillOnFirstRun),之后仅差分 - 即使交易很多,回填也按
InpBatchSize条分批发送,海量历史也可靠 - 服务器按订单号去重,重发・重启安全
故障排查
- 「发送错误 err=…」→ 检查步骤3的允许URL
- 「ApiKey未设置」→ 在 InpApiKey 正确粘贴48位密钥
- 未反映 → 在管理页确认该账户「公开」是否为ON
注意
- API密钥即该账户的发送权限本身,请勿泄露。泄露时可在管理页「重新生成API密钥」(EA端也需更新)。
- 本EA 不进行买卖(仅读取并发送成绩)。