gitextract_o4krgpl4/ ├── .commitlintrc.js ├── .deepsource.toml ├── .dockerignore ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report.md │ │ ├── documentation.md │ │ ├── feature-request.md │ │ └── question.md │ ├── PULL_REQUEST_TEMPLATE.md │ ├── brew_install.sh │ ├── release-drafter.yml │ └── workflows/ │ ├── lint_title.yml │ ├── release.yml │ ├── stale.yml │ ├── test_qlib_from_pip.yml │ ├── test_qlib_from_source.yml │ └── test_qlib_from_source_slow.yml ├── .gitignore ├── .mypy.ini ├── .pre-commit-config.yaml ├── .pylintrc ├── .readthedocs.yaml ├── CHANGELOG.md ├── CHANGES.rst ├── CODE_OF_CONDUCT.md ├── Dockerfile ├── LICENSE ├── MANIFEST.in ├── Makefile ├── README.md ├── SECURITY.md ├── build_docker_image.sh ├── docs/ │ ├── FAQ/ │ │ └── FAQ.rst │ ├── Makefile │ ├── _static/ │ │ └── demo.sh │ ├── advanced/ │ │ ├── PIT.rst │ │ ├── alpha.rst │ │ ├── serial.rst │ │ ├── server.rst │ │ └── task_management.rst │ ├── changelog/ │ │ └── changelog.rst │ ├── component/ │ │ ├── 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 │ ├── 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 │ ├── reference/ │ │ └── api.rst │ ├── requirements.txt │ └── start/ │ ├── getdata.rst │ ├── initialization.rst │ ├── installation.rst │ └── integration.rst ├── examples/ │ ├── README.md │ ├── benchmarks/ │ │ ├── ADARNN/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_adarnn_Alpha360.yaml │ │ ├── ADD/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_add_Alpha360.yaml │ │ ├── ALSTM/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_alstm_Alpha158.yaml │ │ │ └── workflow_config_alstm_Alpha360.yaml │ │ ├── CatBoost/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_catboost_Alpha158.yaml │ │ │ ├── workflow_config_catboost_Alpha158_csi500.yaml │ │ │ ├── workflow_config_catboost_Alpha360.yaml │ │ │ └── workflow_config_catboost_Alpha360_csi500.yaml │ │ ├── DoubleEnsemble/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_doubleensemble_Alpha158.yaml │ │ │ ├── workflow_config_doubleensemble_Alpha158_csi500.yaml │ │ │ ├── workflow_config_doubleensemble_Alpha360.yaml │ │ │ ├── workflow_config_doubleensemble_Alpha360_csi500.yaml │ │ │ └── workflow_config_doubleensemble_early_stop_Alpha158.yaml │ │ ├── GATs/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_gats_Alpha158.yaml │ │ │ └── workflow_config_gats_Alpha360.yaml │ │ ├── GRU/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_gru_Alpha158.yaml │ │ │ └── workflow_config_gru_Alpha360.yaml │ │ ├── GeneralPtNN/ │ │ │ ├── README.md │ │ │ ├── workflow_config_gru.yaml │ │ │ ├── workflow_config_gru2mlp.yaml │ │ │ └── workflow_config_mlp.yaml │ │ ├── HIST/ │ │ │ ├── README.md │ │ │ ├── qlib_csi300_stock_index.npy │ │ │ ├── requirements.txt │ │ │ └── workflow_config_hist_Alpha360.yaml │ │ ├── IGMTF/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_igmtf_Alpha360.yaml │ │ ├── KRNN/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_krnn_Alpha360.yaml │ │ ├── LSTM/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_lstm_Alpha158.yaml │ │ │ └── workflow_config_lstm_Alpha360.yaml │ │ ├── LightGBM/ │ │ │ ├── README.md │ │ │ ├── features_resample_N.py │ │ │ ├── features_sample.py │ │ │ ├── multi_freq_handler.py │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_lightgbm_Alpha158.yaml │ │ │ ├── workflow_config_lightgbm_Alpha158_csi500.yaml │ │ │ ├── workflow_config_lightgbm_Alpha158_multi_freq.yaml │ │ │ ├── workflow_config_lightgbm_Alpha360.yaml │ │ │ ├── workflow_config_lightgbm_Alpha360_csi500.yaml │ │ │ ├── workflow_config_lightgbm_configurable_dataset.yaml │ │ │ └── workflow_config_lightgbm_multi_freq.yaml │ │ ├── Linear/ │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_linear_Alpha158.yaml │ │ │ ├── workflow_config_linear_Alpha158_csi500.yaml │ │ │ └── workflow_config_linear_Alpha158_multi_pass_bt.yaml │ │ ├── Localformer/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_localformer_Alpha158.yaml │ │ │ └── workflow_config_localformer_Alpha360.yaml │ │ ├── MLP/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_mlp_Alpha158.yaml │ │ │ ├── workflow_config_mlp_Alpha158_csi500.yaml │ │ │ ├── workflow_config_mlp_Alpha360.yaml │ │ │ └── workflow_config_mlp_Alpha360_csi500.yaml │ │ ├── README.md │ │ ├── SFM/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_sfm_Alpha360.yaml │ │ ├── Sandwich/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_sandwich_Alpha360.yaml │ │ ├── TCN/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_tcn_Alpha158.yaml │ │ │ └── workflow_config_tcn_Alpha360.yaml │ │ ├── TCTS/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ └── workflow_config_tcts_Alpha360.yaml │ │ ├── TFT/ │ │ │ ├── README.md │ │ │ ├── data_formatters/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ └── qlib_Alpha158.py │ │ │ ├── expt_settings/ │ │ │ │ ├── __init__.py │ │ │ │ └── configs.py │ │ │ ├── libs/ │ │ │ │ ├── __init__.py │ │ │ │ ├── hyperparam_opt.py │ │ │ │ ├── tft_model.py │ │ │ │ └── utils.py │ │ │ ├── requirements.txt │ │ │ ├── tft.py │ │ │ └── workflow_config_tft_Alpha158.yaml │ │ ├── TRA/ │ │ │ ├── README.md │ │ │ ├── configs/ │ │ │ │ ├── config_alstm.yaml │ │ │ │ ├── config_alstm_tra.yaml │ │ │ │ ├── config_alstm_tra_init.yaml │ │ │ │ ├── config_transformer.yaml │ │ │ │ ├── config_transformer_tra.yaml │ │ │ │ └── config_transformer_tra_init.yaml │ │ │ ├── data/ │ │ │ │ └── README.md │ │ │ ├── example.py │ │ │ ├── requirements.txt │ │ │ ├── run.sh │ │ │ ├── src/ │ │ │ │ ├── dataset.py │ │ │ │ └── model.py │ │ │ ├── workflow_config_tra_Alpha158.yaml │ │ │ ├── workflow_config_tra_Alpha158_full.yaml │ │ │ └── workflow_config_tra_Alpha360.yaml │ │ ├── TabNet/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_TabNet_Alpha158.yaml │ │ │ └── workflow_config_TabNet_Alpha360.yaml │ │ ├── Transformer/ │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── workflow_config_transformer_Alpha158.yaml │ │ │ └── workflow_config_transformer_Alpha360.yaml │ │ └── XGBoost/ │ │ ├── README.md │ │ ├── requirements.txt │ │ ├── workflow_config_xgboost_Alpha158.yaml │ │ └── workflow_config_xgboost_Alpha360.yaml │ ├── benchmarks_dynamic/ │ │ ├── DDG-DA/ │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── requirements.txt │ │ │ ├── vis_data.py │ │ │ └── workflow.py │ │ ├── README.md │ │ └── baseline/ │ │ ├── README.md │ │ ├── rolling_benchmark.py │ │ ├── workflow_config_lightgbm_Alpha158.yaml │ │ └── workflow_config_linear_Alpha158.yaml │ ├── 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 │ ├── hyperparameter/ │ │ └── LightGBM/ │ │ ├── Readme.md │ │ ├── hyperparameter_158.py │ │ ├── hyperparameter_360.py │ │ └── requirements.txt │ ├── 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_order_execution/ │ │ ├── README.md │ │ ├── exp_configs/ │ │ │ ├── backtest_opds.yml │ │ │ ├── backtest_ppo.yml │ │ │ ├── backtest_twap.yml │ │ │ ├── train_opds.yml │ │ │ └── train_ppo.yml │ │ └── scripts/ │ │ ├── gen_pickle_data.py │ │ ├── gen_training_orders.py │ │ ├── merge_orders.py │ │ └── pickle_data_config.yml │ ├── rolling_process_data/ │ │ ├── README.md │ │ ├── rolling_handler.py │ │ └── workflow.py │ ├── run_all_model.py │ └── workflow_by_code.py ├── pyproject.toml ├── qlib/ │ ├── __init__.py │ ├── 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 │ ├── cli/ │ │ ├── __init__.py │ │ ├── data.py │ │ └── run.py │ ├── config.py │ ├── constant.py │ ├── contrib/ │ │ ├── __init__.py │ │ ├── data/ │ │ │ ├── __init__.py │ │ │ ├── data.py │ │ │ ├── dataset.py │ │ │ ├── handler.py │ │ │ ├── highfreq_handler.py │ │ │ ├── highfreq_processor.py │ │ │ ├── highfreq_provider.py │ │ │ ├── loader.py │ │ │ ├── processor.py │ │ │ └── utils/ │ │ │ ├── __init__.py │ │ │ └── sepdf.py │ │ ├── eva/ │ │ │ ├── __init__.py │ │ │ └── alpha.py │ │ ├── evaluate.py │ │ ├── evaluate_portfolio.py │ │ ├── meta/ │ │ │ ├── __init__.py │ │ │ └── data_selection/ │ │ │ ├── __init__.py │ │ │ ├── dataset.py │ │ │ ├── model.py │ │ │ ├── net.py │ │ │ └── utils.py │ │ ├── model/ │ │ │ ├── __init__.py │ │ │ ├── catboost_model.py │ │ │ ├── double_ensemble.py │ │ │ ├── gbdt.py │ │ │ ├── highfreq_gdbt_model.py │ │ │ ├── linear.py │ │ │ ├── pytorch_adarnn.py │ │ │ ├── pytorch_add.py │ │ │ ├── pytorch_alstm.py │ │ │ ├── pytorch_alstm_ts.py │ │ │ ├── pytorch_gats.py │ │ │ ├── pytorch_gats_ts.py │ │ │ ├── pytorch_general_nn.py │ │ │ ├── pytorch_gru.py │ │ │ ├── pytorch_gru_ts.py │ │ │ ├── pytorch_hist.py │ │ │ ├── pytorch_igmtf.py │ │ │ ├── pytorch_krnn.py │ │ │ ├── pytorch_localformer.py │ │ │ ├── pytorch_localformer_ts.py │ │ │ ├── pytorch_lstm.py │ │ │ ├── pytorch_lstm_ts.py │ │ │ ├── pytorch_nn.py │ │ │ ├── pytorch_sandwich.py │ │ │ ├── pytorch_sfm.py │ │ │ ├── pytorch_tabnet.py │ │ │ ├── pytorch_tcn.py │ │ │ ├── pytorch_tcn_ts.py │ │ │ ├── pytorch_tcts.py │ │ │ ├── pytorch_tra.py │ │ │ ├── pytorch_transformer.py │ │ │ ├── pytorch_transformer_ts.py │ │ │ ├── pytorch_utils.py │ │ │ ├── tcn.py │ │ │ └── xgboost.py │ │ ├── online/ │ │ │ ├── __init__.py │ │ │ ├── manager.py │ │ │ ├── online_model.py │ │ │ ├── operator.py │ │ │ ├── user.py │ │ │ └── utils.py │ │ ├── ops/ │ │ │ ├── __init__.py │ │ │ └── high_freq.py │ │ ├── report/ │ │ │ ├── __init__.py │ │ │ ├── analysis_model/ │ │ │ │ ├── __init__.py │ │ │ │ └── analysis_model_performance.py │ │ │ ├── analysis_position/ │ │ │ │ ├── __init__.py │ │ │ │ ├── cumulative_return.py │ │ │ │ ├── parse_position.py │ │ │ │ ├── rank_label.py │ │ │ │ ├── report.py │ │ │ │ ├── risk_analysis.py │ │ │ │ └── score_ic.py │ │ │ ├── data/ │ │ │ │ ├── __init__.py │ │ │ │ ├── ana.py │ │ │ │ └── base.py │ │ │ ├── graph.py │ │ │ └── utils.py │ │ ├── rolling/ │ │ │ ├── __init__.py │ │ │ ├── __main__.py │ │ │ ├── base.py │ │ │ └── ddgda.py │ │ ├── strategy/ │ │ │ ├── __init__.py │ │ │ ├── cost_control.py │ │ │ ├── optimizer/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── enhanced_indexing.py │ │ │ │ └── optimizer.py │ │ │ ├── order_generator.py │ │ │ ├── rule_strategy.py │ │ │ └── signal_strategy.py │ │ ├── torch.py │ │ ├── tuner/ │ │ │ ├── __init__.py │ │ │ ├── config.py │ │ │ ├── launcher.py │ │ │ ├── pipeline.py │ │ │ ├── space.py │ │ │ └── tuner.py │ │ └── workflow/ │ │ ├── __init__.py │ │ └── record_temp.py │ ├── data/ │ │ ├── __init__.py │ │ ├── _libs/ │ │ │ ├── __init__.py │ │ │ ├── expanding.pyx │ │ │ └── rolling.pyx │ │ ├── base.py │ │ ├── cache.py │ │ ├── client.py │ │ ├── data.py │ │ ├── dataset/ │ │ │ ├── __init__.py │ │ │ ├── handler.py │ │ │ ├── loader.py │ │ │ ├── processor.py │ │ │ ├── storage.py │ │ │ ├── utils.py │ │ │ └── weight.py │ │ ├── filter.py │ │ ├── inst_processor.py │ │ ├── ops.py │ │ ├── pit.py │ │ └── storage/ │ │ ├── __init__.py │ │ ├── file_storage.py │ │ └── storage.py │ ├── log.py │ ├── model/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── ens/ │ │ │ ├── __init__.py │ │ │ ├── ensemble.py │ │ │ └── group.py │ │ ├── interpret/ │ │ │ ├── __init__.py │ │ │ └── base.py │ │ ├── meta/ │ │ │ ├── __init__.py │ │ │ ├── dataset.py │ │ │ ├── model.py │ │ │ └── task.py │ │ ├── riskmodel/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── poet.py │ │ │ ├── shrink.py │ │ │ └── structured.py │ │ ├── trainer.py │ │ └── utils.py │ ├── rl/ │ │ ├── __init__.py │ │ ├── aux_info.py │ │ ├── contrib/ │ │ │ ├── __init__.py │ │ │ ├── backtest.py │ │ │ ├── naive_config_parser.py │ │ │ ├── train_onpolicy.py │ │ │ └── utils.py │ │ ├── data/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── integration.py │ │ │ ├── native.py │ │ │ └── pickle_styled.py │ │ ├── interpreter.py │ │ ├── order_execution/ │ │ │ ├── __init__.py │ │ │ ├── interpreter.py │ │ │ ├── network.py │ │ │ ├── policy.py │ │ │ ├── reward.py │ │ │ ├── simulator_qlib.py │ │ │ ├── simulator_simple.py │ │ │ ├── state.py │ │ │ ├── strategy.py │ │ │ └── utils.py │ │ ├── reward.py │ │ ├── seed.py │ │ ├── simulator.py │ │ ├── strategy/ │ │ │ ├── __init__.py │ │ │ └── single_order.py │ │ ├── trainer/ │ │ │ ├── __init__.py │ │ │ ├── api.py │ │ │ ├── callbacks.py │ │ │ ├── trainer.py │ │ │ └── vessel.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── data_queue.py │ │ ├── env_wrapper.py │ │ ├── finite_env.py │ │ └── log.py │ ├── strategy/ │ │ ├── __init__.py │ │ └── base.py │ ├── tests/ │ │ ├── __init__.py │ │ ├── config.py │ │ └── data.py │ ├── typehint.py │ ├── utils/ │ │ ├── __init__.py │ │ ├── data.py │ │ ├── exceptions.py │ │ ├── file.py │ │ ├── index_data.py │ │ ├── mod.py │ │ ├── objm.py │ │ ├── paral.py │ │ ├── pickle_utils.py │ │ ├── resam.py │ │ ├── serial.py │ │ └── time.py │ └── workflow/ │ ├── __init__.py │ ├── exp.py │ ├── expm.py │ ├── online/ │ │ ├── __init__.py │ │ ├── manager.py │ │ ├── strategy.py │ │ ├── update.py │ │ └── utils.py │ ├── record_temp.py │ ├── recorder.py │ ├── task/ │ │ ├── __init__.py │ │ ├── collect.py │ │ ├── gen.py │ │ ├── manage.py │ │ └── utils.py │ └── utils.py ├── scripts/ │ ├── README.md │ ├── check_data_health.py │ ├── check_dump_bin.py │ ├── collect_info.py │ ├── data_collector/ │ │ ├── README.md │ │ ├── baostock_5min/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirements.txt │ │ ├── base.py │ │ ├── br_index/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirements.txt │ │ ├── cn_index/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirements.txt │ │ ├── contrib/ │ │ │ ├── fill_cn_1min_data/ │ │ │ │ ├── README.md │ │ │ │ ├── fill_cn_1min_data.py │ │ │ │ └── requirements.txt │ │ │ └── future_trading_date_collector/ │ │ │ ├── README.md │ │ │ ├── future_trading_date_collector.py │ │ │ └── requirements.txt │ │ ├── crowd_source/ │ │ │ └── README.md │ │ ├── crypto/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirement.txt │ │ ├── fund/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirements.txt │ │ ├── future_calendar_collector.py │ │ ├── index.py │ │ ├── pit/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirements.txt │ │ ├── us_index/ │ │ │ ├── README.md │ │ │ ├── collector.py │ │ │ └── requirements.txt │ │ ├── utils.py │ │ └── yahoo/ │ │ ├── README.md │ │ ├── collector.py │ │ └── requirements.txt │ ├── dump_bin.py │ ├── dump_pit.py │ └── get_data.py ├── setup.py └── tests/ ├── backtest/ │ ├── test_file_strategy.py │ ├── test_high_freq_trading.py │ ├── test_soft_topk_strategy.py │ └── test_soft_topk_strategy_cold_start.py ├── conftest.py ├── data_mid_layer_tests/ │ ├── README.md │ ├── test_dataloader.py │ ├── test_dataset.py │ ├── test_handler.py │ ├── test_handler_storage.py │ └── test_processor.py ├── dataset_tests/ │ ├── README.md │ └── test_datalayer.py ├── dependency_tests/ │ ├── README.md │ └── test_mlflow.py ├── misc/ │ ├── test_get_multi_proc.py │ ├── test_index_data.py │ ├── test_sepdf.py │ └── test_utils.py ├── model/ │ └── test_general_nn.py ├── ops/ │ ├── test_elem_operator.py │ └── test_special_ops.py ├── pytest.ini ├── rl/ │ ├── test_data_queue.py │ ├── test_finite_env.py │ ├── test_logger.py │ ├── test_qlib_simulator.py │ ├── test_saoe_simple.py │ └── test_trainer.py ├── rolling_tests/ │ └── test_update_pred.py ├── storage_tests/ │ └── test_storage.py ├── test_all_pipeline.py ├── test_contrib_model.py ├── test_contrib_workflow.py ├── test_dump_data.py ├── test_get_data.py ├── test_pit.py ├── test_register_ops.py ├── test_structured_cov_estimator.py └── test_workflow.py