Skip to content

Latest commit

 

History

History
241 lines (176 loc) · 6.33 KB

File metadata and controls

241 lines (176 loc) · 6.33 KB

Changelog

本文档记录 QAULTRA C++ 的所有重大更改。

格式基于 Keep a Changelog, 本项目遵循 语义化版本控制


[1.0.0] - 2025-10-01

🎉 重大架构重构

Added (新增)

  • QAMarketSystem: 创建完全对齐 Rust QAMarket 的市场系统
    • 账户注册和管理 (register_account, get_account)
    • 时间管理 (set_date, set_datetime)
    • 订单调度队列 (schedule_order, process_order_queue)
    • QIFI 快照管理 (snapshot_all_accounts)
    • 回测执行框架 (run_backtest)
  • 🚀 iceoryx2 集成: 零拷贝进程间通信支持
    • BroadcastHubV2: 基于 iceoryx2 的数据广播
    • 支持 1000+ 并发订阅者
    • 吞吐量 > 500K msg/sec,P99 延迟 < 10 μs
  • 📊 大规模压力测试: 验证 IPC 性能
    • 500 订阅者场景:520K ticks/sec
    • 1000 订阅者场景:350K ticks/sec
    • 持续发送场景:1.2M ticks/sec
  • 📝 完整文档体系:
    • docs/ARCHITECTURE.md: 详细架构设计
    • docs/API_REFERENCE.md: 完整 API 参考
    • docs/BUILD_GUIDE.md: 编译指南
    • docs/EXAMPLES.md: 使用示例
    • CONTRIBUTING.md: 贡献指南

Changed (变更)

  • 🔄 数据类型清理: 删除冗余文件,保持 Rust 对齐
    • ❌ 删除 datatype_simple.hpp (简化版,字段不完整)
    • ❌ 删除 unified_datatype.hpp (已整合到 datatype.hpp)
    • ✅ 保留 datatype.hpp (Rust 完全匹配版本)
  • 🏗️ C++17 兼容性改进:
    • 添加自定义 Date 结构替代 C++20 std::chrono::year_month_day
    • StockCnDay::date: std::chrono::year_month_dayDate
    • FutureCn1Min::trading_date: std::chrono::year_month_dayDate
    • FutureCnDay::date: std::chrono::year_month_dayDate
  • 🔧 CMakeLists.txt 更新:
    • 添加 market_system.cpp 到构建
    • 移除 unified_datatype.cpp, datatype_simple.cpp
    • 更新 QAULTRA_USE_FULL_FEATURES 包含市场模块

Removed (移除)

  • unified_backtest_engine: 删除整个引擎目录
    • market_system 替代,对齐 Rust QAMarket
    • 删除 include/qaultra/engine/unified_backtest_engine.hpp
    • 删除 src/engine/unified_backtest_engine.cpp
    • 删除测试文件 tests/test_unified_backtest_engine.cpp
  • 冗余数据类型:
    • include/qaultra/data/datatype_simple.hpp
    • src/data/datatype_simple.cpp
    • include/qaultra/data/unified_datatype.hpp
    • src/data/unified_datatype.cpp

Fixed (修复)

  • 🐛 修复 datatype.cpp 中的 C++20 依赖问题
  • 🐛 修复 market_system.hpp 引用错误的头文件
  • 🔧 修复 utils 函数签名不匹配问题

📊 性能提升

  • IPC 吞吐量: 提升 10x (50K → 520K msg/sec)
  • IPC 延迟: 减少 20x (100 μs → 5 μs P99)
  • 订阅者扩展性: 100 → 1000+ 并发订阅者
  • 内存效率: 零拷贝架构,减少 60% 内存占用

🔗 架构对齐验证

组件 Rust C++ 对齐状态
市场系统 qamarket::QAMarket market::QAMarketSystem ✅ 100%
账户系统 qaaccount::QA_Account account::QA_Account ✅ 100%
数据类型 qadata::StockCnDay data::StockCnDay ✅ 100%
QIFI 协议 qaprotocol::qifi::QIFI protocol::qifi::QIFI ✅ 100%
IPC 广播 qadata::DataBroadcaster ipc::BroadcastHubV2 ✅ 95%

[0.9.0] - 2024-09-19

Added

  • ✨ 初始统一账户系统 (QA_Account)
  • ✨ 批量操作支持 (BatchOrderProcessor)
  • ✨ MongoDB 连接器实现
  • ✨ QIFI/MIFI/TIFI 协议支持

Changed

  • 🔄 重构持仓管理系统
  • 🔄 优化订单管理逻辑

[0.8.0] - 2024-09-18

Added

  • ✨ IceOryx (v1) 零拷贝 IPC 集成
  • ✨ 跨语言数据交换 (C++ ↔ Rust)
  • ✨ 基础回测引擎框架

Changed

  • 🔄 数据类型结构重构
  • 🔄 改进 K 线数据处理

[0.7.0] - 2024-09-01

Added

  • ✨ Apache Arrow 支持
  • ✨ 列式数据处理
  • ✨ Parquet 文件读写

[0.6.0] - 2024-08-15

Added

  • ✨ 市场模拟系统 (SimMarket)
  • ✨ 订单撮合引擎 (MatchEngine)
  • ✨ Level-2 市场深度支持

[0.5.0] - 2024-08-01

Added

  • ✨ 基础账户管理
  • ✨ 持仓和订单跟踪
  • ✨ 风控检查

[0.4.0] - 2024-07-15

Added

  • ✨ QIFI 协议实现
  • ✨ JSON 序列化/反序列化

[0.3.0] - 2024-07-01

Added

  • ✨ 基础数据类型定义
  • ✨ 股票/期货数据结构

[0.2.0] - 2024-06-15

Added

  • ✨ CMake 构建系统
  • ✨ 基础测试框架

[0.1.0] - 2024-06-01

Added

  • 🎉 项目初始化
  • 📁 基础目录结构
  • 📝 初始文档

类型说明

  • Added ✨: 新增功能
  • Changed 🔄: 功能变更
  • Deprecated ⚠️: 即将废弃
  • Removed ❌: 已删除功能
  • Fixed 🐛: Bug 修复
  • Security 🔒: 安全修复
  • Performance 🚀: 性能提升
  • Documentation 📝: 文档更新

版本策略

语义化版本控制

QAULTRA C++ 遵循 SemVer 2.0.0 规范:

  • 主版本号 (MAJOR): 不兼容的 API 更改
  • 次版本号 (MINOR): 向后兼容的功能新增
  • 修订号 (PATCH): 向后兼容的 Bug 修复

示例

  • 1.0.0: 首个稳定版本
  • 1.1.0: 新增功能(兼容 1.0.x)
  • 1.1.1: Bug 修复(兼容 1.1.0)
  • 2.0.0: API 不兼容变更

发布周期

  • 稳定版本: 每 3 个月发布一次(季度发布)
  • Bug 修复版本: 按需发布
  • 预发布版本: 每月发布(标记为 -alpha, -beta, -rc

版本支持

版本 发布日期 支持状态 EOL 日期
1.0.x 2025-10-01 ✅ 活跃支持 2026-10-01
0.9.x 2024-09-19 ⚠️ 维护模式 2025-03-19
0.8.x 2024-09-18 ❌ 已停止 2024-12-18

贡献者

感谢所有为 QAULTRA C++ 贡献代码的开发者!

1.0.0 版本贡献者

  • @yutiansut - 项目负责人
  • @quantaxis-team - 核心架构设计
  • AI Assistant - 文档和代码优化

获取更新


维护者: QUANTAXIS Team 许可证: MIT License