工程与管理交易系统架构

一个交易系统的前几行代码:推荐器 + 一键清仓 + 多账户

5 月初,这个交易系统还只是几个零散的 idea。前两周的 commit 只有三件事:


推荐器

05-05 20:34  sell all position
05-05 20:35  recommender

推荐器(Recommender)是整个系统的第一个模块。它做的事情很简单:看所有持仓,判断哪些该平仓,哪些该加仓。

最早期的推荐逻辑非常原始——基于几个固定规则:

  • 浮亏超过 X% → 建议卖出
  • 浮盈超过 Y% 且趋势减弱 → 建议止盈
  • 资金费率极端 → 建议对冲

没有复杂的信号系统,没有 ML 模型,就是几个 if-else。从简单的 if-else 开始,比从”完美的架构设计”开始更重要。

这跟广告系统的起步一样——最早期的出价策略就是”固定 CPC × 预估 CTR”,没有 OCPC、没有实时竞价、没有多目标优化。但跑起来了,后面的所有优化都是在这个基础之上迭代的。


一键清仓

05-05 20:33  sell all position
05-05 20:34  sell all position zip

“Sell All Position”——一键平掉所有持仓。听起来不像 feature,更像是 panic button。

但它是项目早期最重要的功能之一。原因:

  1. 安全兜底:任何策略出问题,一键清仓是最快的止损
  2. 调试工具:开发新策略前,先清掉旧仓位,从零开始测试
  3. 运维必备:服务器维护前,一键清仓避免维护期间行情波动

好的系统设计里,退出机制比进入机制更重要。 开仓可以慢,但平仓必须快。


多账户

05-16 16:36  multi account
05-16 16:37  multi account

多账户支持——同一个系统管理多个交易账户。每个账户独立核算、独立风控、独立推荐。

关键设计决策:账户之间完全隔离。 不是”一个策略管多个账户”,而是”每个账户跑独立的策略实例”。因为:

  • 账户 A 可能做趋势追踪,账户 B 做网格交易
  • 账户 A 的止损不影响账户 B
  • 一个账户出问题不会拖垮另一个

这和广告系统的多广告主隔离一样——广告主 A 的预算消耗不影响广告主 B 的竞价。


一句话

项目最早的代码不是架构,是推荐器 + 一键清仓 + 多账户——三个功能对应三个原则:知道该做什么(推荐)、知道怎么退出(清仓)、知道边界在哪(多账户隔离)。