# axon_quant
**Repository Path**: pengwow/axon_quant
## Basic Information
- **Project Name**: axon_quant
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-06-19
- **Last Updated**: 2026-07-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
#

AXON
**AI 原生量化交易框架**
[](./LICENSE) [](https://www.rust-lang.org/) [](https://www.python.org/) [](./CHANGELOG.md) [](https://github.com/pengwow/axon_quant/actions) [](./crates/)
**[English](./README.md)** | 中文
> 面向量化交易与强化学习的事件驱动交易引擎。它从设计之初就以 AI 为核心,而非在传统量化系统上"嫁接"机器学习模块。
Rust 实现高性能内核,Python 提供 RL 训练接口,一套代码贯穿回测、训练、优化、验证、生产的完整链路。
[在线文档](https://pengwow.github.io/axon_quant/) · [示例](./examples/)
## 设计哲学
- **AI First**:强化学习(RL)环境与回测引擎共享同一套数据结构,训练与生产零差异
- **Rust Core**:纳秒级时间戳、确定性撮合、零成本抽象,回测吞吐 > 1M events/sec
- **Python Front**:通过 PyO3 暴露 Gymnasium 兼容接口,可直接挂 Stable-Baselines3 / Ray RLlib
- **Full Pipeline**:回测 → 训练 → HPO → Walk-forward → 追踪 → 注册 → 部署,全链路内置
- **100% 开源**:Apache-2.0 许可,无企业版、无功能阉割
***
## 特性
### 回测引擎
- **多级撮合**:L1 基础撮合 → L2 复杂订单簿 → L3 多资产交叉
- **冲击模型**:Almgren-Chriss 永久/临时冲击 + 概率延迟 + 分层费用
- **确定性回放**:`SimulatedClock` + crossbeam-channel bounded 100K 事件队列
- **列式存储**:Arrow/Parquet,1M tick 读写 < 15ms
- **流式引擎**:通过 `StreamDataSource` trait 实时接入 tick,支持 CSV 回放 / 交易所模拟 / 未来 WebSocket;`StreamingStrategy` trait 驱动 tick 级策略;`StreamingMetrics` 实时追踪权益曲线、夏普比率、最大回撤、胜率
- **模拟盘**:可配置滑点、成交概率、部分成交比例的模拟交易所;确定性 RNG 种子保证测试可重复
### RL 环境
- **Gymnasium API**:离散 / 连续 / 混合动作空间
- **奖励函数**:PnL / Sharpe / Sortino,基于统一 `ReturnHistory`
- **向量化**:`VecEnv` 支持多环境并行 rollout
- **PyO3 绑定**:maturin 打包,6 个子模块
### 训练管线
- **超参优化**:Optuna 集成 + NSGA-II 多目标 + Pareto 前沿 + 早停剪枝
- **滚动前向验证**:Purged + Embargo + 泄漏检测 + Deflated Sharpe Ratio
- **实验追踪**:MLflow / WandB / Local / Memory 四后端
- **模型注册**:SemVer + 阶段生命周期 + 自动归档 + 回滚
- **分布式训练**:Ray Actor + Parameter Server + Checkpoint 容错
### AI 增强
- **LLM 智能体**:ReAct + Tool Calling,内置 `PlaceOrder` / `QueryPortfolio` 交易工具,带 SafetyMode 风控
- **Agent Swarm**:多 Agent 协作框架,采用 Actor 模型,支持投票共识和动态扩缩容
- **MarketAgent**:市场分析与信号生成
- **RiskAgent**:预交易风控评估与合规检查
- **ExecutionAgent**:订单执行(TWAP/VWAP 策略)
- **AuditAgent**:决策日志与合规报告
- **SwarmOrchestrator**:Agent 生命周期管理、消息路由、自动扩缩容
- **模型集成**:Voting / Stacking / 动态加权,在线监控夏普比率自动调权
- **可解释性**:SHAP 特征归因 + 反事实解释 + `Explainer` trait 内建
- **合规审计**:不可篡改的交易日志 + 决策报告归档
### 生产部署
- **交易所适配**:Binance / OKX REST + WebSocket(自动重连)
- **风控引擎**:预交易检查(12ns)、实时熔断、仓位限制
- **推理引擎**:ONNX / Candle 双后端 + CPU/GPU 亲和性绑核 + 批推理
### DeFi 集成(实验性)
> **注意**:DeFi 功能为实验性质,正在积极开发中,API 可能会变化。
- **EVM 链支持**:Ethereum / Arbitrum / Optimism / Polygon
- **DEX 集成**:Uniswap V3 直接集成,最优路由
- **MEV 保护**:MEV-Share 防止三明治攻击
- **智能合约风控**:混合风控检查(链下快速 + 链上权威)
- **跨链桥接**:LayerZero 集成,支持多链资产转移
***
## 快速开始
### 安装(推荐)
```bash
# 基础安装(核心 + 数据处理)
pip install axon_quant
# 包含 ONNX 推理支持(onnxruntime,自动加载)
pip install axon_quant[onnx]
# 包含 RL 训练依赖(gymnasium, stable-baselines3, torch)
pip install axon_quant[rl]
# 全功能安装
pip install axon_quant[onnx,rl]
```
验证安装:
```bash
python -c "import axon_quant; print(axon_quant.__version__)"
```
### 从源码构建
如需修改 Rust 核心代码:
```bash
git clone https://github.com/pengwow/axon_quant.git
cd axon_quant
# 编译
cargo build
# 测试(2300+ 用例)
cargo test --workspace
# 静态检查
cargo clippy --workspace -- -D warnings
# 构建并安装 Python wheel
maturin build --release
pip install target/wheels/axon_quant-*.whl
```
### 训练示例
```bash
# 随机基线
python examples/01_random_agent.py
# PPO 训练
python examples/02_train_ppo.py --timesteps 50000
# HPO 优化
python examples/03_hpo/hpo_single_objective.py
# 滚动前向验证
python examples/08_walk_forward/walk_forward_basic.py
```
> 📖 详细的 RL 训练文档请参考:[RL 训练指南](docs/zh/user-guide/rl-training.md)
***
## 架构
AXON 采用 Cargo Workspace 管理 21 个 crate,按依赖层级自下而上分为 9 层:
```
┌─────────────────────────────────────────────────────────────┐
│ Layer 9: 应用入口 │
│ ├─ axon-cli CLI 工具 │
│ └─ axon-python PyO3 统一入口(axon_quant 包) │
├─────────────────────────────────────────────────────────────┤
│ Layer 8: AI 智能体 │
│ ├─ axon-llm ReAct 智能体 + Tool Calling │
│ └─ axon-explain SHAP / 反事实 / 决策报告 │
├─────────────────────────────────────────────────────────────┤
│ Layer 7: 模型服务 │
│ ├─ axon-inference ONNX / Candle / tch 推理引擎 │
│ └─ axon-ensemble 模型集成(投票 / Stacking / 动态加权) │
├─────────────────────────────────────────────────────────────┤
│ Layer 6: 训练管线 │
│ ├─ axon-rl Gymnasium 环境 + VecEnv + 奖励函数 │
│ ├─ axon-hpo Optuna 超参优化(单目标 / 多目标) │
│ ├─ axon-distributed Ray Actor 分布式训练 │
│ └─ axon-walk-forward 滚动前向验证(Purged + Embargo) │
├─────────────────────────────────────────────────────────────┤
│ Layer 5: 实验治理 │
│ ├─ axon-tracker MLflow / WandB / Local / Memory 追踪 │
│ └─ axon-registry 模型注册表(SemVer + 生命周期 + 回滚) │
├─────────────────────────────────────────────────────────────┤
│ Layer 4: 生产执行 │
│ ├─ axon-exchange Binance / OKX 适配器(REST + WebSocket) │
│ ├─ axon-risk 风控引擎(仓位 / 回撤 / VaR / 熔断) │
│ ├─ axon-oms 订单管理系统 │
│ └─ axon-monitor 监控告警 + 健康检查 │
├─────────────────────────────────────────────────────────────┤
│ Layer 3: 回测引擎 │
│ ├─ axon-backtest L1/L2/L3 撮合 + Almgren-Chriss 冲击模型 │
│ └─ axon-compliance 合规审计 + 日报 / 月报 / 年报 │
├─────────────────────────────────────────────────────────────┤
│ Layer 2: 数据服务 │
│ └─ axon-data Arrow 列式存储 + CSV/Parquet 源 + 特征管道 │
├─────────────────────────────────────────────────────────────┤
│ Layer 1: 核心类型 │
│ └─ axon-core 时间戳 / 价格 / 数量 / 订单 / 事件 / 队列 │
│ / 组合 / 波动率 / 延迟 / 费用 / SIMD │
└─────────────────────────────────────────────────────────────┘
```
### 线程模型
- **核心匹配引擎**:单线程,避免锁竞争,保证确定性
- **I/O 线程池**:tokio runtime,处理 WebSocket / REST / 文件 I/O
- **计算线程池**:rayon,因子计算 / 数据转换 / 并行回测
- **事件队列**:crossbeam-channel bounded 100K,零锁设计
### 数据管道
AXON 的所有模块共享同一套 Arrow `RecordBatch`,零拷贝透传,无格式转换断层:
```
数据源 (CSV/Parquet/WebSocket/Mock/交易所 API)
│
▼
axon-data (schema 校验 / 时间对齐 / 去重 / mmap 缓存)
│
▼
Arrow RecordBatch (内存) ──→ TradingEnv / FeaturePipeline / BacktestEngine
│
▼
InferenceEngine (ONNX/Candle 批推理 < 1ms)
│
▼
ExchangeAdapter (Binance/OKX 实盘下单)
```
### 层级说明
1. **axon-core**:整个系统的基石。提供 `Timestamp`(纳秒精度)、`Price` / `Quantity`(基于 `rust_decimal`)、`Order`、`Event`、`Queue`、`Portfolio` 等核心类型,以及 SIMD 加速的归一化与订单簿操作。
2. **axon-data**:统一数据接入层。基于 Apache Arrow 的 `RecordBatch` 列式存储,支持 CSV / Parquet / Mock 数据源,内置 `FeaturePipeline`(Z-Score 归一化 + 滑动窗口)。
3. **axon-backtest**:事件驱动回测引擎。支持 L1(价格优先)、L2(订单簿)、L3(暗池 / 拍卖)三级撮合,集成 Almgren-Chriss 市场冲击模型与概率延迟模拟。
4. **axon-exchange**:生产级交易所适配器。统一 `ExchangeAdapter` trait,已实现对 Binance / OKX 的 REST + WebSocket 对接,内置指数退避重连与令牌桶限流。
5. **axon-rl**:强化学习环境。`TradingEnv` 实现 Gymnasium 标准接口(`reset` / `step` / `render`),支持连续动作(目标仓位比例 `[-1, 1]`)、离散动作(分仓档位)、多目标奖励与向量化并行环境 `VecEnv`。
6. **axon-inference**:模型推理引擎。支持 ONNX Runtime、Candle(纯 Rust)、tch-rs(PyTorch C++)三后端,具备异步批推理管线、CPU/GPU 亲和性绑定与模型热更新能力。
7. **axon-llm**:大语言模型智能体。基于 ReAct 推理循环,内置"市场分析"、"查询持仓"、"提交订单"三个工具,支持 OpenAI 兼容后端与流式响应。
8. **axon-explain**:可解释性引擎。集成 SHAP 特征归因、反事实解释("如果当时不买入,收益会如何变化")与结构化决策报告,满足监管合规与策略迭代需求。
9. **axon-ensemble**:模型集成。提供 HardVote、SoftVote、WeightedVote、Stacking、DynamicWeighted 五种策略,支持在线性能监控与自动权重调整。
***
## 仓库结构
```
axon_quant/
├── crates/ # 21 个 Rust crate
│ ├── axon-core/ # 核心类型(time/types/market/order/event/queue/portfolio)
│ ├── axon-backtest/ # 回测引擎(L1/L2/L3 撮合 + 冲击模型)
│ ├── axon-rl/ # RL 环境(Gymnasium + VecEnv)
│ ├── axon-hpo/ # 超参数优化(Optuna + NSGA-II)
│ ├── axon-walk-forward/ # 滚动前向验证(Purged + Embargo)
│ ├── axon-distributed/ # 分布式训练(Ray)
│ ├── axon-tracker/ # 实验追踪(MLflow/WandB/Local/Memory)
│ ├── axon-registry/ # 模型注册表(SemVer + 生命周期)
│ ├── axon-exchange/ # 交易所适配器(Binance/OKX)
│ ├── axon-inference/ # 推理引擎(ONNX/Candle)
│ ├── axon-risk/ # 风控引擎
│ ├── axon-oms/ # 订单管理系统
│ ├── axon-monitor/ # 监控告警
│ ├── axon-llm/ # LLM 智能体
│ ├── axon-python/ # Python 绑定入口
│ └── axon-cli/ # CLI 工具
├── python/ # Python 包(axon_quant)
├── examples/ # 训练示例脚本
├── tests/ # 测试(Rust + Python)
├── docs/ # 设计文档 + ADR
├── scripts/ # 构建与测试脚本
├── pyproject.toml # Python 打包配置
├── Makefile # 开发命令
└── Dockerfile # 多阶段构建
```
***
## Crate 矩阵
| Crate | 功能 |
| ---------------------- | ------------------------- |
| axon-core | 核心类型(11 模块) |
| axon-backtest | 回测引擎(L1/L2/L3) |
| axon-rl | RL 环境(Gymnasium + VecEnv) |
| axon-hpo | 超参数优化(Optuna) |
| axon-walk-forward | 滚动前向验证 |
| axon-distributed | 分布式训练(Ray) |
| axon-tracker | 实验追踪 |
| axon-registry | 模型注册表 |
| axon-exchange | 交易所适配器(Binance/OKX) |
| axon-inference | 推理引擎(ONNX/Candle) |
| axon-python | Python 绑定(PyO3) |
| axon-cli | CLI 工具 |
| axon-risk | 风控引擎 |
| axon-oms | 订单管理 |
| axon-monitor | 监控告警 |
| axon-llm | LLM 智能体 |
| axon-explain | SHAP 可解释性 |
| axon-ensemble | 模型集成 |
| axon-compliance | 合规审计 |
| axon-data | 数据服务 |
| axon-integration-tests | 集成测试 |
***
## 性能
| 指标 | 数值 |
| ----- | --------------------------------- |
| 回测吞吐 | > 1M events/sec |
| 撮合延迟 | < 1us (P99) |
| 风控检查 | 12ns (AtomicBool 熔断 + HashMap 仓位) |
| 订单提交 | 1.2µs (幂等 + UUID v7 + 状态机) |
| RL 训练 | > 10k steps/sec (8 env VecEnv) |
| 分布式加速 | > 5x (8 workers) |
| 测试用例 | 1200+ Rust + 24 Python |
### 基准测试
workspace 已建立 50+ Criterion bench,跨 5 个 crate:
| Crate | Bench 入口 | 覆盖 |
| --------------- | ---------------------------- | -------------------------------------------------------------------- |
| `axon-core` | `benches/core_bench.rs` | 28 个:冲击模型/波动率/延迟/订单簿/订单/事件/费用 |
| `axon-backtest` | `benches/impact_bench.rs` | 8 个:撮合延迟/不同冲击模型/订单簿深度/永久衰减/多笔/TOML 配置 |
| `axon-data` | `benches/axon_data_bench.rs` | 7 个 group(8+ bench):LRU/Dataset lazy/CSV/Parquet 流式/Bar 聚合/Mock/Mmap |
| `axon-rl` | `benches/rl_bench.rs` | 11 个:观测/奖励/TradingEnv 端到端/Action 转换 |
| Phase 4 crates | `benches/phase4_bench.rs` | 15 个:风控/OMS/监控延迟 |
```bash
make bench # 全 workspace,本地 5-10 分钟
make bench-cmp # 存 main baseline,PR 对比
make bench-one CRATE=axon-core BENCH=event_builder_tick # 单个 bench
cargo bench -p axon-core -- impact_linear # 直接 cargo 跑
```
CI 不跑 bench(避免 main runner 性能噪声)。报告: `target/criterion//report/index.html`。
### CPU/GPU 亲和性
`axon-inference` 提供 `affinity` 模块,跨平台绑核降低跨核 cache miss:
```rust
use axon_inference::affinity::{AffinityPlan, pin_to};
let plan = AffinityPlan::new().with_cpus(vec![0, 1]).with_cuda(0);
pin_to(&plan)?;
```
或通过 `BatchConfig` 配置(`BatchInferencePipeline::new` 启动时自动调):
```toml
[batch]
collect_cpu_cores = [0, 1, 2, 3]
collect_gpu_device_id = 0
```
平台支持: Linux / macOS 完整支持, Windows 运行时返回 `Err(AffinityError::NotAvailable)`(用 WSL2 / numactl 替代)。
***
## 工程实践
- **TDD 驱动** — 先测试后实现,CI 强制 `-D warnings`
- **1200+ 测试** — 单元测试 + 集成测试 + Python 场景测试
- **cargo clippy** — 零警告策略
- **cargo-mutants** — 变异测试覆盖
- **cargo-fuzz** — 模糊测试(撮合引擎/订单簿/风控)
- **Miri** — 数据竞争检测
- **Loom** — 确定性并发测试
***
## 文档
- [安装与快速入门](docs/zh/getting-started/installation.md)
- [AI 原生核心设计](docs/zh/user-guide/ai-native-design.md)
- [策略研发全流程](docs/zh/user-guide/strategy-development.md)
- [LLM 智能体驱动交易](docs/zh/user-guide/llm-trading/oader.md)
- [生产部署与监控](docs/zh/user-guide/production.md)
- [传统策略迁移](docs/zh/user-guide/traditional-strategy.md)
- [API 参考](docs/zh/reference/api-reference.md)
- [常见问题](docs/zh/about/faq.md)
***
## 许可
[Apache-2.0](./LICENSE)
---
## 免责声明
本项目是一个**开源量化交易框架**,仅供**研究和学习目的**使用。
- **非投资建议**:本仓库中的任何内容均不构成金融、投资或交易建议。
- **不保证收益**:历史表现(包括回测结果)不代表未来收益。
- **风险自担**:作者和贡献者**不对使用本软件造成的任何经济损失承担责任**。
- **非生产就绪**:本软件按"现状"提供,不附带任何明示或暗示的保证。在实盘环境中使用前,需进行充分测试和风险评估。
- **合规责任**:用户有责任自行确保其使用行为符合适用的法律法规。
**使用本软件即表示您理解并接受上述条款。**