A股订单簿工具AXOrderBook完全使用指南
项目概述
AXOrderBook是一款专为A股市场设计的高性能订单簿解析工具。该项目基于逐笔行情数据,能够实时重建订单簿、发布千档快照,并展示各价位委托队列。通过Python模型算法验证与FPGA硬件加速的完美结合,为金融高频交易提供极速数据处理能力。
核心功能特性
订单簿实时重建
基于A股逐笔数据,精确还原市场深度。订单簿是某只交易标的在某一时刻买卖订单按价格档位组织而成的列表,常见的5档快照即是订单簿最优5档价格的切片。
FPGA硬件加速
采用HLS代码优化,实现毫秒级数据处理。订单簿重建需要的算力过大,通常都是采用FPGA引擎卸载来加速。
千档快照发布
全面展示市场流动性,洞察交易机会。目前A股交易所发布的L2行情快照仅发布10档快照及此10档的前50笔排队订单,而AXOrderBook能够提供更全面的市场深度信息。
快速启动指南
获取项目源码
首先克隆项目到本地:
git clone https://gitcode.com/gh_mirrors/ax/AXOrderBook.git
cd AXOrderBook
环境配置
推荐使用Anaconda创建专用环境:
conda create --name axorderbook python=3.8
conda activate axorderbook
pip install -r requirements.txt
运行示例
体验订单簿重建功能:
python example_orderbook_reconstruction.py
订单簿重建算法
模拟撮合方法
在收到逐笔委托后,模拟交易所撮合机制进行成交判断并修改价格档位和订单队列,即刻生成新的订单簿。
优势:更新订单簿的速度快;在集合竞价阶段也可以发布订单簿;可以发布价格档位的订单队列。
等待成交方法
在收到委托后先缓存,待收齐对应的成交消息后,根据成交内容修改价格档位和订单队列,从而生成新的订单簿。
优势:不需要管理订单队列,数据结构简单。
技术架构
Python模型实现
项目首先使用Python实现订单簿重建算法的模型,进行算法正确性和资源评估。为了便于转换成HLS,Python的实现会采用许多原始数据结构。
FPGA HLS实现
在验证完Python模型后,使用Xilinx Vitis环境开发对应的FPGA HLS实现,预计开发环境包括Centos 8 stream、Xilinx Vitis 2022.1、Xilinx Alveo U50等。
数据源说明
项目从深交所某日的L2行情中截取了几只个股的行情消息,并格式化成易于阅读和使用的二进制格式。数据文件需要放置于data目录下,包括不同日期的个股数据。
项目结构
AXOrderBook项目包含多个重要目录:
- data:存放测试数据文件
- doc:项目文档和技术参考资料
- hw:硬件实现相关代码
- py:Python模型和工具代码
开发环境要求
Python环境
- Windows 10 / Centos 8 stream
- Anaconda + Python 3.8.10
FPGA开发环境
- Centos 8 stream
- Xilinx Vitis 2022.1
- Xilinx Alveo U50
- Xilinx pynq 2.6.2
应用场景
AXOrderBook特别适用于以下场景:
- 高频交易系统中的订单簿实时更新
- 深度市场洞察服务
- 量化交易策略验证
- 金融科技研究和教学
最佳实践建议
策略验证流程
- 利用Python模型测试重建算法
- 在L2行情数据上验证准确性
- 优化HLS代码提升硬件效率
- 在波动市场中保持实时性和精确度
性能优化要点
- 重点优化HLS代码以达到最高效的硬件利用率
- 注意维护订单簿的实时性和准确性
- 在高波动市场环境下特别关注系统表现
技术优势
AXOrderBook结合了软件灵活性和硬件高性能的优势:
- 灵活性:Python模型便于算法验证和修改
- 高性能:FPGA实现提供硬件级加速
- 准确性:基于官方L2行情数据,确保重建准确性
- 实时性:相比交易所3秒一次的行情快照,提供更实时的市场深度
参考资料
项目提供了丰富的技术文档和参考资料,包括订单簿重建流程梳理、HLS工具测试文档等,帮助开发者深入理解技术细节。
通过AXOrderBook,开发者可以高效地应对复杂的市场动态,构建高性能的金融数据处理系统。根据实际需求调整配置,合理利用该工具以达成最佳效果。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust041
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
ERNIE-ImageERNIE-Image 是由百度 ERNIE-Image 团队开发的开源文本到图像生成模型。它基于单流扩散 Transformer(DiT)构建,并配备了轻量级的提示增强器,可将用户的简短输入扩展为更丰富的结构化描述。凭借仅 80 亿的 DiT 参数,它在开源文本到图像模型中达到了最先进的性能。该模型的设计不仅追求强大的视觉质量,还注重实际生成场景中的可控性,在这些场景中,准确的内容呈现与美观同等重要。特别是,ERNIE-Image 在复杂指令遵循、文本渲染和结构化图像生成方面表现出色,使其非常适合商业海报、漫画、多格布局以及其他需要兼具视觉质量和精确控制的内容创作任务。它还支持广泛的视觉风格,包括写实摄影、设计导向图像以及更多风格化的美学输出。Jinja00

