Skip to content

Releases: DarkLink/QuantPits

v0.3.0-alpha

17 Mar 13:14

Choose a tag to compare

v0.3.0-alpha Pre-release
Pre-release

Release Notes v0.3.0-alpha

This pre-release introduces major structural improvements designed for high flexibility and stability. The key highlights of this release include the launch of our new Rolling Training Pipeline, significant decoupling of downstream processes, a transition from localized CSV files to unified Qlib Recorders, and a massive overhaul to our automated testing infrastructure.

🚀 Key Features & Enhancements

1. Rolling Training Logic

  • State Management & Rolling Execution: Implemented robust rolling training logic with full state management to support continuous model testing over dynamic timeframes.
  • Cold Start & Model Merging: Enabled the merging of new models for "cold start" executions and added the capability to backtest combined predictions seamlessly.
  • Demonstration Configurations: Provided new demo rolling configuration files (demo rolling config yaml) to set up complex rolling-train strategies effortlessly.

2. Architectural Refactoring & Decoupling

  • Prediction Loading via Qlib Recorders: Completely migrated prediction loading away from static CSV dependencies. Downstream processes now natively fetch their data directly using Qlib Recorders.
  • Downstream Script Decoupling: Refactored the training pipeline to fully decouple downstream scripts (order_gen.py, signal_ranking.py) from specific training workflows (static vs. rolling). This provides a single, unified method for managing predictions.
  • Advanced Pre-Training Workflow: Refactored the pre-training workflow to decouple base models. Introduced a standalone pre-training script supported by dynamic path injection and automated feature consistency validation.
  • Unified Configuration Loader: Centralized configuration management across the platform. The new unified loader standardizes behaviors across all pipelines, tests, and documentation.
  • Workspace Reorganization: Restructured the extensive scripts directory into distinct utils and tools module namespaces for better long-term maintainability.

3. Analytics, Execution & Alignments

  • Robustness in Order Generation: Substantially enhanced the order_gen.py script for better resilience in production contexts, combined with updated workspace configurations.
  • Ensemble Data Alignment: Eliminated prediction vs backtest inconsistencies inside ensemble scripts by integrating improved cross-sectional data alignment and robust feature normalization.
  • Visualizations and Outputs: Translated matplotlib plotting labels natively to English and stripped out legacy redundant Chinese font settings ensuring broader user compatibility.
  • File Access Cleanup: Suppressed the system's tendency to access live-trading files while executing localized backtests or ensemble fusion combinations.

🛠️ Testing & Reliability

A massive focus in this sprint was ensuring enterprise-grade stability. The test suite has been drastically enhanced:

  • Migrated Testing Logic to Pytest: Upgraded various structural unit tests from unittest to pytest, removing wide-spread deprecation warnings caused by Pydantic, Numpy, and Scipy updates.
  • Deep Analytics Verifications: Formally introduced deep verifications and validations for assessment scripts (portfolio_analyzer.py and ensemble_analyzer.py) verifying their math against hand-computed ground truths using mock signals.
  • Resilient CI Mocking Architecture: Built out a safer mocking structure. Avoided sys.module pollution in CI platforms (GitHub Actions), thoroughly mocked SimulatorExecutor, and handled edge cases where Qlib data frequencies were missing.
  • Enhance Coverage Missions: Increased structural coverage iteratively, closing major gaps in brute-force fast scripts, and pre-training validations ensuring all localized and rolling train states are effectively guarded.

📖 Documentation Updates

  • Extended documentation defining how market settings are processed globally in analytical models.
  • Added comprehensive documentation regarding the architectural merge and backtesting capabilities associated with rolling train features.

Full Changelog: v0.2.2-alpha...v0.3.0-alpha

v0.2.2-alpha

08 Mar 10:20

Choose a tag to compare

v0.2.2-alpha Pre-release
Pre-release

Release Notes for v0.2.2-alpha

更新内容

[新功能]

  • 可分享报告功能: 在分析报告中引入了新的 --shareable 参数。该功能会脱敏敏感数据(如金额、具体股票代码),同时保留核心性能指标,方便安全地进行外部演示与分享。
  • Windows 支持: 增加了适用于 Windows 环境的工作区激活脚本。

[错误修复]

  • 交易分类修正: 修复了分析报告中交易分类百分比求和不等于 100% 的问题。
  • 依赖管理: 在 pyproject.tomlrequirements.txt 中补充了缺失的依赖库(seaborn, matplotlib, tqdm),确保不同开发环境下运行的一致性。
  • 增量训练修复: 解决了 test_incremental_train 在 GitHub Actions 环境下因缺失 Qlib 数据导致的失败问题。

[测试与 CI/CD]

  • GitHub Actions 集成: 成功配置了 GitHub 自动测试工作流。
  • 测试覆盖率大幅提升:
    • 显著增强了 Brute Force、Optimizer、Order Generation 和 Ensemble Fusion 等核心模块的任务单元测试。
    • 针对脚本级逻辑和工具函数进行了深度测试优化。
  • 代码覆盖率策略调整: 适度放宽了 Codecov 的补丁约束,以适应当前项目开发阶段。

[日常维护]

  • 更新了项目文档和 README,以反映最新的功能变更。
  • 清理了根目录下的冗余文件。

v0.2.1-alpha

04 Mar 02:30

Choose a tag to compare

v0.2.1-alpha Pre-release
Pre-release

QuantPits Release 0.2.1-alpha

本次 0.2.1-alpha 是针对前一版本 0.2.0-alpha 的热修复。主要更新内容如下:

  • 缺陷修复:修复了在训练流水线中由于 YAML 锚点引用失效导致的 KeyError: 'strategy' 报错问题。现在系统会正确地将配置项通过 kwargs 传递给 PortAnaRecord
  • 文档优化:对保姆级教程 (docs/70_WALKTHROUGH.md) 进行了排版、UX 以及逻辑细节修复,确保中英文文档的一致性并提升了阅读体验。

[DEPRECATED] v0.2.0-alpha

03 Mar 02:44

Choose a tag to compare

Pre-release

QuantPits v0.2.0-alpha

这是一个包含多项架构重构、功能扩展及大量文档更新的 Alpha 核心版本。在此版本中,我们重点解耦了核心流水线中的策略逻辑,引入了可扩展的券商适配器框架,重构了数据路径配置,并完善了开源社区规范与落地页指南。

🚀 功能扩展 (Features)

  • Post-Trade: 引入了可扩展的 Broker Adapter (券商适配器) 框架,实现了结算单解析逻辑的解耦,方便未来接入更多券商格式 (3ee0ed4).
  • Landing Page: 新增了项目的独立且美观的落地页展示 (8355cbd).

🛠 架构重构 (Refactoring)

  • Strategy Provider: 引入 StrategyProvider 架构和 strategy_config.yaml,成功将回测及订单生成的策略逻辑从核心流水线 (Core Pipelines) 中全面解耦 (db8bbb1).
  • Qlib Data Env: 在 env.init_qlib() 中支持通过 QLIB_DATA_DIRQLIB_REGION 环境变量来配置并解耦 Qlib 的本地数据路径 (e762f4a).

📝 文档更新 (Documentation)

  • Walkthrough: 新增了端到端 (End-to-End) 的完整实操指南文档 (c24dde6).
  • Strategy Sync: 全面更新了中英文文档及 README,以适配全新的 Strategy Provider 架构与配置方式 (fa9aab4).
  • Community: 建立开源社区规范,新增了贡献指南 (CONTRIBUTING.md)、安全策略 (SECURITY.md) 及行为准则等规范文件 (dd86d25).
  • Landing Page Security: 增加了落地页相关的 Security Headers 配置文件 (5856353, 974413a).
  • Concepts & Limitations: 补充了关于基于日频数据回测的参考说明,并明确了 Fast Brute Force 的底层限制、线性近似分析以及盘后券商数据的格式要求 (4c8a82f, 479c69b).

🧪 测试与质量 (Testing & Quality)

  • Unit Tests: 新增并实装了核心脚本 (Core Scripts) 的单元测试样例,并同步梳理更新了项目依赖项 (requirements.txt) (e27217a).

Full Changelog: 3592c4a...v0.2.0-alpha

v0.1.0-alpha

28 Feb 14:03

Choose a tag to compare

v0.1.0-alpha Pre-release
Pre-release

The system architecture has been initially open-sourced, and the entire process from Qlib training to order generation and visualization has been successfully completed. It is currently in the Alpha stage, contains known bugs, and is for testing and learning purposes only.

Full Changelog: https://github.com/DarkLink/QuantPits/commits/v0.1.0-alpha