概览 纸面 · 本机
模式 纸面
执行 纸面
引擎 连接中
最新 15m UTC —
并发 —
日亏 —
Demo 未启用
--:--:--

DASHBOARD / 概览

链路状态与三态账户视图

实盘 / Demo / 纸面三态独立视图(Q29-A);实盘只读。

SQLite 本机 无公网暴露

SCOPED OVERVIEW

Demo 账户视图

读取中 只读
权益
—
未平仓—
浮动盈亏—
范围Demo
———

POSITIONS

持仓

0 笔
币种方向数量入场标记浮动盈亏状态
加载中…

EVENTS

账户事件

0 条
加载中…

PAPER EQUITY

纸面权益

估算
10,000.00 USDT
累计净 R 0.00R
胜率 —
已平仓 0
暂无已平仓交易,资金曲线待生成
累计净 R—

RULE ENGINE

规则引擎

未启动
模式—
执行纸面
精度源—
阶段—
品种BTCUSDT
启动时间—

回放不联网。实时轮询先回补 90 天公开 15m K 线,之后每 5 秒检查最新两根;只在 15m 收线后处理。无需 API Key。

未平仓 / 并发上限0 / 3
等待引擎
已平仓交易0
虚拟多笔账本
今日净 R0.00R
UTC 交易日
日亏估算 / 上限0.00% / 3%
P1 已启用:日亏只停新开仓

TIMELINE

最近信号与事件

查看全部
时间类型方向形态价格
暂无事件

OPEN LEDGER

当前纸面持仓

交易账本
暂无未平仓纸面持仓
单笔风险口径A · 固定 100 USDT
总风险上限300 USDT
杠杆 / 保证金3x · 逐仓
成本模型taker 5 bps · 1 tick

CONFIG / 设置

参数与风控

所有分档项均可调节,默认按产品决策 A 档。设置保存到本机 SQLite。

默认 A

LAYER 1

① 全局默认层

时间与时区 / 风控与仓位 / 成本与止盈出口;每块默认折叠,点「编辑」展开。
00

时间与时区

全站时间按所选时区显示;信号 K 输入同时标注该时区(Q27-C)。

默认 Asia/Shanghai(UTC+08:00)。
随所选时区自动映射;也可手动微调(— 表示按后端返回)。
UTC+08:00
当前时区:UTC+08:00
01

品种与交易模式

单币种。默认纸面;Demo 需显式开关 + 已保存密钥;实盘 P3 前不提供。

纸面模式逻辑价 + 费用滑点,不触达交易所(默认)
默认
默认 BTCUSDT;仅支持单个 USDT 永续,换品种后需重启引擎。
默认 paper;demo 未开启显式开关或未保存 demo 密钥时不可选。
SMTP 通道待 P2 接入;当前仅保存地址。

精度源:exchangeInfo 尚未加载(实时轮询启动后读取 tickSize / stepSize / minNotional;回放使用离线 fallback)。

02

风险与仓位

默认:每笔 100 USDT、最多 3 笔、总风险 300 USDT。

A/B 双模式;默认 A。
默认 100。
默认 1.0%。
默认 3;超限记 SKIPPED,不开仓。
默认 300。
默认 3%;P1 已接入:达到后只停新开仓、不自动平仓。
默认 3x,范围 1–5x。
默认逐仓;实盘切换需无持仓无挂单。
03

成本与止盈出口

默认 taker 0.05%/边 + 滑点 1 tick;只启用 TP2-A。

默认 5 bps = 0.05%。0 费可用于对拍。
默认 1 tick(按品种 tickSize)。
当前不计资金费
后续可按 8h 资金费扩展。

DEMO DRILL / 演练

Demo 演练参数

仅影响 demo

独立线程连接币安测试网;启动需三重条件:AOM_DEMO_TRADING_ENABLED=1 + 已保存 demo Key + 下方总开关。纸面引擎参数不受影响;启动/停止在「运维」页二次确认。默认:BTCUSDT、1 笔、50U 风险、日亏 100U、5s 轮询。

1..3,默认 1。
3..60,默认 5。
T18 只支持 BTCUSDT。
10..200,默认 50。
0=关闭;默认 100(按 demo 权益折算,只停新开仓)。
VIP 表为参考值,以账户实际费率为准。
VIP0 maker 2 / taker 5 bps;VIP9 0 / 1.7 bps。
仅 custom 模式生效;0..100。
仅 custom 模式生效;默认 5 bps。
0=关闭;默认 10%。只减费用,不改变成交价。
无网络时使用;默认 1 bp/8h(0..100)。
作用市价成交名义;默认 0(测试网已含其自身滑点)。
保存后写入本机 SQLite;轮询模式下部分参数在下一根收线生效。

LAYER 2

② 模式层(预下单 / 全自动 / 补单)

严格度、checks、warnings、limits;字段标注继承 Global 或 Mode。
加载中…

LAYER 3

③ 仓位层(逐仓覆盖,只读)

去止盈止损页操作
仓位币种方向止损覆盖TP1 覆盖TP2 覆盖legs 覆盖来源
加载中…

仓位层只读展示:逐仓覆盖由止盈止损页的「纳入 / 补挂 / 改价」写入,避免两处同时改价。

LAYER 4

④ 交易所账户配置(杠杆 / 保证金 / 持仓模式)

当前:—
最高 — x。
—
  • 读取后显示可修改性与交易所限制。

说明:P1 已启用因果流式引擎、risk A/B 纸面数量、并发/总风险/日亏只停新开仓与 Kill Switch;实时轮询会读取 exchangeInfo 精度(失败回退离线表)。T18 新增独立 demo 演练线程(测试网、三重条件、保护单),纸面引擎不受影响;实盘不提供。

CREDENTIALS / 密钥

币安 API Key / Secret

保存在这台电脑的 自动下单_MVP/data/secrets.json,页面只回显掩码。

仅本机
纸面模式不需要 API Key。 密钥用于 Demo 签名校验(实盘不提供)。它不会写入日志、不会回显明文、不会进入 git;本机 HTTP 无鉴权,请勿把页面暴露到公网。

LOCAL CREDENTIALS

填写与保存

未配置

Demo 环境用于测试网;当前只保存到本机,除显式 demo 开关 + 凭据外不发起任何交易。

保存后输入框会清空,页面只显示“已保存”。
已保存环境—
API Key—
Secret—
保存时间—

EVENT STREAM / 信号

信号、确认与开平仓事件

来自规则引擎的关键事件,按 UTC 时间倒序。所有事件已落库。

LIVE SIGNAL / 当前信号

当前信号与确认窗口(实盘优先)

读取中
加载中…

实盘优先:显示白名单 / 活动任务 / 当前确认窗口;历史事件在下方折叠区。

历史信号 / 事件(最近 200 条,点击展开)
时间类型方向形态价格持仓说明
加载中…
0 条仅显示最近 200 条

VIRTUAL LEDGER / 交易

纸面交易账本

虚拟多笔账本:同向/反向可并存,每笔独立 entry / stop / TP1 / TP2。

LIVE LEDGER / 实盘

实盘成交 / 持仓(scope=live)

读取中
时间币种 / 方向类型状态数量均价浮动 / 收益来源
加载中…

实盘优先;纸面 / Demo 账本在下方折叠区。

纸面交易账本(历史,点击展开)
总交易0
持仓中0
累计净 R0.00R
胜率—
状态方向形态入场时间入场止损TP1出场时间出场净 R出场原因
加载中…
0 条R 已扣除手续费与滑点

LIVE ORDER / 实盘下单

下单:预下单 / 全自动 / 补单

向导(默认)与高级单页共用同一套校验与下单接口;创建草稿后必须二次确认才会发往交易所。仓位口径:qty = 止损金额 ÷ |入场 − 止损|。

实盘状态读取中
分步填写、每步校验;最后预览并二次确认。

全自动由服务端托管:请在「止盈止损」页顶部「实盘 / Demo」通道开启,本页不可手工创建全自动订单。

LIVE STATUS

实盘服务状态

读取中
总开关—
运行模式—
自动白名单—
用户数据同步—
账户权益—
保护单开关—

全自动模式由服务端 7×24 扫描白名单(默认 BTCUSDT),网页只做查看与开关;白名单外不会下单。补单需在确认 K 收盘后 2 小时内按「当前价 vs C vs TP1」三选一。

1币种
2方向
3杠杆
4止损
5模式 / 信号K
6预览确认

第 1 步 · 选择币种

下一步前会调用服务端校验合约、tickSize / stepSize / 最小名义与杠杆档位。
未校验

第 2 步 · 方向

方向决定触发价 C∓1tick 与失效线 str_hi / str_lo 的一侧;做多与做空镜像处理。

第 3 步 · 杠杆与保证金(默认跟随手机端)

账户级设置,来自交易所;手选后校验不再回填覆盖。
校验币种后读取

杠杆是 symbol 级、Hedge 双向共用;默认只读。与手机端不一致时服务端会拒单,请先在手机端调整。

第 4 步 · 止损金额(风险优先)

—

qty 按 stepSize 向下取整并校验 minNotional;杠杆只影响保证金占用与强平价,不放大亏损金额。

第 5 步 · 模式与信号 K 时间

预下单 / 补单必填;补单 >2h 黄色提醒、>24h 或未知红色提醒,勾选「仍要补单」后才可提交。
未校验

第 6 步 · 预览并二次确认

点击「生成预览」后显示服务端预览:入场方式 / 止损 / TP1 / TP2 / 风险金额 / 保证金 / 强平价(估算)。

MY ORDERS / 我的订单

订单历史与状态管理

0 条
时间币种 / 方向模式状态数量成交均价触发价 / 限价订单 ID操作
加载中…
0 条未同步

PROTECTION / 止盈止损

止盈止损:运行模式、仓位保护与手机同步

三通道独立启停(纸面 / Demo / 实盘);手机端为准,止盈只读、止损二次确认;外部改动标注「用户自行判断」。价格 3s 刷新、对账 30s,交互时自动暂停。

同步等待中
执行模式—
纸面—
Demo—
实盘—
止损 / 止盈—
白名单— 编辑
同步—

ACTIONABLE

可操作仓位(实盘 / 手动仓)

0 笔
币种方向数量入场标记 浮动盈亏止损TP1TP2保护腿 来源 / 标注状态操作
加载中…
0 笔 未同步

点行首箭头展开每腿状态 / 手机同步 / 事件时间线。止盈只读、以手机端为准;「纳入」需二次确认并选择 legs 与冲突处理;外部仓未关联信号K时先走「补挂」流程。释放不会撤销已挂条件单。

运行模式 / 通道启停 / 保护开关 / 同步(点击展开)
P
纸面模式回放 / 轮询 · 虚拟账本
读取中
状态
—
币种
—
最新 K
—
权益
—
D
Demo 演练币安测试网 · 三条条件
读取中
状态
—
测试网权益
—
持仓
—
启动条件
—
环境 / 凭据
—
L
实盘通道真实资金 · 需二次确认
读取中
状态
—
运行线程
—
交易所客户端
—
账户
—
Kill Switch
接管页可紧急停止

SWITCHES

保护开关与同步状态

只影响新仓
止损总开关 ON:新仓成交后按 v5 自动挂止损并保本;OFF:新仓不挂,只显示参考位并标「用户自行判断」。
读取中
止盈管理开关 ON:到 TP1 分批 / 到 TP2 平仓自动执行;OFF:新仓不挂止盈单。已挂条件单不受关闭影响。
读取中
同步状态—
上次同步—
交易所客户端—
执行模式—
刷新节奏价格 3s · 对账 30s

关闭不会撤销已挂条件单;重新打开只补挂「缺失」的保护单,且需要二次确认(先挂新后撤旧)。

其他通道:Demo 演练仓 / 纸面虚拟账本(只读,点击展开)

DEMO POSITIONS

Demo 演练仓

只读 · 测试网
币种方向数量入场标记浮动盈亏状态
暂无 Demo 持仓

PAPER POSITIONS

纸面虚拟账本

只读 · 纸面
币种方向数量入场标记浮动盈亏状态
暂无纸面持仓

EVENTS

事件时间线(最近 30 条)

0 条
加载中…

ALERTS / 预警

预警:事件开关、模板、收件人与发送记录

全部订单类事件由后端 catalog 驱动;邮件 / Webhook 双通道,免打扰、去重、信号K监控;所有写操作二次确认。

读取中
总开关
SMTP—
Webhook—
待发送 / 失败—
发送器—
最近 24h 已发—

EVENTS MATRIX

事件开关矩阵(全部订单类事件)

邮件 / Webhook 列显示全局 channels 开关;首列启用为事件级开关。 0 个事件
启用事件简述邮件Webhook优先级操作
加载中…

CONTACTS / CHANNELS

收件人与通道

写操作需确认
—

SIGNAL-K MONITOR

信号 K 监控

白名单监控
加载中…

列表保存到 config.signal_monitor.items;编辑中不会被自动刷新覆盖。

继承开启时,白名单与实盘持仓会自动加入监控列表;关闭后只监控上方币种。

OUTBOX

发送记录(最近 100 条)

0 条
时间事件主题渠道状态尝试错误
加载中…
0 条pending / sent / failed / deferred 由服务端返回

BACKTEST / 回测

v5 回测:月度收益、净值曲线与逐笔

本地 CSV 为主 + 按需下载;异步运行、结果落库可复现。仓位管理 4 预设 + 自定义,与实盘 sizing 共用同一公式。

PARAMS

回测参数

可复现
本地已有优先;缺失的币种会按需下载并缓存。
未运行

SUMMARY

本次结果

—
累计收益—
最大回撤—
胜率—
盈亏比 / 交易—
—净值曲线(纯 SVG)—

MONTHLY

月度收益

0 个月
月份收益 %收益额 U交易数胜率
运行回测后显示月度收益

TRADES

逐笔明细

0 笔
入场时间方向形态入场止损TP1数量出场出场原因PnL UR
运行回测后显示逐笔明细
0 笔逐笔结果落库,可按 run 复现

HISTORY

历史 run

0 条
创建时间币种区间仓位管理状态累计收益操作
暂无历史回测
0 条结果保存在 SQLite(backtest_runs / backtest_trades)

DIAGNOSTICS / 日志

本机运行日志

关键事件落 SQLite。密钥不会出现在日志中;这里不记录请求体。

aom / app.db / logs 0 条
加载中…

OPERATIONS / 运维

白名单运维台

只读诊断与有限动作;无任意命令/路径输入;每项输出 ≤64KB、默认超时 10s,每次调用写审计日志。

无 shell

SECURITY / CERT

登录 · 证书 · HTTPS(只读)

不含敏感值

自动读取 auth_status / cert_status / https_status;凭据、token、hash、完整邮箱绝不显示。

登录—
用户名 / 2FA—
内部令牌—
会话 TTL—
证书有效期—
三域名覆盖—
HTTPS—

证书读取固定路径 /etc/letsencrypt/live/bot.jingkaiy001.com/fullchain.pem(AOM_CERT_PATH 可覆盖);HTTPS 探测地址由部署 env 固定。restart_app 暂不提供(需 systemd/watchdog 外部守护机制)。

DEMO DRILL

Demo 演练状态

未运行

加载中…

状态—
持仓0
测试网权益—
模拟净权益(影子账本)—
未实现浮盈亏—
已实现毛盈亏—
测试网费用损耗(诊断)—
累计手续费—
资金费—
附加滑点—
费率(VIP)—
最近已收线—
交易/退出0
最近错误—

启动前必须满足三重条件;停止会先撤保护单再平仓。所有操作写入 OPS 审计。模拟净权益=独立影子账本(初始权益+已实现/未实现毛盈亏−模拟手续费/资金费/滑点),测试网权益仅作参考;测试网费用损耗为诊断字段,不重复扣减。

加载中…

OUTPUT

运行输出

—
选择上面的运维项运行,输出会显示在这里(≤64KB)。

MANUAL CONTROL / 接管

人工接管与 Kill Switch

故障兜底:立即停止引擎与新开仓。已有纸面持仓只标记冻结,不自动平仓。

仅人工触发

EMERGENCY STOP

Kill Switch

一键停止当前引擎与轮询循环,写入关键事件,并把未平仓纸面持仓标记为冻结。不会向币安发送任何订单。

  • 停止新开仓
  • 停止行情轮询与引擎线程
  • 未平仓纸面仓只标记,不自动平
  • 状态持久化,重启后仍保持

STATUS

当前接管状态

正常
开关未启用
触发时间—
原因—
冻结纸面持仓0

解除接管不会自动重启引擎,也不会撤销已冻结持仓的标记。请先确认行情、日志与账本,再手动启动。

RUNBOOK

人工接管检查清单

纸面
  1. 01
    先冻结。启用 Kill Switch,确认引擎状态变为已停止/停止中。
  2. 02
    再看日志。在日志页检查 ERROR / CRITICAL,确认网络、数据缺口或引擎异常原因。
  3. 03
    核对持仓。交易页确认未平仓纸面仓已被标记冻结;本阶段不会自动平仓或触达交易所。
  4. 04
    修复后恢复。排除问题、解除接管,再手动启动回放或轮询;不会自动续跑。

HELP / 帮助

版本、文档与安全边界

纯静态说明页,不请求新接口;所有数据来自本机。

静态面板

BUILD

版本与构建

本机
  • UI 版本:T28 · 统一开关 + 监控/白名单列表化 + 预警与订单体验修复
  • 应用版本:见顶栏运行状态与 /api/health
  • 运行形态:标准库 HTTP + SQLite,本机/内网部署
  • 执行模式:paper(纸面)默认;demo 演练需三重条件;live 默认关(live_trading_enabled=False),需显式开启 + 页面二次确认
  • 文档文件:README.md / README_WEB.md / 00-项目交接说明.md(仓库内,不在页面内联)

SHORTCUTS

快捷键与路由

键盘可达
  • Ctrl + B:折叠/展开侧边栏(输入框内不触发)
  • Esc:关闭移动端抽屉 / “我的”面板
  • 深链:#/overview、#/trading/order、#/trading/protection、#/trading/signals、#/trading/trades、#/backtest、#/settings/general、#/settings/secrets、#/ops/console、#/ops/logs、#/ops/takeover、#/help
  • 前进/后退:浏览器按钮生效;未知路由回到概览
  • 移动端:<900px 使用抽屉 + 底部 Tab(含“我的”)

SECURITY BOUNDARY

安全边界说明

只读说明
  • 无任意命令:运维台只有白名单只读/动作操作,不提供任意 shell、任意路径、任意 URL 输入;每个操作有超时、输出上限与 OPS 审计。
  • 登录与 2FA:单用户登录默认关闭;启用后支持邮箱验证码二次验证(TOTP 代码保留但默认不用)。登录/2FA 失败共享 5 次/5 分钟限速。
  • 密钥不显示:API Key/Secret 只在本机 data/secrets.json 使用,页面只显示掩码;session token、密码 hash、内部令牌值、完整邮箱不会出现在页面、日志、OTP 输出或 capabilities 中。
  • 公网边界:未启用登录时仅允许绑定 127.0.0.1;启用登录后仍需 nginx 清空 X-AOM-Internal-Token 并配置 HTTPS(T12/T13)。
  • Demo 演练:需 AOM_DEMO_TRADING_ENABLED=1 + 已保存 demo Key + 设置总开关,三重条件缺一不可;保护单失败会紧急平仓并停止。
  • restart_app:本轮不提供(网页不能安全杀死自己),需 systemd/watchdog 等外部守护机制。
AOM P2-C · 标准库本地服务 纸面数据 · 不构成交易建议 默认仅本机;启用登录后可外部绑定(T9/T13 加固)

编辑预警模板

纯文本模板;占位符用 {{placeholder}} 形式,点击下方 chip 插入。

点「预览」用前端渲染占位符后的主题 / 正文

补挂自动止盈止损

—

1. 关联哪根信号 K(决定止损 / TP1 / TP2)
按开仓时间往前找最近 2–3 个全链信号 K。
点击「加载候选信号」
2. 补哪些腿(默认全选)
3. 手机端已有条件单冲突
4. 预览与二次确认
点「生成预览」后显示:止损 / TP1 / R1 / TP1 减仓量 / 风险金额 / 距开仓时间

补挂会向交易所挂条件单(止损 / TP1 分批 / TP2 自动管理),不会改变你已有仓位的数量;确认前请核对预览。

纳入管理(应用保护)

—

将挂 / 补挂的保护腿(可勾选;已挂的腿默认锁定)
手机端已有条件单冲突

操作会向交易所挂 / 改条件单(先挂新后撤旧),不会改变仓位数量;提交前会再弹一次二次确认。

修改保护价位(撤旧挂新)

—

TP2 处理(勾选 TP2 时生效)

止盈以手机端为准:网页改价仅用于救急;提交前会再弹一次二次确认,先挂新后撤旧。

编辑模式层

每个字段标注继承 Global 还是覆盖为 Mode。

Global
Global
checks 开关
warnings 阈值
limits 覆盖
全自动白名单(/api/live/settings)
读取中…

当前生效白名单:—

白名单改动需要 confirm:true 二次确认;保存后立即用服务端返回值重建。

保存只写入你改过的字段;未改字段继续继承 Global。重置会清空该模式的全部覆盖。

确认操作