{{ overviewGroup.label || selectedAccount.label }} 全部子策略
{{ portfolioCapital.note }}{{ portfolioExposure.notionalNote }}{{ portfolioExposure.pnlNote }}
{{ activeTab.description }}
失败记录覆盖有限:告警刷新未成功或部分实例尚未发布新版本记录,不能据此认定没有失败。
独立连接监控 API。未连接时不填充演示行情或虚构收益。
{{ portfolioCapital.note }}{{ portfolioExposure.notionalNote }}{{ portfolioExposure.pnlNote }}
跨策略 USDT 口径 · 不是账户总收益
成交净额已包含对应费用,不与已实现损益重复相加。资金费按实例归档口径;未知不补零,实例齐备也不代表交易所全历史完整。
时间进度 ≠ 成交进度 · 到期 ≠ 结算 · 新周期优先 · 条内右侧:目标/实为基础币、浮盈 USDT
逐策略配置预算之和,不是保证金或实时敞口。
{{ metric.note }}
每个币种独立运行 · 持仓按各自基础币展示 · 有周期者按周期开始时间倒序
{{ row.runtimeReason || 'Trader尚未发布状态说明' }}
{{ row.entry?.reason || 'Trader尚未发布入场条件' }}
{{ kellyRowBudgetNote(row) }};固定预算 {{ fmt(row.budget_usdt) }} USDT。
实盘 {{ fmt(row.kelly.live_sample_count,0) }} / 回放 {{ fmt(row.kelly.replay_sample_count,0) }} 周期 · {{ kellyJob(row.kelly.job_status) }}
{{ kellyRowBudgetNote(row) }}
{{ row.notice }} · 冷却至 {{ time(row.recovery.cooldown_until) }}
{{ row.unrealized_reason || '目标与实际持仓独立展示,不以目标推断成交。' }}
| 子策略 | 最新价 / K线 | 状态 | 入场条件 | 逐币开关 | 实际 / 目标 / 差额 | 固定预算 | 持仓浮盈 | ½ KELLY | 操作 |
|---|---|---|---|---|---|---|---|---|---|
|
{{ row.base_currency || '?' }}
{{ row.instrument }}{{ row.is_new_5m===true?'5m 子策略':row.is_new_5m===false?'旧版 C 策略':'策略版本未知' }} |
{{ priceFmt(row.last_price) }}{{ row.bar_ts ? shortTime(row.bar_ts).slice(0,11) : 'K线时间未知' }} | {{ row.stateLabel }}{{ row.runtimeReason || '状态说明未发布' }} | {{ entryStateLabel(row.entry) }}
|
{{ row.symbol_control ? symbolModeLabel(row.symbol_control.enabled) : '未知' }}{{ symbolPhaseLabel(row.symbol_control?.phase) }} | {{ fmt(row.position_base,4) }} / {{ fmt(row.target_base,4) }} / {{ signed(row.diff_base,4) }}{{ row.base_currency || '基础币' }} · 实际 / 目标 / 差额 | {{ fmt(row.budget_usdt) }}{{ row.budgetShare===null ? '占比未知' : '占已知预算 '+fmt(row.budgetShare,1)+'%' }} | {{ signed(row.unrealized_pnl) }} | {{ kellyRowState(row) }} 按冻结预算执行 · 不等待估计或回放 {{ kellyScore(row.kelly) }} · 仅排序 · 固定预算 {{ fmt(row.kelly.multiplier,3) }}× · 最新估计 {{ fmt(row.kelly.effective_capital_usdt) }} USDT 未发布预算 · {{ kellyJob(row.kelly.job_status) }} 未发布 |
占已知预算的比例 · 非权益使用率
缺失预算不参与分母,也不视为 0。固定预算与可用资金不是同一口径,不计算“剩余预算”。
当前未报告额外异常。监控是间接观测,不保证交易、归档与风控链路全部健康。
权益来源:{{ overviewGroup.equity?.source_instance || '未知' }},同一账户权益与 USDT 余额浮盈只计一次。不同基础币数量不相加;持仓市值按各实例最新 5m 收盘估算。账户浮盈优先取同一权益快照的 USDT 余额 UPL,包含未纳入子策略的持仓;缺失时仅合计已知本合约持仓浮盈,不重复合计余额级值,未知不补零。未提供账户权益历史时,不绘制虚构收益曲线。损益金额为累计归档口径,权益与持仓为当前可读快照。
点击任意行打开详情,查看指标与规则、周期与收益拆分。金额均为 USDT 口径;数量与面值不跨合约相加,未知显示 —。
| 合约 | 运行态 | 持仓 / 目标 | 预算 | 最新价 | 浮盈 | 已实现 | 手续费 | 资金费 | 净收益 | 订单 | 完结周期数 | 详情 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {{ row.instrument || '—' }} | {{ row.stateLabel }} | {{ fmt(row.position_base,4) }} / {{ fmt(row.target_base,4) }} | {{ fmt(row.budget_usdt) }} | {{ fmt(row.last_price) }} | {{ signed(row.unrealized_pnl) }} | {{ signed(row.realized) }} | {{ signed(row.fee_cashflow,4) }} | {{ signed(row.funding,4) }} | {{ signed(row.realized_net) }} | {{ fmt(row.order_count,0) }} | {{ fmt(completedCycleCount(row),0) }}已过期 | |
| {{ busy?'正在读取全子策略…':'暂无子策略数据' }} | ||||||||||||
净收益 = 已实现成交损益 + 手续费现金流 + 已观测资金费;任一项缺失即显示 —,不补零。偏差与理论盈亏需切到单合约查看。
{{ strategyRuntime.reason }}
状态始于 {{ time(strategyRuntime.since) }} · 最近心跳 {{ time(strategyRuntime.ts) }}Trader 主动发布 · 与逐币开关独立。“结束”仅代表程序退出,可能保留仓位;“停止”才代表逐币退出已核验完成。
该实例为固定预算模式:半凯利不适用,不等待凯利估计或历史回放,也不按半凯利承诺下一周期预算。真实周期账本与周期冻结预算照常展示;是否开仓由 Trader 风控核验。
{{ kellyReason(kelly.reason) }} · 摘要字段校验未通过
最近后台任务异常:{{ kellyReason(kelly.last_job_error) }}。{{ kelly.estimate_published ? '仍显示上次发布值,是否可用由 Trader 核验。' : '尚无可展示的有效预算。' }}
完整凯利 {{ fmt(kelly.kelly_full,4) }} · 原始半凯利 {{ fmt(kelly.kelly_half_raw,4) }}。未发布状态下的数值可能来自上次估计,不代表当前有效。
配置指纹:{{ kelly.config_hash || '未发布' }}
固定基准、不复利,各子策略独立。当前周期使用建立时冻结的预算与版本;这里的“系数已发布”不是开仓许可,数据新鲜度、保证金及风控由 Trader 最终核验。回放样本不等同于实盘业绩,统计区间不跟随页面分析区间改变。
当前 Trader 未发布半凯利摘要,可能使用固定预算或旧版本;不推断凯利已开启,也不填入默认系数。启用及最低金额等参数仍在 Trader 配置,Monitor 仅只读展示。
新版 5m vol80 center:参数来源逐项标注;规格默认仅在 Trader 快照未发布该字段时显示,不冒充已经生效的实值。
| 参数 | 值 | 来源 |
|---|---|---|
| {{ p.label }} | {{ p.value }} | {{ p.source }} |
新策略为 5m 信号与调仓;旧 C 才使用 1m 收盘更新目标。基准预算固定、不复利;半凯利调整下一周期预算。快照不是实时盘口。
仅展示实盘账本有实际结束时间的周期,按结束时间筛选;计划到期不算完结,不混入回放样本。{{ interval>0 ? '按顶部刷新间隔独立轮询' : '当前手动刷新' }},不使用 SSE;后端最多每 30 秒采样一次,重复刷新不代表重新采样。
周期采样 {{ time(cycleCoverage.as_of || completedCycles.as_of) }} · 服务端 {{ time(completedCycles.server_time) }}。{{ cycleCoverage.note || '仅覆盖已观测账本,不代表交易所完整历史。' }}
已覆盖 {{ fmt(cycleCoverage.covered_instances,0) }} / {{ fmt(cycleCoverage.total_instances,0) }} 个子策略{{ cycleCoverage.complete===true ? ',按全部已观测周期统一计算指标' : ',仅统计已覆盖周期;未发布账本的子策略不按零补齐' }}。不同合约的胜率与均值按周期样本重算,不平均各合约指标。
{{ busy ? '正在读取已完结周期…' : error ? '本次未取得周期数据,统计保持未知。' : '选择账户与合约后读取,尚无周期采样。' }}
{{ cycleCoverage.reason }} · {{ cycleCoverage.error }}
净收益 = 已实现损益 + USDT 手续费现金流 + 返佣(rebate)+ 归属资金费。收益未齐不计胜率;无成交、作废周期不计收益。平均时长按所有具有可信起点的完结周期计算,不局限于完整收益样本。
| 合约 | 周期 ID | 开始时间 | 实际结束时间 | 时长 | 冻结预算(USDT) | 净收益(USDT) | 收益率 | 成交订单数 | 状态 / 缺失说明 | 详细信息 |
|---|---|---|---|---|---|---|---|---|---|---|
| {{ c.instrument || '—' }} | {{ c.flow_id && c.flow_id.length>24 ? c.flow_id.slice(0,12)+'…'+c.flow_id.slice(-8) : c.flow_id || '—' }} | {{ c.missing_reason?.split(';').includes('cycle_open_missing') ? '—' : shortTime(c.start) }} | {{ shortTime(c.end) }} | {{ cycleDurationText(c.duration_ms) }} | {{ fmt(c.capital) }} | {{ signed(c.complete===true && c.status==='complete' ? c.net_pnl : null) }} | {{ percent(c.complete===true && c.status==='complete' ? c.return_rate : null) }} | {{ fmt(c.order_count,0) }} | {{ cycleStatusLabel(c.status) }}{{ c.missing_reason }} | |
| {{ busy ? '正在读取已完结周期…' : !cyclesAvailable ? '周期覆盖未知或不可用,不按零周期展示' : '此区间内尚无已观测的完结周期' }} |
冻结预算取周期建立时的账本值,不用当前配置回填;起点、收益率或费用缺失保持 —。详情仅列出实际结束的周期,时长不会以计划到期时间补造。
| 小时 | 订单数 | {{ allInstruments ? '数量' : '数量(' + (contractInfo.qtyUnit || '张') + ')' }} | 名义额(USDT) |
|---|---|---|---|
| {{ time(h.ts) }} | {{ h.count }} | {{ fmt(h.contracts,3) }} | {{ fmt(h.notional) }} |
当前为全合约聚合:按完结时间跨合约合并排序,各合约面值不同,成交数量只在同一合约内可比。 每个终态订单只统计一次,包括部分成交后撤单。创建时间为订单意图创建时刻,时间均为北京时间。均价缺失不以委托价代替;方向调整价差 = (成交均价 / 目标价 − 1) × 10,000 × 方向系数(买入 +1,卖出 −1);正值不利、负值有利,未含手续费。目标价仅取对应已确认 K 线收盘价(按来源 1m/5m 校验跨度);到期取截止于到期时刻的那根K线,缺失不计偏差,不用strike或盘口替代。
| 合约 | 创建时间 | 完结时间 | 方向 / 状态 | {{ allInstruments ? '数量' : '成交(' + (contractInfo.qtyUnit || '张') + ')' }} | 成交均价 | 目标价(确认K线收盘) | 价差(bp) | 费用现金流 | 详情 |
|---|---|---|---|---|---|---|---|---|---|
| {{ o.instrument || '—' }} | {{ shortTime(o.created) }} | {{ shortTime(o.completed_at) }} | {{ o.side==='buy'?'买入':o.side==='sell'?'卖出':'—' }}{{ orderState(o.state) }} | {{ fmt(o.filled,3) }} {{ orderQtyUnit(o, fleet?.instances) }} | {{ fmt(o.avg_price) }} | {{ fmt(o.target_price) }} | {{ signed(o.side_adjusted_adverse_bps,2) }} | {{ signed(o.fee,4) }} {{ o.fee_currency || '—' }} | |
| {{ busy?'正在读取…':'此范围内暂无终态成交订单' }} |
跟踪差额、工作订单、撤单与拒单原因可在策略及健康视图核对。延迟指标仅使用已记录时间,不推测成交。
{{ pretty(stats.coverage) }}
| 周期标识 | 成交订单 | 成交数量({{ contractInfo.qtyUnit || '张' }}) | 成交金额 | 费用现金流 |
|---|---|---|---|---|
| {{ c.flow_id || '未关联' }} | {{ c.order_count }} | {{ fmt(c.filled_contracts,3) }} | {{ fmt(c.notional) }} | {{ signed(c.fee_cashflow,4) }} |
| 暂无周期统计 | ||||
事件保留原始原因,仅订单终态用于交易统计。历史来源为本地 SQLite,实时来源为 Redis 有限窗口。
| 发生时间 | 类型 | 事件摘要 | 详情 |
|---|---|---|---|
| {{ shortTime(e.data?.ts || e.ts) }} | {{ eventLabel(e.data?.type || e.type) }} | {{ eventSummary(e) }} | |
| 此范围内暂无可读事件 | |||
{{ pretty(dashboard.coverage) }}
监控令牌没有管理权限,维修模式也不能绕过。管理令牌只保存在本页内存:刷新、切换标签、退出管理或鉴权失效后立即清除,不写入 URL、localStorage 或 sessionStorage。
后端未配置管理令牌时管理功能整体关闭(verify 返回 401,其余管理接口返回 503);不会退回监控令牌,也不会因为监控已连接而放行。
管理意图与真实运行态分列。“已接收 / 已应用”只是命令回执,不代表已平仓、已停止或运行正常。本页只提供启用、停用与周期收尾,不涉及预算、参数、进程或部署。
列表读取 {{ shortTime(mgmtLoadedAt) }} · 服务端时间 {{ time(mgmtServerTime) }} · 命令历史 {{ shortTime(mgmtCommandsAt) }} · 每 10 秒轮询,仅本页可见时运行
{{ row.unavailableReason }}
待回执:{{ mgmtActionLabel(row.pendingCommand.action) }} · 命令
{{ row.pendingCommand.command_id }} · {{ mgmtCommandLabel(row.pendingCommand.status) }}
等待本轮结束期间,可被启用 / 平仓并停用 / 仅结束本轮替代;旧命令会标记 superseded。
超时仍按同一命令 ID 查询,不会用新 ID 重复提交。
最近命令:{{ mgmtActionLabel(row.lastCommand.action) }} · {{ mgmtCommandLabel(row.lastCommand.status) }} · {{ shortTime(mgmtCommandTime(row.lastCommand)) }}
每实例最近 20 条 · 状态为后端回执
| 提交时间 | 策略 | 操作 | 命令 ID | 状态 | 预期代次 |
|---|---|---|---|---|---|
| {{ shortTime(mgmtCommandTime(item)) }} | {{ item.instrument || item.instance_key || '—' }} | {{ mgmtActionLabel(item.action) }} | {{ item.command_id || item.id || '—' }} | {{ mgmtCommandLabel(item.status) }} {{ item.reason }} | {{ valid(item.expected_generation) ? item.expected_generation : '—' }} |
| 暂无可读命令回执 | |||||
“已完成”只表示命令在后端走到终态,仍需以真实运行态与持仓核验;状态缺失显示“未发布”,不推断成功。
正在读取配置文件…
{{ configError }}
文件在进程启动后被修改:当前运行值仍是启动时读取的版本,重启监控进程才生效。
{{ configData.error }}
配置文件无可展示的 KEY=VALUE。
{{ configData.note }}
{{ pretty(detail) }}
实例 {{ fleetDetail.instance_key || '—' }} · 命名空间 {{ fleetDetail.namespace || '—' }} · 以下金额均为 USDT 口径。
{{ fleetDetailError }}
正在读取该子策略的指标与规则…
半凯利:{{ fleetDetail.kelly?.available ? (fleetDetail.kelly.estimate_published ? fmt(fleetDetail.kelly.multiplier,3) + '× · 预算 ' + fmt(fleetDetail.kelly.effective_capital_usdt) : '未发布本次估计,仅供参考') : '未发布摘要' }}。数据为只读快照,不代表实时盘口或完整账户收益。
{{ cycleDetail.instrument || '合约未知' }} · {{ shortTime(cycleDetail.start) }} → {{ shortTime(cycleDetail.end) }} · 时长 {{ cycleDurationText(cycleDetail.duration_ms) }} · {{ cycleStatusLabel(cycleDetail.status) }} · 金额均为 USDT 口径,账本未覆盖的字段显示 —,不补零。
{{ cycleDetailError }}
正在读取该周期订单明细…
缺失说明:{{ cycleDetailSummary.missing_reason }}
| 末笔成交 | 方向 | 状态 | 成交量 | 成交均价 | 手续费 | 返佣 | 订单盈亏 | 成交笔数 | 订单 ID |
|---|---|---|---|---|---|---|---|---|---|
| {{ o.last_fill ? shortTime(o.last_fill) : '—' }} | {{ o.side === 'buy' ? '买入' : o.side === 'sell' ? '卖出' : '—' }} | {{ o.state || '—' }} | {{ fmt(o.filled, 3) }} | {{ priceFmt(o.avg_px) }} | {{ signed(o.fee, 4) }} {{ o.fee_ccy }} | {{ signed(o.rebate, 4) }} {{ o.rebate_ccy }} | {{ signed(o.pnl) }} | {{ fmt(o.trade_count, 0) }} | {{ o.client_id }} |
| 该周期没有可展示的订单 | |||||||||
| 成交时间 | 方向 | 数量 | 盈亏(USDT) | 手续费 | 订单 |
|---|---|---|---|---|---|
| {{ shortTime(t.ts) }} | {{ t.side === 'buy' ? '买入' : t.side === 'sell' ? '卖出' : '—' }} | {{ fmt(t.sz, 3) }} | {{ signed(t.pnl) }} | {{ t.fee == null ? '—' : signed(t.fee, 4) + (t.fee_ccy ? ' ' + t.fee_ccy : '') }} | {{ t.client_id }} |
| 时间 | 金额 | 币种 | 账单 ID |
|---|---|---|---|
| {{ shortTime(f.ts) }} | {{ signed(f.bal_chg, 4) }} | {{ f.ccy || '—' }} | {{ f.bill_id }} |
{{ mgmtConfirm.meta.semantics }}
| 子策略 | 固定预算 | 凯利状态 / 用途 | 半凯利系数 | 预算倍率 | {{ kellyPortfolio.hasRankingOnly ? '估计预算(含参考)' : '凯利分配' }} | 占估计合计 | 当前周期冻结预算 | 样本 实盘 / 回放 |
|---|---|---|---|---|---|---|---|---|
| {{ row.label }}{{ row.instrument }} | {{ fmt(row.budget_usdt) }} | {{ row.stateLabel }}{{ row.fixedBudget ? '不等待估计或回放' : row.kelly?.ranking_only === true ? '仅排序 · 固定预算' : row.kelly?.ranking_only === false ? '资金缩放' : '用途未发布' }}{{ row.fixedBudget ? '按冻结预算执行' : kellyJob(row.kelly?.job_status) }} | {{ row.fixedBudget ? '不适用' : kellyScore(row.kelly) }}{{ row.fixedBudget ? '固定预算实例不计半凯利' : valid(row.kelly?.version) ? 'v' + row.kelly.version : '版本未发布' }} | {{ row.published ? fmt(row.kelly.multiplier,3) + '×' : '—' }}参考值,不用于实盘预算 | {{ row.published ? fmt(row.amount) : '—' }}仅供参考 | {{ valid(row.share) ? fmt(row.share,1) + '%' : '—' }} | {{ fmt(row.kelly?.cycle_capital_usdt) }}{{ valid(row.kelly?.cycle_kelly_version) ? '冻结版本 v' + row.kelly.cycle_kelly_version : '冻结版本未发布' }} | {{ row.fixedBudget ? '不适用' : row.kelly?.available ? fmt(row.kelly?.live_sample_count,0) + ' / ' + fmt(row.kelly?.replay_sample_count,0) : '—' }} 固定预算实例不计算半凯利 数据截止 {{ time(row.kelly?.data_cutoff) }} |
| 此账户暂未返回子策略实例 | ||||||||
口径:{{ kellyPortfolio.totalLabel }}只合计「估计已发布」的实例({{ kellyPortfolio.publishedCount }}/{{ kellyPortfolio.totalCount }}),未发布或不可用不补零。半凯利系数是原始评分,预算倍率是受最低金额及上限约束后的值,并非账户杠杆,二者不同;标记「默认」表示样本不足时 Trader 采用的默认评分,并非回放算出的系数。 仅排序模式不按凯利缩放资金,估计预算与占比仅供参考;实际新周期按固定预算和持仓名额约束建立。 固定预算实例({{ kellyPortfolio.fixedBudgetCount }} 个)半凯利不适用,不等待估计或回放,也不进入凯利分配合计;其真实周期账本与冻结预算照常展示。 当前周期沿用建立时冻结的预算;后台刷新完成前展示上次已发布评分。固定预算、估计预算都不等于保证金或实时敞口。Monitor 仅读取 Trader 已发布摘要,不自行重算;最终开仓许可由 Trader 核验。