Qlib 项目文件结构概览
根目录文件
.deepsource.toml: DeepSource 配置,用于代码质量分析。.dockerignore: Docker 构建时忽略的文件列表。.gitignore: Git 版本控制忽略的文件列表。.mypy.ini: MyPy 类型检查工具的配置文件。.pre-commit-config.yaml: Pre-commit 钩子配置,用于在提交前运行代码检查。.pylintrc: Pylint 代码风格检查工具的配置文件。.readthedocs.yaml: Read the Docs 文档构建配置。CHANGES.rst: 项目的变更日志。CODE_OF_CONDUCT.md: 行为准则文档。Dockerfile: Docker 镜像构建文件,用于创建 Qlib 运行环境。LICENSE: 项目的开源许可证。MANIFEST.in: Python 打包时包含非 Python 文件的配置。Makefile: 用于自动化构建、测试等任务的脚本。README.md: 项目的介绍和快速入门指南。SECURITY.md: 安全策略和漏洞报告指南。build_docker_image.sh: 构建 Docker 镜像的 Shell 脚本。pyproject.toml: Python 项目的元数据和构建配置(PEP 518)。setup.py: Python 包的安装脚本。
顶级目录整体概述
.github/: 包含 GitHub Actions 工作流、Issue 模板、Pull Request 模板等。ISSUE_TEMPLATE/: 各种 Issue 模板。workflows/: GitHub Actions 自动化工作流定义。
docs/: 项目的文档目录,使用 Sphinx 构建。FAQ/: 常见问题解答。_static/: 静态文件,如图片、脚本等。img/: 包含文档中使用的各种图片,如框架图、分析图表、Logo 等。
advanced/: 高级主题文档,如 PIT、Alpha、序列化、服务器、任务管理等。changelog/: 变更日志文档。component/: Qlib 各个组件的详细文档,如数据、高频、元数据、模型、在线、记录器、报告、强化学习、策略、工作流等。developer/: 开发者指南,如代码标准、开发指南、如何构建镜像等。hidden/: 隐藏的文档,可能包含一些内部或不常用的内容。introduction/: 项目介绍和快速入门。reference/: API 参考文档。start/: 入门指南,如数据获取、初始化、安装、集成等。
examples/: 包含 Qlib 的各种使用示例和基准测试。benchmarks/: 各种模型的基准测试示例,如 ADARNN, ADD, ALSTM, CatBoost, DoubleEnsemble, GATs, GRU, HIST, IGMTF, KRNN, LSTM, LightGBM, Linear, Localformer, MLP, SFM, Sandwich, TCN, TCTS, TFT, TRA, TabNet, Transformer, XGBoost 等,每个模型目录下通常包含README.md,requirements.txt和workflow_config_*.yaml文件。benchmarks_dynamic/: 动态基准测试示例。data_demo/: 数据相关的演示示例。highfreq/: 高频交易相关的示例。hyperparameter/: 超参数优化示例。model_interpreter/: 模型解释器示例。model_rolling/: 模型滚动训练示例。nested_decision_execution/: 嵌套决策执行示例。online_srv/: 在线服务示例。orderbook_data/: 订单簿数据处理示例。portfolio/: 投资组合管理示例。rl/: 强化学习示例。rl_order_execution/: 强化学习订单执行示例。rolling_process_data/: 滚动数据处理示例。run_all_model.py: 运行所有模型的脚本。tutorial/: 教程示例。workflow_by_code.ipynb: 通过代码定义工作流的 Jupyter Notebook 示例。workflow_by_code.py: 通过代码定义工作流的 Python 脚本示例。
qlib/: Qlib 框架的核心源代码目录。__init__.py: Python 包初始化文件。backtest/: 回测模块,包含账户、回测引擎、决策、交易所、执行器、高性能数据结构、持仓、利润归因、报告、信号、工具等。config.py: 配置相关文件。constant.py: 常量定义。contrib/: 贡献模块,包含数据、评估、模型、在线、操作、报告、滚动、策略、PyTorch 相关、调优器、工作流等。data/: 数据管理模块,包含数据源、缓存、客户端、数据集、过滤器、指令处理器、操作、PIT、存储等。log.py: 日志模块。model/: 模型模块(具体内容未展开)。rl/: 强化学习模块(具体内容未展开)。run/: 运行模块(具体内容未展开)。strategy/: 策略模块(具体内容未展开)。tests/: 单元测试和集成测试。typehint.py: 类型提示定义。utils/: 工具函数和实用程序。workflow/: 工作流模块。
scripts/: 包含一些辅助脚本。get_data.py: 获取数据的脚本。
tests/: 项目的测试文件。
顶级目录细分(每看一部分就会更新)
.github/: 包含 GitHub Actions 工作流、Issue 模板、Pull Request 模板等。ISSUE_TEMPLATE/: 各种 Issue 模板,如bug-report.md(Bug 报告),documentation.md(文档问题),feature-request.md(功能请求),question.md(问题咨询)。PULL_REQUEST_TEMPLATE.md: Pull Request 模板。brew_install.sh: Homebrew 安装脚本。labeler.yml: 自动标签配置。release-drafter.yml: 发布草稿自动化配置。workflows/: GitHub Actions 自动化工作流定义。labeler.yml: 自动标签工作流。python-publish.yml: Python 包发布工作流。release-drafter.yml: 发布草稿工作流。stale.yml: 处理不活跃 Issue 和 PR 的工作流。test_qlib_from_pip.yml: 从 PyPI 安装 Qlib 后进行测试的工作流。test_qlib_from_source.yml: 从源代码构建 Qlib 后进行测试的工作流。test_qlib_from_source_slow.yml: 慢速测试工作流。
docs/: 项目的文档目录,使用 Sphinx 构建。FAQ/: 常见问题解答。FAQ.rst: 常见问题解答的 reStructuredText 文件。
Makefile: 文档构建的 Makefile。_static/: 静态文件,如图片、脚本等。demo.sh: 演示脚本。img/: 包含文档中使用的各种图片。QlibRL_framework.png: Qlib 强化学习框架图。RL_framework.png: 强化学习框架图。Task-Gen-Recorder-Collector.svg: 任务生成、记录、收集流程图。analysis/: 分析报告相关的图片。analysis_model_IC.png: 模型 IC 分析图。analysis_model_NDQ.png: 模型 NDQ 分析图。analysis_model_auto_correlation.png: 模型自相关分析图。analysis_model_cumulative_return.png: 模型累计收益分析图。analysis_model_long_short.png: 模型多空分析图。analysis_model_monthly_IC.png: 模型月度 IC 分析图。cumulative_return_buy.png: 买入累计收益图。cumulative_return_buy_minus_sell.png: 买入减卖出累计收益图。cumulative_return_hold.png: 持有累计收益图。cumulative_return_sell.png: 卖出累计收益图。rank_label_buy.png: 排名标签买入图。rank_label_hold.png: 排名标签持有图。rank_label_sell.png: 排名标签卖出图。report.png: 报告示例图。risk_analysis_annualized_return.png: 风险分析年化收益图。risk_analysis_bar.png: 风险分析柱状图。risk_analysis_information_ratio.png: 风险分析信息比率图。risk_analysis_max_drawdown.png: 风险分析最大回撤图。risk_analysis_std.png: 风险分析标准差图。score_ic.png: IC 分数图。
change doc.gif: 文档修改 GIF 动画。framework-abstract.jpg: 框架抽象图。framework.png: 框架图。framework.svg: 框架 SVG 图。logo/: Qlib 的 Logo 图片。1.png,2.png,3.png: 不同版本的 Logo。white_bg_rec+word.png: 白色背景带文字 Logo。yel_bg_rec+word.png: 黄色背景带文字 Logo。yellow_bg_rec+word .png: 黄色背景带文字 Logo (可能为重复或不同版本)。yellow_bg_rec.png: 黄色背景 Logo。
online_serving.png: 在线服务图。qrcode/: 二维码图片。gitter_qr.png: Gitter 社区二维码。
rdagent_logo.png: RD Agent Logo。topk_drop.png: Top-K 丢弃图。
advanced/: 高级主题文档。PIT.rst: PIT (Point-in-Time) 数据处理文档。alpha.rst: Alpha 因子文档。serial.rst: 序列化文档。server.rst: 服务器相关文档。task_management.rst: 任务管理文档。
changelog/: 变更日志文档。changelog.rst: 变更日志的 reStructuredText 文件。
component/: Qlib 各个组件的详细文档。data.rst: 数据组件文档。highfreq.rst: 高频组件文档。meta.rst: 元数据组件文档。model.rst: 模型组件文档。online.rst: 在线组件文档。recorder.rst: 记录器组件文档。report.rst: 报告组件文档。rl/: 强化学习组件文档。framework.rst: 强化学习框架文档。guidance.rst: 强化学习指南文档。overall.rst: 强化学习概述文档。quickstart.rst: 强化学习快速入门文档。toctree.rst: 强化学习目录树。
strategy.rst: 策略组件文档。workflow.rst: 工作流组件文档。
conf.py: Sphinx 文档的配置文件。developer/: 开发者指南。code_standard_and_dev_guide.rst: 代码标准和开发指南。how_to_build_image.rst: 如何构建镜像的文档。
hidden/: 隐藏的文档。client.rst: 客户端文档。online.rst: 在线文档。tuner.rst: 调优器文档。
index.rst: 文档主页。introduction/: 项目介绍。introduction.rst: 项目介绍文档。quick.rst: 快速入门文档。
make.bat: Windows 下文档构建的批处理文件。reference/: API 参考文档。api.rst: API 参考的 reStructuredText 文件。
requirements.txt: 文档构建所需的 Python 依赖。start/: 入门指南。getdata.rst: 获取数据文档。initialization.rst: 初始化文档。installation.rst: 安装文档。integration.rst: 集成文档。
examples/: 包含 Qlib 的各种使用示例和基准测试。README.md: 示例目录的说明。benchmarks/: 各种模型的基准测试示例。ADARNN/: ADARNN 模型的示例。README.md: ADARNN 模型的说明。requirements.txt: ADARNN 模型的依赖。workflow_config_adarnn_Alpha360.yaml: ADARNN 模型的 Alpha360 工作流配置。
ADD/: ADD 模型的示例。README.md: ADD 模型的说明。requirements.txt: ADD 模型的依赖。workflow_config_add_Alpha360.yaml: ADD 模型的 Alpha360 工作流配置。
ALSTM/: ALSTM 模型的示例。README.md: ALSTM 模型的说明。requirements.txt: ALSTM 模型的依赖。workflow_config_alstm_Alpha158.yaml: ALSTM 模型的 Alpha158 工作流配置。workflow_config_alstm_Alpha360.yaml: ALSTM 模型的 Alpha360 工作流配置。
CatBoost/: CatBoost 模型的示例。README.md: CatBoost 模型的说明。requirements.txt: CatBoost 模型的依赖。workflow_config_catboost_Alpha158.yaml: CatBoost 模型的 Alpha158 工作流配置。workflow_config_catboost_Alpha158_csi500.yaml: CatBoost 模型的 Alpha158 CSI500 工作流配置。workflow_config_catboost_Alpha360.yaml: CatBoost 模型的 Alpha360 工作流配置。workflow_config_catboost_Alpha360_csi500.yaml: CatBoost 模型的 Alpha360 CSI500 工作流配置。
DoubleEnsemble/: DoubleEnsemble 模型的示例。README.md: DoubleEnsemble 模型的说明。requirements.txt: DoubleEnsemble 模型的依赖。workflow_config_doubleensemble_Alpha158.yaml: DoubleEnsemble 模型的 Alpha158 工作流配置。workflow_config_doubleensemble_Alpha158_csi500.yaml: DoubleEnsemble 模型的 Alpha158 CSI500 工作流配置。workflow_config_doubleensemble_Alpha360.yaml: DoubleEnsemble 模型的 Alpha360 工作流配置。workflow_config_doubleensemble_Alpha360_csi500.yaml: DoubleEnsemble 模型的 Alpha360 CSI500 工作流配置。workflow_config_doubleensemble_early_stop_Alpha158.yaml: DoubleEnsemble 模型的早期停止 Alpha158 工作流配置。
GATs/: GATs 模型的示例。README.md: GATs 模型的说明。requirements.txt: GATs 模型的依赖。workflow_config_gats_Alpha158.yaml: GATs 模型的 Alpha158 工作流配置。workflow_config_gats_Alpha360.yaml: GATs 模型的 Alpha360 工作流配置。
GRU/: GRU 模型的示例。README.md: GRU 模型的说明。csi300_gru_ts.pkl: CSI300 GRU 时间序列数据。model_gru_csi300.pkl: CSI300 GRU 模型文件。requirements.txt: GRU 模型的依赖。workflow_config_gru_Alpha158.yaml: GRU 模型的 Alpha158 工作流配置。workflow_config_gru_Alpha360.yaml: GRU 模型的 Alpha360 工作流配置。
GeneralPtNN/: GeneralPtNN 模型的示例。README.md: GeneralPtNN 模型的说明。workflow_config_gru.yaml: GRU 工作流配置。workflow_config_gru2mlp.yaml: GRU2MLP 工作流配置。workflow_config_mlp.yaml: MLP 工作流配置。
HIST/: HIST 模型的示例。README.md: HIST 模型的说明。qlib_csi300_stock_index.npy: Qlib CSI300 股票指数数据。requirements.txt: HIST 模型的依赖。workflow_config_hist_Alpha360.yaml: HIST 模型的 Alpha360 工作流配置。
IGMTF/: IGMTF 模型的示例。README.md: IGMTF 模型的说明。requirements.txt: IGMTF 模型的依赖。workflow_config_igmtf_Alpha360.yaml: IGMTF 模型的 Alpha360 工作流配置。
KRNN/: KRNN 模型的示例。README.md: KRNN 模型的说明。requirements.txt: KRNN 模型的依赖。workflow_config_krnn_Alpha360.yaml: KRNN 模型的 Alpha360 工作流配置。
LSTM/: LSTM 模型的示例。README.md: LSTM 模型的说明。csi300_lstm_ts.pkl: CSI300 LSTM 时间序列数据。model_lstm_csi300.pkl: CSI300 LSTM 模型文件。requirements.txt: LSTM 模型的依赖。workflow_config_lstm_Alpha158.yaml: LSTM 模型的 Alpha158 工作流配置。workflow_config_lstm_Alpha360.yaml: LSTM 模型的 Alpha360 工作流配置。
LightGBM/: LightGBM 模型的示例。README.md: LightGBM 模型的说明。features_resample_N.py: 特征重采样脚本。features_sample.py: 特征采样脚本。multi_freq_handler.py: 多频率数据处理器。requirements.txt: LightGBM 模型的依赖。workflow_config_lightgbm_Alpha158.yaml: LightGBM 模型的 Alpha158 工作流配置。workflow_config_lightgbm_Alpha158_csi500.yaml: LightGBM 模型的 Alpha158 CSI500 工作流配置。workflow_config_lightgbm_Alpha158_multi_freq.yaml: LightGBM 模型的 Alpha158 多频率工作流配置。workflow_config_lightgbm_Alpha360.yaml: LightGBM 模型的 Alpha360 工作流配置。workflow_config_lightgbm_Alpha360_csi500.yaml: LightGBM 模型的 Alpha360 CSI500 工作流配置。workflow_config_lightgbm_configurable_dataset.yaml: LightGBM 模型的自定义数据集工作流配置。workflow_config_lightgbm_multi_freq.yaml: LightGBM 模型的多频率工作流配置。
Linear/: 线性模型的示例。Localformer/: Localformer 模型的示例。MLP/: MLP 模型的示例。SFM/: SFM 模型的示例。Sandwich/: Sandwich 模型的示例。TCN/: TCN 模型的示例。TCTS/: TCTS 模型的示例。TFT/: TFT 模型的示例。TRA/: TRA 模型的示例。TabNet/: TabNet 模型的示例。Transformer/: Transformer 模型的示例。XGBoost/: XGBoost 模型的示例。
benchmarks_dynamic/: 动态基准测试示例。DDG-DA/: DDG-DA 模型的示例。README.md: 动态基准测试的说明。baseline/: 基线模型示例。
data_demo/: 数据相关的演示示例。README.md: 数据演示的说明。data_cache_demo.py: 数据缓存演示脚本。data_mem_resuse_demo.py: 数据内存复用演示脚本。
highfreq/: 高频交易相关的示例。README.md: 高频交易示例的说明。highfreq_handler.py: 高频数据处理器。highfreq_ops.py: 高频操作。highfreq_processor.py: 高频处理器。workflow.py: 高频交易工作流脚本。workflow_config_High_Freq_Tree_Alpha158.yaml: 高频树 Alpha158 工作流配置。
hyperparameter/: 超参数优化示例。LightGBM/: LightGBM 超参数优化示例。
model_interpreter/: 模型解释器示例。feature.py: 特征解释脚本。
model_rolling/: 模型滚动训练示例。requirements.txt: 滚动训练的依赖。task_manager_rolling.py: 滚动任务管理器。
nested_decision_execution/: 嵌套决策执行示例。README.md: 嵌套决策执行的说明。workflow.py: 嵌套决策执行工作流脚本。
online_srv/: 在线服务示例。online_management_simulate.py: 在线管理模拟脚本。rolling_online_management.py: 滚动在线管理脚本。update_online_pred.py: 更新在线预测脚本。
orderbook_data/: 订单簿数据处理示例。README.md: 订单簿数据示例的说明。create_dataset.py: 创建数据集脚本。example.py: 订单簿数据示例脚本。
portfolio/: 投资组合管理示例。README.md: 投资组合示例的说明。config_enhanced_indexing.yaml: 增强索引配置。prepare_riskdata.py: 准备风险数据脚本。
rl/: 强化学习示例。simple_example.ipynb: 简单强化学习示例 Jupyter Notebook。
rl_order_execution/: 强化学习订单执行示例。README.md: 强化学习订单执行的说明。exp_configs/: 实验配置。scripts/: 脚本。
rolling_process_data/: 滚动数据处理示例。README.md: 滚动数据处理的说明。rolling_handler.py: 滚动数据处理器。workflow.py: 滚动数据处理工作流脚本。
run_all_model.py: 运行所有模型的脚本。tutorial/: 教程示例。detailed_workflow.ipynb: 详细工作流 Jupyter Notebook。
workflow_by_code.ipynb: 通过代码定义工作流的 Jupyter Notebook 示例。workflow_by_code.py: 通过代码定义工作流的 Python 脚本示例。
qlib/: Qlib 框架的核心源代码目录。__init__.py: Python 包初始化文件。backtest/: 回测模块,包含账户、回测引擎、决策、交易所、执行器、高性能数据结构、持仓、利润归因、报告、信号、工具等。__init__.py: 回测模块初始化文件。account.py: 账户管理。backtest.py: 回测核心逻辑。decision.py: 决策逻辑。exchange.py: 交易所模拟。executor.py: 订单执行器。high_performance_ds.py: 高性能数据结构。position.py: 持仓管理。profit_attribution.py: 利润归因。report.py: 回测报告生成。signal.py: 信号处理。utils.py: 回测工具函数。
config.py: 配置相关文件。constant.py: 常量定义。contrib/: 贡献模块,包含数据、评估、模型、在线、操作、报告、滚动、策略、PyTorch 相关、调优器、工作流等。__init__.py: 贡献模块初始化文件。data/: 贡献数据相关。eva/: 贡献评估相关。evaluate.py: 评估脚本。evaluate_portfolio.py: 投资组合评估脚本。meta/: 贡献元数据相关。model/: 贡献模型相关。online/: 贡献在线相关。ops/: 贡献操作相关。report/: 贡献报告相关。rolling/: 贡献滚动相关。strategy/: 贡献策略相关。torch.py: PyTorch 相关工具。tuner/: 贡献调优器相关。workflow/: 贡献工作流相关。
data/: 数据管理模块,包含数据源、缓存、客户端、数据集、过滤器、指令处理器、操作、PIT、存储等。__init__.py: 数据模块初始化文件。_libs/: 内部库。base.py: 数据基类。cache.py: 数据缓存。client.py: 数据客户端。data.py: 数据核心逻辑。dataset/: 数据集。filter.py: 数据过滤器。inst_processor.py: 指令处理器。ops.py: 数据操作。pit.py: PIT (Point-in-Time) 数据处理。storage/: 数据存储。
log.py: 日志模块。model/: 模型模块,包含各种机器学习和深度学习模型实现。rl/: 强化学习模块,包含强化学习环境和算法实现。run/: 运行模块,用于执行 Qlib 任务。strategy/: 策略模块,包含各种交易策略实现。tests/: 单元测试和集成测试。typehint.py: 类型提示定义。utils/: 工具函数和实用程序。workflow/: 工作流模块,用于定义和执行复杂的任务流程。
scripts/: 包含一些辅助脚本。get_data.py: 获取数据的脚本。
tests/: 项目的测试文件。
Qlib项目文件结构与使用示例概览
4094

被折叠的 条评论
为什么被折叠?



