← 数据大屏 · 系统配置(密钥 / 白名单)

EA 推演分析平台 — 使用说明

本服务接收 MT5 EA 的 HTTP 上报,与 mt5data / 商城授权无关;任意模拟或实盘账号均可推送数据到大屏。

一、EA 策略怎么用

  1. RemoteAnalyticsIngest.mqh 复制到 MT5 的 MQL5\Include\Trade\
  2. 在头文件中设置 InpEaAnalyticsURL 为本站完整上报地址(见下文「接口」)。
  3. 若服务端启用了上报密钥,设置 InpEaAnalyticsToken 与服务器完全一致(可在 系统配置 生成随机串并保存)。
  4. 编译并挂载 EA_Simulation30_Analytics.mq5 到图表;确保 MT5「工具 → 选项 → 专家顾问 → 允许 WebRequest」。
  5. 在 WebRequest 白名单中添加根域名(仅协议+主机,无路径),例如 https://你的域名

EA 默认按定时器(如 30 秒)完成一轮虚拟开平仓后 POST 上报;大屏按 品种 + MT5 登录号 分开展示。

二、MT5 WebRequest 白名单

路径:工具 → 选项 → 专家顾问 → 允许 WebRequest 的 URL 列表

三、HTTP 接口一览

以下以当前站点根地址为示例(部署后替换为你的域名)。

方法路径说明
GET/health健康检查
POST/api/v1/ingestEA 上报:① 仅 live 对象 = 持仓过程快照(约每 1~2 秒);② cycles 非空 = 平仓周期。同一 URL、同一 Token。
GET/api/v1/public/initial-capital新流初始虚拟资金(JSON),供 EA OnInit 拉取,与设置页一致
GET/api/v1/dashboard大屏汇总(公开)
GET/api/v1/dashboard/:symbol单品种详情,参数 account_idrecent
GET/api/v1/analysis/insights优化分析;若配置只读密钥则需 X-Analysis-Token
GET/POST/api/v1/admin/config读取/保存运行时配置;需 X-Admin-Secret(仅服务器 .env)
GET/api/v1/admin/streams数据流列表(管理密钥)
POST/api/v1/admin/streams/reset清空单条或整品种:symbol + account_idall_accounts:true
GET/symbol?symbol=X&account_id=品种推演明细子页(公开)
大屏/?account_id=登录号打开即按账号筛选(部分匹配);地址栏会随搜索同步

四、密钥对说明

名称环境变量 / 配置请求头用途
上报密钥 EA_ANALYTICS_INGEST_TOKEN 或 Dashboard 保存 X-EA-Analytics-Token 防止他人向你的 /ingest 刷数据;与 MQL InpEaAnalyticsToken 一致。留空则不校验。
只读密钥 EA_ANALYTICS_READ_TOKEN 或 Dashboard X-Analysis-Token 保护 /api/v1/analysis/insights。留空则该接口公开。
管理密钥 EA_ANALYTICS_ADMIN_SECRET(.env,不可由 EA 使用) X-Admin-Secret /settings 保存密钥与白名单。可用 openssl rand -hex 32 生成。
注意:管理密钥切勿写入 EA 或提交到 Git。上报密钥可随机生成后同时写入服务器与 InpEaAnalyticsToken

五、服务端 IP 白名单(可选)

系统配置 中填写「上报 IP 白名单」后,仅所列 IP 可访问 POST /api/v1/ingest。需在 Nginx 等反代上设置 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;,否则服务器看到的是反代 IP。留空表示不限制。

六、部署提要(东京服务器 / 任意 Linux)