尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
不是又一个量化框架,而是一套属于独立交易者的TradingOS。 BlitzkriegBot 用 Rust 重构散户高频交易基础设施,从策略开发、风控执行到多市场扩展全面统一。市场可以变化,策略可以迭代,但你的交易内核永远稳定可靠。Build Once, Trade Everywhere.让个人拥有机构级交易能力。
翻译准备中
正在加载完整 README。
查看完整 README ↗市场可以变化,策略可以迭代,你的交易内核永远稳定可靠。
用 Rust 重构散户高频交易基础设施:策略开发、风控执行、多市场扩展全面统一。
Build Once, Trade Everywhere. 让个人拥有机构级交易能力。
从节点连线到 Lua 策略包,让交易逻辑看得见、改得动。
默认 dry 模拟,策略安装后默认关闭。实盘涉及真实资金风险,需要充分验证与明确授权;本项目不构成投资建议。
目前建议优先考虑的实盘策略是 late_favorite(只做 BTC,结算前 45–120 秒 taker 买入 0.80–0.90 的一边并持有到结算)。未看过的 2026-09-26 至 09-30 窗口:351 笔,胜率 97.72%,盈亏比 6.74,净利 +382.40 美元,最大回撤 15.67 美元。这是回放,不是实盘承诺。DRY_RUN 默认 true。说明见 docs/late-favorite.md。
策略层可换,内核不变。
| 层 | 是什么 | 换掉它意味着什么 |
|---|---|---|
| 策略包(Blueprint / Lua) | 把交易想法写成可运行的规则 | 迭代想法:改 Lua、调参数、换策略,内核零改动 |
| 市场扩展(Polymarket / Kalshi / predict.fun / PolySimulator) | 一个场地一个扩展 crate,接 market_api 契约 | 迁移市场:写一个扩展 crate,内核不改一行 |
| 交易内核(Rust) | OME 订单引擎 · 风控 · 持仓 · 结算 · 对账 | 永远稳定可靠:市场无关、无交易所 SDK、dry/live 同一本账 |
市场可以变化 ──────────────► 换扩展 crate
策略可以迭代 ──────────────► 换 Lua 策略包
交易内核 ──────────────────► 永远稳定可靠(Build Once, Trade Everywhere)
创建策略 → 回测评估 → 模拟运行 → 满足验证与授权条件后实盘
| 你要做什么 | 在 BlitzkriegBot 中怎么做 |
|---|---|
| 把想法写成规则 | 在 Blueprint 连接数据源、条件与动作;需要更灵活的逻辑时编写 Lua。 |
| 检查策略是否值得继续 | 用支持的回放与回测入口评估历史表现,核对费用、回撤和成交假设。 |
| 观察它如何运行 | 在 dry 模式按账户启用,查看订单、持仓、账本与拒单原因。 |
| 决定是否进入实盘 | 对照功能证据与场地限制完成验证,再明确授权;模拟盈利不是实盘收益保证。 |
打开蓝图页,从节点面板选择输入、条件、守卫逻辑和动作,连接成一条规则:
数据源 / 常量 → 条件比较 → 且 / 或组合 → 买入 / 卖出 / 持有
蓝图支持 JSON 导入与导出。手写 Lua 包也可以用源码模式打开,继续编辑。
Build Once:同一个策略包跨回放、模拟、实盘三个入口复用,改想法不用维护三套实现。核心账务路径有 dry/live 对拍门禁,验证范围见 功能证据表。
复用代码,不等于复现市场。 实盘仍受流动性、滑点、费用、网络延迟和场地规则影响;离线测试、dry 实况与部分真实下单验证分别说明不同范围,不能替代完整的实盘验收。
不必先学习 Rust。一个带 manifest.json 的目录就是策略包,官方 Lua 示例 提供配对、动量、做市等逻辑,方便阅读和修改。
示例是研究起点,是否启用应由验证结果决定。
--readonly 结构性只读,连下单通道都不构造——个人也有 fail-safe。Web 面板提供行情、订单、持仓、账本和策略管理;TUI 支持终端查看与操作。账户切换帮助你分别观察不同策略与场地的执行情况——机构级的审计视野,个人也能拥有。
行情页展示倒计时与盘口深度。截图中的账户未绑定提示属于配置状态,使用前需完成账户与场地绑定。
Polymarket、Kalshi、predict.fun、PolySimulator 连接器各自验证范围见 功能证据表;换交易所 = 写一个扩展 crate,内核不改一行。技术细节在 开发者文档。
交易核心与服务进程使用 Rust,策略宿主内嵌 Lua,Web 面板使用 Vue。运行预编译发行包无需另装 Node 或 Python;开发与构建依赖见下方文档。
路线 A:运行预编译发行包
到 Releases 下载对应平台(Linux x86_64 / macOS aarch64)的 tar.gz,解压后:
cd <解压目录>
cp .env.example .env
# 编辑 .env,填入 BLITZKRIEG_PANEL_USER 与 BLITZKRIEG_PANEL_PASSWORD(不出厂默认凭证)
bin/blitzkrieg run
浏览器打开 http://127.0.0.1:51888/panel 并用 .env 里的凭证登录。先核对运行模式为 dry,再在面板配置账户与风控(写入 SQLite data/blitzkrieg.sqlite);启用前不会自动运行策略。
路线 B:源码构建(开发者)
git clone https://github.com/ceer-quant/BlitzkriegBot.git
cd BlitzkriegBot && cargo build --release --workspace --locked
(cd ui/webapp/webui && npm ci && npm run build) # 必需:Vue 面板产物 dist 不入库
bash scripts/install-blitzkrieg-shim.sh # 可选:把 blitzkrieg 装进 PATH
blitzkrieg run
下一步:创建或选择策略,确认账户绑定及 dry 模式,再按账户启用。
wsl --install,重启(老机器先确认 wsl -l -v 的 VERSION 是 2)。sudo apt update && sudo apt install -y build-essential pkg-config libssl-dev git curl
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
~ 下),不要放 /mnt/c/...(9P 跨盘 I/O 慢一个数量级):
git clone https://github.com/ceer-quant/BlitzkriegBot.git && cd BlitzkriegBot
cargo build --release --workspace --locked && bash scripts/install-blitzkrieg-shim.sh && blitzkrieg run
http://127.0.0.1:51888/panel(WSL2 localhost 自动转发,wsl hostname -I 的内部 IP 不用)。三个 WSL 特有坑:wsl --shutdown 或最后一个 WSL 进程退出约 8 秒后会杀掉机器人(长跑保持 Ubuntu 窗口开着,或用 Windows 任务计划执行 wsl -e bash -lc "cd ~/BlitzkriegBot && blitzkrieg run");重启电脑后需手动 blitzkrieg run;数据在 \\wsl$\Ubuntu\home\<用户名>\BlitzkriegBot\data\ 可从 Windows 直接备份。内存紧张可在 %UserProfile%\.wslconfig 写 [wsl2] + memory=4GB。
DRY_RUN=false / --mode live,且需真人明确授权——项目硬性规则。--readonly 结构性只读:压过一切 live 请求,连下单通道都不构造。.env 被 git 忽略,绝不入库;账户凭证以 AES-256-GCM 密文存入 SQLite(主密钥 BLITZKRIEG_DB_KEY 放 .env,缺失 = 解密拒绝、绝不静默明文回退);安全问题走 SECURITY.md 私下披露。Q:我要装 Node.js 吗? 运行预编译发行包不需要。前端开发与构建需要 Node 和相应 npm 依赖;交易核心使用 Rust,Lua 运行时内嵌在策略宿主中。
Q:面板打不开? 先 blitzkrieg stop 再 blitzkrieg run(端口被旧栈占着时新栈绑不上);地址是 http://127.0.0.1:51888/panel。源码克隆若从没跑过前端构建(cd ui/webapp/webui && npm ci && npm run build),面板其实打得开,但会退化成内置 HTML 面板(旧版界面)——浏览器里看不到 /panel/assets/*.js 就是这个原因,补跑构建再 blitzkrieg stop && blitzkrieg run 即可。
Q:策略装了为什么不动? 三道门:包在 user_layer/strategies_lua/(安装)→ 面板策略页按账户打开开关(启用)→ 请求了策略但一个都没加载成功时内核拒绝启动(保护)。启动日志逐包打印装载与启用状态。
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗