首次上传
This commit is contained in:
@@ -0,0 +1,229 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>MATRIX · FUNNEL</title>
|
||||
<link rel="stylesheet" href="/static/style.css?v={{ asset_version }}" />
|
||||
</head>
|
||||
<body class="matrix-theme">
|
||||
<canvas id="matrixRain" class="matrix-rain-canvas" aria-hidden="true"></canvas>
|
||||
<div class="matrix-vignette" aria-hidden="true"></div>
|
||||
<div class="matrix-aurora" aria-hidden="true"></div>
|
||||
<div class="matrix-scanlines" aria-hidden="true"></div>
|
||||
<div class="matrix-noise" aria-hidden="true"></div>
|
||||
|
||||
<div class="matrix-chrome">
|
||||
<div class="matrix-hud" id="matrixHud">
|
||||
<div class="matrix-hud-block matrix-hud-live">
|
||||
<span class="matrix-hud-dot" aria-hidden="true"></span>
|
||||
<div class="matrix-hud-stack">
|
||||
<span class="matrix-hud-label">LINK</span>
|
||||
<span class="matrix-hud-val" id="hudLink">SYNC…</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="matrix-hud-block">
|
||||
<span class="matrix-hud-label">CYCLE</span>
|
||||
<span class="matrix-hud-val" id="hudCycle">—</span>
|
||||
</div>
|
||||
<div class="matrix-hud-block" title="BTC:近8h×15m 环境(横盘时多空均可推送;否则涨→LONG、跌→SHORT);BTC·辅=日线 regime(仅参考)">
|
||||
<span class="matrix-hud-label">BTC·辅</span>
|
||||
<span class="matrix-hud-val" id="hudBtc">—</span>
|
||||
</div>
|
||||
<div class="matrix-hud-block">
|
||||
<span class="matrix-hud-label">POOL</span>
|
||||
<span class="matrix-hud-val" id="hudPool">—</span>
|
||||
</div>
|
||||
<div class="matrix-hud-block">
|
||||
<span class="matrix-hud-label">PUSH</span>
|
||||
<span class="matrix-hud-val" id="hudPush">—</span>
|
||||
</div>
|
||||
<div class="matrix-hud-block matrix-hud-wide">
|
||||
<span class="matrix-hud-label">GEMMA</span>
|
||||
<span class="matrix-hud-val mono" id="hudGemma">—</span>
|
||||
</div>
|
||||
<div class="matrix-hud-block matrix-hud-wide">
|
||||
<span class="matrix-hud-label">LAST</span>
|
||||
<span class="matrix-hud-val mono" id="hudLast">—</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<header class="matrix-header matrix-header-crt">
|
||||
<div class="matrix-brand">
|
||||
<div class="matrix-title-wrap">
|
||||
<div class="matrix-glitch matrix-glitch-xl" data-text="MATRIX // FUNNEL">
|
||||
<span class="matrix-glitch-layer matrix-glitch-c">MATRIX // FUNNEL</span>
|
||||
<span class="matrix-glitch-layer matrix-glitch-m">MATRIX // FUNNEL</span>
|
||||
<span class="matrix-glitch-base">MATRIX // FUNNEL</span>
|
||||
</div>
|
||||
<div class="matrix-subdeck">
|
||||
<span class="matrix-deco">[</span>
|
||||
<span id="matrixTagline" class="matrix-tagline matrix-tagline-glow">Gate USDT 永续 · 5m 结构 → 日线漏斗 · Gemma 优先链</span>
|
||||
<span class="matrix-deco">]</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="matrix-radar-header" aria-hidden="true" title="战术雷达 · 装饰">
|
||||
<div class="matrix-radar-hud">
|
||||
<div class="matrix-radar-h-graticule"></div>
|
||||
<div class="matrix-radar-h-cross"></div>
|
||||
<div class="matrix-radar-h-rings"></div>
|
||||
<div class="matrix-radar-h-sweep"></div>
|
||||
<div class="matrix-radar-h-sweep matrix-radar-h-sweep-ghost"></div>
|
||||
<div class="matrix-radar-h-blip"></div>
|
||||
</div>
|
||||
<span class="matrix-radar-h-caption">SCAN</span>
|
||||
</div>
|
||||
<div class="matrix-header-actions">
|
||||
<span class="matrix-pill matrix-pill-clock" id="liveClock">--:--:--</span>
|
||||
<span class="matrix-pill dim">OP ▸ <span id="opUser">{{ username }}</span></span>
|
||||
<a class="matrix-btn ghost" href="/logout">断开链路</a>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<main class="matrix-main matrix-crt-inner">
|
||||
<section class="matrix-panel matrix-panel-hero matrix-panel-chrome">
|
||||
<div class="matrix-hero-radar" aria-hidden="true">
|
||||
<div class="matrix-hero-radar-grid"></div>
|
||||
<div class="matrix-hero-radar-sweep"></div>
|
||||
<div class="matrix-hero-radar-sweep matrix-hero-radar-sweep-trail"></div>
|
||||
<div class="matrix-hero-radar-ring"></div>
|
||||
</div>
|
||||
<div class="matrix-panel-head matrix-panel-head-row">
|
||||
<h2>// GEMMA 漏斗 · 优先矩阵</h2>
|
||||
<span class="matrix-chip matrix-chip-magenta">LIVE FEED</span>
|
||||
</div>
|
||||
<p class="matrix-hint">合成评分 · 成交量 · 日线结构 · 上方空间 · 中间阻力 → 达标企业微信推送</p>
|
||||
<p id="funnelMeta" class="matrix-hint matrix-dim">// 数据同步中…</p>
|
||||
<div id="funnelMatrix" class="matrix-grid"></div>
|
||||
</section>
|
||||
|
||||
<section class="matrix-panel matrix-panel-chrome">
|
||||
<div class="matrix-panel-head matrix-panel-head-row">
|
||||
<h2>// 每日晨报 · 昨日复盘</h2>
|
||||
<button type="button" id="runDailyReportBtn" class="matrix-btn ghost">立即生成</button>
|
||||
</div>
|
||||
<div class="matrix-form-row">
|
||||
<label>晨报开关</label>
|
||||
<input id="dailyReportEnabledInput" type="checkbox" />
|
||||
<label>北京时间执行</label>
|
||||
<input id="dailyReportTimeInput" type="time" />
|
||||
<label>推送企业微信</label>
|
||||
<input id="dailyReportPushInput" type="checkbox" />
|
||||
<label>启动即生成</label>
|
||||
<input id="dailyReportStartupInput" type="checkbox" />
|
||||
<button type="button" id="saveDailyReportBtn" class="matrix-btn matrix-btn-pulse">保存晨报配置</button>
|
||||
</div>
|
||||
<p id="dailyReportSaveMsg" class="matrix-msg"></p>
|
||||
<p id="dailyReportMeta" class="matrix-hint matrix-dim">// 等待晨报数据…</p>
|
||||
<div id="dailyReportBox" class="matrix-list"></div>
|
||||
</section>
|
||||
|
||||
<section class="matrix-panel matrix-panel-chrome">
|
||||
<div class="matrix-panel-head matrix-panel-head-row">
|
||||
<h2>// 监控黑名单 · base</h2>
|
||||
<span class="matrix-chip matrix-dim" id="symbolBlocklistCountChip">0 条规则</span>
|
||||
</div>
|
||||
<p class="matrix-hint">
|
||||
Gate USDT 永续左侧 base(每行一个或逗号分隔),如 <code>XAU</code> <code>XAUT</code> <code>XAG</code>;<code>all_swaps</code> 与
|
||||
<code>watchlist</code> 均会在入池后剔除。保存后下一轮扫描生效。
|
||||
</p>
|
||||
<textarea
|
||||
id="symbolBlocklistInput"
|
||||
class="matrix-input matrix-textarea"
|
||||
rows="5"
|
||||
spellcheck="false"
|
||||
autocomplete="off"
|
||||
placeholder="XAU XAUT XAG"
|
||||
></textarea>
|
||||
<div class="matrix-form-row matrix-form-row-tight">
|
||||
<button type="button" id="saveSymbolBlocklistBtn" class="matrix-btn matrix-btn-pulse">保存黑名单</button>
|
||||
</div>
|
||||
<p id="symbolBlocklistSaveMsg" class="matrix-msg"></p>
|
||||
</section>
|
||||
|
||||
<section class="matrix-panel matrix-panel-chrome" id="orderExecutorsPanel">
|
||||
<div class="matrix-panel-head matrix-panel-head-row">
|
||||
<h2>// 下单执行器 · 转发链</h2>
|
||||
<span class="matrix-chip matrix-dim">仅扫描端维护 · 同一信号广播</span>
|
||||
</div>
|
||||
<p class="matrix-hint">
|
||||
企微突破推送成功后,向列表中<strong>已启用</strong>的执行器 POST <code>/v1/signal</code>(方案 A 止盈止损)。
|
||||
各执行器自行配置 Gate API、盈亏比、移动保本等;<strong>不支持执行器反向注册</strong>。
|
||||
修改 webhook 密钥后请同步到各执行器 <code>security.webhook_secret</code>。
|
||||
</p>
|
||||
<div class="matrix-form-row matrix-form-row-wrap">
|
||||
<label>总开关</label>
|
||||
<input id="oeGlobalEnabled" type="checkbox" />
|
||||
<label>Webhook 密钥</label>
|
||||
<input id="oeWebhookSecret" class="matrix-input" type="password" style="min-width:14rem" autocomplete="new-password" />
|
||||
<label>超时(s)</label>
|
||||
<input id="oeTimeout" class="matrix-input" type="number" min="3" max="120" step="1" style="width:5rem" />
|
||||
<button type="button" id="oeSaveGlobalBtn" class="matrix-btn matrix-btn-pulse">保存全局</button>
|
||||
</div>
|
||||
<p id="oeGlobalMsg" class="matrix-msg"></p>
|
||||
<div class="matrix-form-row matrix-form-row-wrap" style="margin-top:12px">
|
||||
<label>名称</label>
|
||||
<input id="oeNewName" class="matrix-input" type="text" placeholder="如 account_a" style="width:8rem" />
|
||||
<label>Base URL</label>
|
||||
<input id="oeNewUrl" class="matrix-input" type="text" placeholder="http://127.0.0.1:8090" style="min-width:16rem" />
|
||||
<label>启用</label>
|
||||
<input id="oeNewEnabled" type="checkbox" checked />
|
||||
<button type="button" id="oeAddBtn" class="matrix-btn ghost">添加执行器</button>
|
||||
</div>
|
||||
<p id="oeAddMsg" class="matrix-msg"></p>
|
||||
<div id="oeList" class="matrix-list" style="margin-top:12px"></div>
|
||||
</section>
|
||||
|
||||
<section class="matrix-panel matrix-panel-chrome">
|
||||
<div class="matrix-panel-head"><h2>// 策略寄存器 · 5m</h2></div>
|
||||
<p class="matrix-hint">横盘 + 5m 收盘上破 + 放量 · 保存后下一轮生效 · 止损缓冲为企微区间A/B共用</p>
|
||||
<div class="matrix-form-row">
|
||||
<label>横盘时长(h)</label>
|
||||
<input id="rangeHoursInput" type="number" step="0.5" min="1" />
|
||||
<label>横盘振幅上限(%)</label>
|
||||
<input id="rangeMaxPctInput" type="number" step="0.1" min="0.1" />
|
||||
<label>放量倍数</label>
|
||||
<input id="volumeSpikeMultInput" type="number" step="0.1" min="1" />
|
||||
<label>放量回看根数</label>
|
||||
<input id="volumeLookbackInput" type="number" step="1" min="5" />
|
||||
<label>突破缓冲(%)</label>
|
||||
<input id="breakoutBufferInput" type="number" step="0.01" min="0" />
|
||||
<label>止损缓冲(%)</label>
|
||||
<input id="stopBufferPctInput" type="number" step="0.05" min="0" max="10" title="企微文案区间A/B共用:突破K极值与箱体边沿外侧缓冲" />
|
||||
<label>启用推送时间窗(09:00-23:00)</label>
|
||||
<input id="pushTimeWindowEnabledInput" type="checkbox" />
|
||||
<button type="button" id="saveIntradayBtn" class="matrix-btn matrix-btn-pulse">写入寄存器</button>
|
||||
</div>
|
||||
<p id="intradaySaveMsg" class="matrix-msg"></p>
|
||||
</section>
|
||||
|
||||
<div class="matrix-two-col">
|
||||
<section class="matrix-panel matrix-panel-chrome">
|
||||
<div class="matrix-panel-head"><h2>// 观察层 · WATCH</h2></div>
|
||||
<div id="watchAlerts" class="matrix-list"></div>
|
||||
</section>
|
||||
<section class="matrix-panel matrix-panel-chrome">
|
||||
<div class="matrix-panel-head"><h2>// 触发层 · TRIGGER</h2></div>
|
||||
<div id="triggerAlerts" class="matrix-list"></div>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<section class="matrix-panel matrix-panel-wide matrix-panel-chrome">
|
||||
<div class="matrix-panel-head"><h2>// 系统遥测</h2></div>
|
||||
<div class="matrix-split">
|
||||
<pre id="status" class="matrix-pre matrix-pre-glow"></pre>
|
||||
<pre id="config" class="matrix-pre matrix-pre-glow"></pre>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="matrix-panel matrix-panel-wide matrix-panel-chrome">
|
||||
<div class="matrix-panel-head"><h2>// 运行日志</h2></div>
|
||||
<div id="logs" class="matrix-list matrix-list-logs"></div>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
|
||||
<script src="/static/app.js?v={{ asset_version }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>MATRIX · 接入</title>
|
||||
<link rel="stylesheet" href="/static/style.css" />
|
||||
</head>
|
||||
<body class="matrix-login">
|
||||
<div class="matrix-aurora" aria-hidden="true"></div>
|
||||
<div class="matrix-vignette" aria-hidden="true"></div>
|
||||
<div class="matrix-scanlines matrix-scanlines-strong" aria-hidden="true"></div>
|
||||
<div class="matrix-noise" aria-hidden="true"></div>
|
||||
<div class="matrix-grid-bg" aria-hidden="true"></div>
|
||||
|
||||
<div class="matrix-login-card matrix-login-card-chrome">
|
||||
<div class="matrix-login-badge">SECURE CHANNEL</div>
|
||||
<div class="matrix-login-glitch" data-text="> AUTHENTICATE">> AUTHENTICATE</div>
|
||||
<p class="matrix-login-sub">MATRIX // GATE USDT PERP FUNNEL · 未授权区域禁止访问</p>
|
||||
<form method="post" action="/login" class="matrix-login-form">
|
||||
<label class="matrix-label">操作员 ID</label>
|
||||
<input class="matrix-input" type="text" name="username" required autocomplete="username" />
|
||||
<label class="matrix-label">密钥</label>
|
||||
<input class="matrix-input" type="password" name="password" required autocomplete="current-password" />
|
||||
<button type="submit" class="matrix-btn matrix-btn-full matrix-btn-pulse">建立会话</button>
|
||||
</form>
|
||||
<div class="matrix-error">{{ error }}</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user