{{ tabs.find(t => t.id === tab).name }}
{{ online ? '系统运行中' : '交易进程离线' }} · {{ modeCn }} {{ clock }} {{ me.username }}({{ me.role_cn }}) 退出
当前 ETH 价格
{{ fmt(s.price, 2) }}
较上根 4H 收盘 {{ signed(chg) }}%
日
日线状态
{{ m.daily_bias > 0 ? '多' : m.daily_bias < 0 ? '空' : '—' }} 已确认 {{ biasAge }}
日线收盘价相对日线 EMA20 · {{ biasFrom }} 起
4H
4H 状态
{{ regimeCn }} {{ campaign.name }}{{ campaign.note }}
{{ regimeSub }}
≋
当前 ATR(4H)
{{ fmt(m.atr, 1) }}
ADX {{ fmt(m.adx, 1) }} · RSI {{ fmt(m.rsi, 1) }} · 偏离 {{ pct(m.deviation) }}

行情观察 {{ f.name }} EMA20 EMA150 伏击阵地 止损 反杀警戒

价格 · 成交量 ADX14 ADX +DI −DI · 20 / 25 RSI14 · 30 / 70 ATR14

风控面板

账户权益{{ fmt(s.equity, 2) }} U最高 {{ fmt(s.peak, 2) }}
今日盈亏{{ signed(s.day_pnl) }} U
本周盈亏{{ signed(s.week_pnl) }} U
{{ g.name }}{{ fmt(g.used, 1) }} / {{ fmt(g.cap, 0) }}U
单批额度 / 狂暴 {{ fmt(s.unit, 0) }} U · {{ s.boost ? '允许' : '关闭' }}
{{ s.can_open ? '正常' : '停止开仓' }}{{ s.can_open ? '未触发熔断,允许开仓' : s.block_reason }}
{{ b.name }}

持仓明细 {{ ownerCn }}

批次方向开仓价数量止损浮动盈亏
第 {{ i + 1 }} 批 {{ pos.side === 'long' ? '多' : '空' }} {{ fmt(e.price, 2) }}{{ fmt(e.qty, 3) }} {{ fmt(pos.stop, 2) }} {{ signed(upnl(e)) }} U

当前无持仓

均价 {{ fmt(pos.avg, 2) }} · 交易所止损 {{ s.exchange_stop ? fmt(s.exchange_stop, 2) : '未挂' }} 打到止损 −{{ fmt(pos.risk, 1) }} U

实时系统日志

{{ hm(e.ts) }}【{{ levelCn(e.level) }}】{{ e.message }}

{{ campErr || '正在核对三个战役的入场条件…' }}

我的账号

用户名{{ me.username }}
角色{{ me.role_cn }}
权限{{ rolePerm[me.role] }}
修改密码

{{ pwMsg.text }}

改完后本机保持登录,其他设备上的登录会自动退出。

运行模式 只读,修改需要在服务器上操作

读取中…

账号与角色管理 只有统帅能看到

用户名角色创建时间操作
{{ x.username }} (我) {{ dt(x.created) }} 重置密码删除 —

{{ userMsg.text }}

{{ n }}{{ rolePerm[k] }}
改角色、重置密码、删除账号后,对方的登录立即失效,需要重新登录。系统至少保留一个统帅。

操作记录

时间操作人操作对象内容
{{ dt(a.ts) }}{{ a.actor }}{{ a.action }}{{ a.target }}{{ a.detail }}

还没有账号相关的操作记录

历史回测 {{ btReport.from.slice(0,10) }} → {{ btReport.to.slice(0,10) }} · {{ btReport.bars_1h }} 根 1H 选择区间后运行或加载缓存

缓存于 {{ dt(btReport.cached_at) }} 大约 10 秒~1 分钟,可离开本页,跑完自动刷新 {{ btErr }}
⟲

还没有「{{ (btPresets.find(p => p.key === btKey) || {}).label || btKey }}」的回测结果。

点击「运行回测」用当前策略参数在历史行情上复盘。回测只说明历史,不代表未来。

系统日志 共 {{ logsTotal }} 条匹配 · 库内 {{ logsAll }} 条

加载中…
没有匹配的日志
{{ dt(e.ts) }} 【{{ levelCn(e.level) }}】 {{ e.mode }} {{ e.message }}
已显示 {{ logsItems.length }} 条

交易记录 按平仓时间筛选 · 北京时间

{{ trErr }}

净盈亏{{ signed(trSum.net) }} U
交易笔数{{ trSum.count }}
胜率{{ trSum.win_rate === null ? '—' : fmt(trSum.win_rate * 100, 1) + '%' }}
盈亏比(总盈/总亏){{ fmt(trSum.profit_factor, 2) }}
平均盈 / 平均亏{{ signed(trSum.avg_win) }} / {{ signed(trSum.avg_loss) }}
手续费 · 平均持仓{{ fmt(trSum.fee, 2) }} U · {{ hold(trSum.avg_hold_sec) }}
{{ campCn[k] }} {{ v.count }} 笔 {{ signed(v.net) }}U
加载中…
这个范围内还没有已平仓的交易
{{ sideCn(t.side) }} {{ campCn[t.owner] || t.owner }} · {{ { paper: '模拟', testnet: '测试网', live: '实盘' }[t.mode] || t.mode }} {{ fmt(t.entry_avg, 2) }} → {{ fmt(t.exit_avg, 2) }} × {{ fmt(t.qty, 3) }} {{ dt(t.open_ts) }} → {{ dt(t.close_ts) }} {{ signed(t.net) }} U

持仓 {{ hold((new Date(t.close_ts) - new Date(t.open_ts)) / 1000) }} · 毛盈亏 {{ signed(t.gross) }}U · 手续费 {{ fmt(t.fee, 2) }}U · 平仓后净值 {{ fmt(t.equity, 1) }}U · 平仓原因:{{ t.reason }}

时间动作方向数量价格说明
{{ dt(f.ts) }}{{ f.signal }} {{ f.side === 'buy' ? '买' : '卖' }} {{ fmt(f.qty, 3) }}{{ fmt(f.price, 2) }}{{ f.reason }}
已显示 {{ trItems.length }} 笔
{{ tabs.find(t => t.id === tab).icon }}

{{ tabs.find(t => t.id === tab).name }}

{{ tabs.find(t => t.id === tab).desc }}

这一页正在开发,完成后会出现在这里。

作战指挥室 PWA

当前净值{{ fmt(s.equity, 1) }} U
今日盈亏{{ signed(s.day_pnl) }}
战役等级{{ ownerCn || moodName }}
全局状态{{ s.can_open ? '正常' : '停止开仓' }}
{{ c.icon }}
{{ c.who }} {{ hm(c.ts) }}
{{ c.text }}
⏳
正在核对数据...
🛡️
风控员 · 等你确认
确认执行:{{ pending.preview }}?
最近 {{ pending.compare.days }} 天回测改前改后
{{ r.n }}{{ r.a }}{{ r.u }}{{ r.b }}{{ r.u }}
回测只说明历史表现,不代表未来。修改会记入变更记录,可以说"撤回上次修改"。

观察员只能查看