{{ currentNav.label }} 图表页 ↗
烛龙K线
ZhuLong Kline · 行情图表终端
{{ p.platform==='android' ? 'Android' : 'Windows' }} {{ p.name }} {{ fmtSize(p.size) }}
暂无安装包(提交代码后自动构建)
加载中…
● {{ wsStatus.text }}
{{ p.symbol }} · 实时 1m{{ p.closedText }}
{{ p.value }}
K线 {{ p.bar_time }} · 延迟 {{ p.delay_sec }}s
热层交易对数(Valkey)
{{ fmt(overview && overview.valkey_symbols) }}
今日已落库 K 线
{{ fmt(overview && overview.today_bars) }}
今日覆盖交易对
{{ fmt(overview && overview.today_symbols) }}
历史累计 K 线
{{ fmt(overview && overview.total_bars) }}
队列总积压
{{ fmt(queueLagTotal) }}
{{ overview.valkey_error || overview.clickhouse_error || overview.error }}

消费组积压

加载中…
获取失败:{{ overview.queue.error }}
消费组{{ sortMark('ovQueue','group') }} Topic{{ sortMark('ovQueue','topic') }} 积压消息数{{ sortMark('ovQueue','lag') }}
{{ r.group }}{{ r.topic }} {{ r.lag === null ? '未消费过' : fmt(r.lag) }}
WebSocket 事件驱动推送(有数据立即推):最近消费的 K 线(50 条)+ 最近落库批次(30 条),仅作实时观测,历史数据请用「数据查询」

最近落库批次

等待推送…
暂无落库记录
时间{{ sortMark('liveFlush','time') }} 表{{ sortMark('liveFlush','table') }} 行数{{ sortMark('liveFlush','rows') }} Symbol 数{{ sortMark('liveFlush','symbols') }} 样例
{{ f.time }}{{ f.table }}{{ fmt(f.rows) }} {{ f.symbols }}{{ f.sample }}

最近消费的 K 线

等待推送…
暂无消费记录(writer 角色未运行或暂无数据)
消费时间{{ sortMark('liveCandle','time') }} 交易对{{ sortMark('liveCandle','symbol') }} 收盘价{{ sortMark('liveCandle','close') }} 已收盘{{ sortMark('liveCandle','closed') }} K线时间{{ sortMark('liveCandle','bar_time') }} 来源 Topic{{ sortMark('liveCandle','source') }}
{{ c.time }}{{ c.symbol }}{{ c.close }} {{ c.closed ? '是' : '否' }} {{ c.bar_time }}{{ c.source }}
数据来源:Valkey 热层(实时中间态 K 线在这里,ClickHouse 只存收盘)

交易对枚举(点击填充)

{{ s }}
加载失败:{{ symbolErr }}
加载中…
查询失败:{{ hotErr }}
每 symbol 每天不足 1440 根 1m K 线即视为缺口("天"按 UTC 自然日统计,当天数据未完整属正常) 一键修正:删除该 symbol 当天(UTC 日)1m 及全部大周期数据后从 Binance 重拉
K 线修正后指标仍是按脏数据递推的旧值,需要重算: 清理该 symbol 的 md.indicators 数据后用 1m K 线回放重算写回(K 线修正后使用;全部重算耗时较长)
批量: 进度 {{ recalcAll.done }}/{{ recalcAll.total }} 后台逐个重算,不阻塞页面;进度 5s 自动刷新
加载失败:{{ compErr }}

每日总览

加载中…
日期{{ sortMark('compDaily','day') }} K 线总数{{ sortMark('compDaily','bars') }} 有数据的交易对{{ sortMark('compDaily','symbols') }}
{{ r.day }}{{ fmt(r.bars) }}{{ fmt(r.symbols) }}

缺口明细(bars < 1440)

窗口内无缺口
交易对{{ sortMark('compGaps','symbol') }} 日期{{ sortMark('compGaps','day') }} 已有{{ sortMark('compGaps','bars') }} 缺失{{ sortMark('compGaps','missing') }} 操作
{{ r.symbol }}{{ r.day }} {{ fmt(r.bars) }}{{ fmt(r.missing) }}
数据来源:ClickHouse(大周期由 1m 物化视图派生,图表与表格时间均为东八区)
查询失败:{{ klineErr }}
加载中…

ClickHouse SQL(仅只读:SELECT / WITH / SHOW / DESCRIBE / EXPLAIN,最多返回 1000 行,时间显示为东八区)

常用表:md.klines_1m / md.klines_5m…1d(大周期为聚合态,需 GROUP BY + -Merge 组合子)/ md.ticker_24h / md.indicators / md.signals
执行中…
{{ sqlErr }}

{{ sqlResult.rows.length }} 行{{ sqlResult.truncated ? '(已达 1000 行上限,结果被截断)' : '' }}

查询成功,0 行
{{ c }}{{ sortMark('sql', i) }}
{{ v === null ? 'NULL' : v }}
清空后实时数据从最新位置继续,补数任务由调度器下一轮重新下发;ClickHouse 已落库数据不受影响
加载中…
获取失败:{{ queueErr }}

消费组积压

消费组{{ sortMark('queue','group') }} Topic{{ sortMark('queue','topic') }} 积压消息数{{ sortMark('queue','lag') }}
{{ r.group }}{{ r.topic }} {{ r.lag === null ? '未消费过' : fmt(r.lag) }}

清空结果

{{ clearResult }}
海外节点每 5 秒经总线上报心跳,30 秒无心跳视为离线(页面每 5 秒自动刷新)。节点名是宿主机出口 IP,主机名相同也能分开。 「重启部署」= 节点自动 git pull + 重建容器(约 1~3 分钟,期间离线)
获取失败:{{ nodesErr }}
● 在线 {{ domestic.node }} 国内主节点 版本 {{ domestic.version || 'unknown' }} 运行 {{ fmtUptime(domestic.uptime_sec) }} 角色 {{ domestic.roles }}
{{ (domestic.logs || []).join('\n') || '暂无日志' }}
加载中…
暂无海外节点心跳(海外 connector 未运行或版本过旧)
在线修改存 Valkey,backfill 调度器 / guardian 数据守护下一轮扫描(分钟级)自动生效,无需重启; 「恢复默认」= 回退到环境变量值。凭据/地址类配置仍需改环境变量后重建容器

海外下单节点令牌

国内用这个值调用海外下单服务。重置后把新值写到海外服务器的 MD_BROKER_NODE_TOKEN,再重启 md-broker。

{{ brokerTokenErr }}
加载中…
获取失败:{{ configErr }}

调度参数(在线可改)

配置项说明环境变量默认值当前生效值在线修改操作
{{ it.key }} {{ it.label }} {{ it.default }} {{ it.effective }}
用历史 1m 逐条重放与线上一致的 SDZ 策略代码(非简化复刻),信号按挂单价限价进场 ({{ 36 }} 根 1m 内触及才成交),止损=远端线市价、止盈=tp_r 倍风险限价、超 3 天未分胜负市价平仓; 手续费双边计入(Binance USDT-M 合约 VIP0:maker 0.02% / taker 0.05%),资金费率未计; 每笔保证金=当前权益×保证金比例,名义价值=保证金×杠杆,逐笔复利。
{{ btErr }}
{{ sigCatDesc }}
加载失败:{{ sigErr }}

当前状态({{ sigStateRows.length }} 个 symbol 有方向)· 引擎心跳:{{ sigEngineLive ? '● 在线' : '● 离线' }} ({{ fmtTs(sigEngineTs) }},60s/次) · 页面 30s 自动刷新

加载中…
暂无状态(策略引擎未运行或预热未完成——RevSig 需约 1000 根 2h K 线门控)
Symbol{{ sortMark('sigState','symbol') }} 当前方向{{ sortMark('sigState','direction') }} 信号线{{ sortMark('sigState','line') }} 信号线形成{{ sortMark('sigState','line_ts') }} 最近信号
{{ s.symbol }} {{ s.direction === 'bull' ? '多(做多线支撑)' : '空(做空线阻力)' }} {{ s.line }} {{ fmtTs(s.line_ts) }} {{ fmtTs(s.last_signal.ts) }} {{ s.last_signal.direction === 'buy' ? '多' : '空' }}·{{ sigKindText(s.last_signal.kind) }} @{{ s.last_signal.price }} —

最新信号(每 symbol 最近一条 · 点击行看双周期图)

加载中…
暂无信号
Symbol时间(2h 开盘)方向类型 收盘价信号线 量比(量/MA55)24h 成交额
{{ s.symbol }} {{ s.time }} {{ s.direction === 'buy' ? '做多' : '做空' }} {{ sigKindText(s.kind) }} {{ s.close }} {{ s.line }} {{ s.vol_ratio }} {{ fmtQv(s.quote_volume_24h) }}

历史信号({{ sigSignals.length }} 条 · 按天分组 · 时间倒序 · 点击行看双周期图)

加载中…
暂无信号
时间(2h 开盘) Symbol 标记 方向 类型 收盘价 信号线 量比(量/MA55)
本管理后台(/)与图表页(/chart)之外的全部 HTTP 接口与 WebSocket 频道; 所有 /api/* 需登录态(Cookie / Bearer / ?token=,见「认证与单点登录」)

{{ g.title }}

{{ g.desc }}

{{ e.method }} {{ e.path }} {{ e.desc }}
参数:{{ e.params }}
请求/响应示例
{{ e.example }}
MD Console
行情数据平台
{{ loginErr }}