回测与实盘之间的每一分钱,都对得上。
一个 Rust 交易引擎:真实交易所会强平时它就强平,回测与实盘跑在同一个内核上,并为讲清二者之间的差额而建——上面再配一个自托管控制台。
$ cargo run --example martingale_ladder已强平下单路径已接入八家交易所
每秒 tick,含保证金与策略(M4 Mac,内存中)
引擎中的第三方依赖
某商业存档丢失、我们保住的成交
种下单结果:接受、拒绝、未知
最危险的错误,是看起来正确的那一个。
它的前身用真钱交易了多年,撞上了六面墙,没有一面报过错。
静默失败
零价成交、无尽的撤单循环。没有崩溃。
差额说不清
实盘和回测不一样,却说不出差在哪。
两套代码
回测与实盘本应一致,却没有任何保证。
研究太慢
跑一次要几十分钟,人就不再提问了。
结论会过期
代码、数据、参数都变了,结论还成立吗?
过拟合不要钱
两百次里挑最好的——却从不给运气定价。
两层结构,一本真账。
引擎负责产出证据,控制台负责让证据看得懂。
回测与实盘共用一个确定性内核
生来就不讨好你。
计入保证金的回测
分级保证金、强平、资金费、手续费。真实交易所会强平你,这里也会。
保真度阶梯
L0 上快速扫参,再逐级加上排队、延迟与订单簿。
差额归因
影子内核在交易所旁并行运行,把差额拆开;拆不开的,记为残差。
给过拟合定价
每次扫参都给出 Deflated Sharpe 与 PBO,并对赢家重查前视偏差。
确定性 journal
重放精确还原状态。恢复、审计与研究是同一套机制。
零依赖
引擎是纯标准库 Rust,引入依赖 CI 就失败。
Python 策略
用 Python 写,在 Rust 引擎上跑——批量模式最快七倍。
import openquanter as oq oq.run_backtest(MyStrategy(), ticks, balance=10_000)
诚实的下单路径
超时不等于失败,「未知」是一等结果。
一个敢于说「不」的控制台。
「无法判断」永远不会显示成「一切正常」。
密钥不出本机
自托管,从不持有你的 API 密钥。
始终需要登录
Argon2id、Origin 校验,非本机强制第二因素。
双钥匙操作
高风险操作需要只有主机代理能校验的验证码。
黑匣子
过去 90 天里的任意时刻,展开来看。
为必须对这个数字负责的人而做。
带杠杆的交易者
自营、小基金或你自己——有真金白银,也有人要交代。
迁移交易引擎
逐笔证明行为没有改变。
需要展示结果的人
投资人与风控可以自己跑一遍核对,而不只是相信。
对自己走到哪一步,说实话。
已建成并有测试
- 确定性内核与 journal 重放
- L0 / L1 / L2 撮合
- 保证金、强平、资金费、手续费
- 采集已在真实交易所验证
- DSR、PBO、前视检查
- 8 家交易所下单路径、熔断开关
- Python 层已上 PyPI
- 测试网实盘闭环 + 控制台
尚未完成
- 供归因的长时间实盘
- API 稳定
- 2.x 用真钱实盘交易
- ONNX 推理、LLM 沙箱
- crates.io 发布
几分钟跑起来。
Deflated Sharpe、过拟合概率,以及在 Rust 引擎上运行的 Python 策略。支持 Linux、macOS、Windows。
pip install openquanter
快速上手里有三个示例,不需要下载数据。
git clone https://github.com/openquanter/openquanter cd openquanter cargo run --example martingale_ladder
控制台、主机代理与 Web 界面,附校验和。
v=1.0.0; t=x86_64-unknown-linux-gnu
curl -LO https://github.com/openquanter/quanterdeck/releases/download/v$v/quanterdeck-v$v-$t.tar.gz{,.sha256}
sha256sum -c quanterdeck-v$v-$t.tar.gz.sha256