策略概览
当前档位{{ metrics.current_level || '-' }}
冷却剩余{{ metrics.cooldown_remaining ?? '-' }}
EWMA R{{ formatNumber(metrics.ewma_r) }}
EWMA D{{ formatNumber(metrics.ewma_d) }}
EWMA T{{ formatNumber(metrics.ewma_t) }}
最近轮次{{ metrics.last_round_id || '-' }}
最近收益率{{ formatNumber(metrics.last_profit_rate) }}
最近异常{{ metrics.last_anomaly ? metrics.last_anomaly_reason : '无' }}
最后更新:{{ lastUpdated || '-' }}
配置编辑
请使用完整兵号(如 G1-001)。
{{ error }}
策略参数调优
调试期可增大,避免超时误判。
越大越看重最近轮次,越小越平滑。
稳定轮数越多,升档越谨慎。
异常触发门槛,越大越不敏感。
轮次耗时低于该比例且损失上升则判异常。
异常后强制 L1 的轮数。
超时 LOSS 计入损失的权重,仅影响算法判定。
按游戏规则填写,影响收益率计算。
按游戏规则填写,损失成本。
全未上报轮次不影响算法(适合调试)。
修改后对新开轮次生效。
{{ paramError }}
小兵状态
| 分组 | 小兵 | 状态 | 待上报 | 租期到期 |
|---|---|---|---|---|
| {{ row.group }} | {{ row.soldier }} | {{ row.state }} | {{ row.needs_report }} | {{ row.lease_expires_at || '-' }} |
API 请求示例
当前域名:{{ apiBase }}
查询小兵状态(GET /api/soldier/state)
GET {{ apiBase }}/api/soldier/state?group=G1&soldier=G1-001 HTTP/1.1
请求参数说明
| 字段 | 说明 | 是否必填 | 备注 |
|---|---|---|---|
| group | 分组编码 | 必填 | - |
| soldier | 小兵编号 | 必填 | 全码,如 G1-001 |
响应示例(字段后注释中文说明)
{
"group": "G1",
"soldier": "G1-001",
"state": "DEPLOYED",
"needs_report": true,
"lease_expires_at": "2026-01-08T12:30:00Z"
}
// group: 分组编码
// soldier: 小兵编号(全码)
// state: 当前状态(REST / DEPLOYED)
// needs_report: 是否需要上报
// lease_expires_at: 租期到期时间,可能为 null
上报前必须为 DEPLOYED,且 needs_report 为 true。
上报战斗结果(POST /api/soldier/report)
POST {{ apiBase }}/api/soldier/report HTTP/1.1
Content-Type: application/json
{
"group": "G1",
"soldier": "G1-001",
"result": "WIN",
"kills": 2,
"duration_sec": 68
}
请求字段说明
| 字段 | 说明 | 是否必填 | 备注 |
|---|---|---|---|
| group | 分组编码 | 必填 | - |
| soldier | 小兵编号 | 必填 | 全码 |
| result | 战斗结果 | 必填 | WIN / LOSS |
| kills | 击杀数量 | 可选 | 默认 0 |
| duration_sec | 战斗耗时(秒) | 可选 | 不填由服务端估算 |
响应示例(字段后注释中文说明)
{
"status": "OK",
"round_id": 123
}
// status: 请求处理结果
// round_id: 当前轮次 ID
诊断导出
导出包含 config.json、rounds.csv、deployments.csv、logs.ndjson。
{{ exportError }}