# qlib changelog > qlib release notes. - Vendor: qlib - Category: AI - Official site: https://qlib.readthedocs.io/en/latest/ - Tracked by: What's New (https://whatsnew.fyi/product/qlib) - Harvested from: GitHub (microsoft/qlib) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. ## Releases ### v0.9.7 β€” v0.9.7 🌈 - Date: 2025-08-15 - Version: v0.9.7 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.7 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.7 ##### Changes ##### 🌟 Features - feat: data improve, support parquet @you-n-g (#1966) - feat: use pydantic-settings for MLflow config and update dependencies @you-n-g (#1962) - refactor: introduce BaseDataHandler and unify fetch interface @you-n-g (#1958) - Implement geometric accumulation mode for risk_analysis function @SunsetWolf (#1938) - Add util function to help automatically get horizon @chenditc (#1509) - [feat] fix a bug and adapt general_nn for use with rdagent_qlib @WinstonLiyt (#1928) - DRAFT add Data Health Checker @benheckmann (#1574) ##### πŸ› Bug Fixes - fix: upgrade the method of installing LightGBM on MacOS @SunsetWolf (#1980) - disable pylint error @SunsetWolf (#1960) - Fixing Security Vulnerabilities @SunsetWolf (#1941) - The plotly figure is empty in the code block "Basic data" @ziphei (#1902) - [fix] keep group_keys=False in Average Ensemble @lingbai-kong (#1913) - fix ci error @SunsetWolf (#1921) - Fix issue 1892 @SunsetWolf (#1916) - fix fillna bug @SunsetWolf (#1914) - fix col name error when fetch data @SunsetWolf (#1904) - fix pkl file not loading in StaticDataLoader @SunsetWolf (#1896) - Fix csi300 constituents url @SunsetWolf (#1883) - Fix the empty price_s case and self.instruments in SBBStrategyEMA. @ChiahungTai (#1677) - Bump version @SunsetWolf (#1872) ##### πŸ“š Documentation - feat: data improve, support parquet @you-n-g (#1966) - fix: typo @EmreKb (#1943) - Update README.md @you-n-g (#1940) - doc: update README.md @you-n-g (#1929) - [Fix]Update data preparation part in README.md @YeewahChan (#1924) - fixed a problem with multi index caused by the default value of groupkey @SunsetWolf (#1917) - fix bugs in the documentation @SunsetWolf (#1918) - DRAFT add Data Health Checker @benheckmann (#1574) - Update links to chenditc/investment_data to always point to latest release @codecnotsupported (#1877) - Fix broken URL for RL @SunsetWolf (#1881) - Bump version @SunsetWolf (#1872) ##### 🧹 Maintenance - fixed a problem with multi index caused by the default value of groupkey @SunsetWolf (#1917) ### v0.9.6 β€” v0.9.6 🌈 - Date: 2024-12-23 - Version: v0.9.6 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.6 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.6 ##### Changes ##### 🌟 Features - Ptnn4both datatypes and alignment tests @taozhiwang (#1827) - More dataloader example @SunsetWolf (#1823) - Nested data loader @you-n-g (#1822) - Add some misc features. @you-n-g (#1816) ##### πŸ› Bug Fixes - Fix Async Call @you-n-g (#1869) - fix duplicate log @qianyun210603 (#1661) - Fix Yahoo daily data format inconsistent @Fivele-Li (#1517) - Fix TSDataSampler Slicing Bug #1716 @YeewahChan (#1803) - fix panic during normalizing the invalid data @m3ngyang (#1698) - fix the bug that the HS_SYMBOLS_URL is 404 @zhstark (#1758) ##### πŸ“š Documentation - update python version @SunsetWolf (#1868) - Saurabh12571257/main @SunsetWolf (#1866) - add dockerfile @SunsetWolf (#1817) - Update README.md to show rdagent in qlib front page @peteryang1 (#1848) - Update README.md @shenguanjiejie (#1839) - fix break img @SunsetWolf (#1842) - Update README.md @you-n-g (#1840) - Ptnn4both datatypes and alignment tests @taozhiwang (#1827) - add a note for code standard @taozhiwang (#1814) - change weight data download url @SunsetWolf (#1812) - Fix typo @akazeakari (#1811) - fix logo display error @SunsetWolf (#1804) - Update Dev in README.md @you-n-g (#1800) ##### 🧹 Maintenance - Update publish @SunsetWolf (#1871) - Update urllib3 to fix security issue @chenditc (#1829) - Update index_data.py for datatype conversion and alignment @taozhiwang (#1813) - Fix typo datatime etc. @akazeakari (#1809) - Add "mse" metric option to ALSTM.metric_fn @raikiriww (#1810) - Update utils.py for typo @block-gpt (#1751) - changed concat of strings to f-strings and redundant type conversion … @igeni (#1767) ### v0.9.5 β€” v0.9.5 🌈 - Date: 2024-05-24 - Version: v0.9.5 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.5 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.5 ##### Changes - data_collector: cn_index: fix missing dependencies package in requirements.txt @feilongfl (#1770) - bump version @SunsetWolf (#1784) ##### πŸ› Bug Fixes - fix get data error @SunsetWolf (#1793) - Fix the bug of reading string NA as NaN in the function exists_qlib_data. @OzzyXu (#1736) ##### πŸ“š Documentation - fix get data error @SunsetWolf (#1793) - fix document @SunsetWolf (#1788) - fix docs @SunsetWolf (#1721) ##### 🧹 Maintenance - Delete redundant copy() code to speed up @playfund (#1732) - Update dump_pit.py @eltociear (#1759) - Fix issue 1729 @SunsetWolf (#1776) ### v0.9.4 β€” v0.9.4 🌈 - Date: 2024-05-07 - Version: v0.9.4 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.4 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.4 ##### Changes ##### 🌟 Features - Add exploration noise to rl training collector @chenditc (#1481) - Add multi pass portfolio analysis record @chenditc (#1546) ##### πŸ› Bug Fixes - fix the warning @Andyli1007 (#1656) ##### πŸ“š Documentation - Enhance README with LightGBM Installation Guidance for Mac M1 Users @Xisen-Wang (#1766) - download orderbook data @SunsetWolf (#1754) - add_baostock_collector @SunsetWolf (#1641) - Update data.rst @computerscienceiscool (#1679) - Update README.md @eltociear (#1637) - Update quick.rst @computerscienceiscool (#1667) - fix docs @SunsetWolf (#1618) - Improve readability of documents @Fivele-Li (#1524) - Update introduction.rst @computerscienceiscool (#1578) - Update README.md @GeneLiuXe (#1553) - Update introduction.rst @computerscienceiscool (#1579) ##### 🧹 Maintenance - update package version in requirements#1399#1400 @kimzhuan (#1521) - suppress the SettingWithCopyWarning of pandas @Fivele-Li (#1513) - Troubleshooting pip version issues in CI @Fivele-Li (#1504) - fix_pip_ci @SunsetWolf (#1608) - Bump Version & Fix CI @you-n-g (#1606) ### v0.9.3 β€” v0.9.3 🌈 - Date: 2023-07-18 - Version: v0.9.3 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.3 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.3 ##### Changes ##### 🌟 Features - Adjust rolling api @you-n-g (#1594) ##### πŸ› Bug Fixes - fix the download token check error @m3ngyang (#1577) ##### πŸ“š Documentation - Adjust rolling api @you-n-g (#1594) - Update qlibrl docs. @lwwang1995 (#1588) - Update README.md for RL @you-n-g (#1573) ##### 🧹 Maintenance - Fixed pyqlib version issue on macos @SunsetWolf (#1605) - Postpone PR stale. @you-n-g (#1591) - fix_pip_ci @SunsetWolf (#1584) ### v0.9.2 β€” v0.9.2 🌈 - Date: 2023-06-25 - Version: v0.9.2 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.2 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.2 ##### Changes ##### 🌟 Features - Update release-drafter.yml @you-n-g (#1569) - Resolve RL FIXMES @lihuoran (#1503) - Add base config in yml @Fivele-Li (#1500) - Add support for redis password @Chaoyingz (#1508) - Refine DDG-DA @you-n-g (#1472) - Order execution open source @lihuoran (#1447) - Add ipynb format check @Cadenza-Li (#1439) - RL backtest pipeline on 5-min data @lihuoran (#1417) ##### πŸ› Bug Fixes - Fix TCN model input dimension mismatch @Fivele-Li (#1520) - fix_DDG-DA_workflow_bug @Fivele-Li (#1516) - provide dtype to empty series to suppress warning; fix typo @qianyun210603 (#1449) - Specify the tianshou version to match the dev environment to avoid th… @Fivele-Li (#1502) - normpath for Windows @Fivele-Li (#1495) - [BUGFIX] potential file// url parsing error @qianyun210603 (#1475) ##### πŸ“š Documentation - change get_data url @SunsetWolf (#1558) - Update on Dynamic Benchmark @wendili-cs (#1539) - added KRNN and Sandwich models and their example results based on Alpha360 @yaxuan999 (#1414) - Fix TCN model input dimension mismatch @Fivele-Li (#1520) - Refine Qlib RL data format @lihuoran (#1480) - Refine DDG-DA @you-n-g (#1472) - Update Docs about some concepts in DataHandler @you-n-g (#1485) - fix: removed extra blank link between sections @saurabh12571257 (#1451) - Remove Outdated RL example @lihuoran (#1464) - Order execution open source @lihuoran (#1447) ##### 🧹 Maintenance - Fix CI @you-n-g (#1529) - Fix deprecated syntax in numpy @Chaoyingz (#1507) - Remove unused `DNNModelPytorch` params @hirotasoshu (#1470) - update ubuntu CI version; @Fivele-Li (#1488) - fix_pylint_w0719 @SunsetWolf (#1463) - Improve annotation & documentation for handler @you-n-g (#1312) ### v0.9.1 β€” v0.9.1 🌈 - Date: 2023-01-29 - Version: v0.9.1 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.1 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.1 ##### Changes - RL Training pipeline on 5-min data @lihuoran (#1415) - Plot enhancement @qianyun210603 (#1390) - add label to PR Automatically @SunsetWolf (#1393) - Remove Wrong Package Name @you-n-g (#1394) - The limit threshold in Taiwan stock market is also 10%. @ChiahungTai (#1391) - fix some typo in doc/comments @qianyun210603 (#1389) - optimize_yahoo_collector @SunsetWolf (#1388) ##### 🌟 Features - [BUGFIX] allow sell in limit-up case and allow buy in limit-down case in topk strategy @qianyun210603 (#1407) - fix subprocess.check_output bug @SunsetWolf (#1409) - fix_labeler_bug @SunsetWolf (#1406) - fix typo, staticmethod etc. @qianyun210603 (#1402) ##### πŸ› Bug Fixes - Fix ZScoreNorm processor bug @SunsetWolf (#1398) ##### πŸ“š Documentation - Simple RL notebook @lihuoran (#1395) - [DDG-DA] Update crowd-sourced data results @wendili-cs (#1405) - fix typo, staticmethod etc. @qianyun210603 (#1402) ### v0.9.0 β€” v0.9.0 🌈 - Date: 2022-12-09 - Version: v0.9.0 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.9.0 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.9.0 ##### Changes - Qlib data doc @chenditc (#1207) ##### 🌟 Features - Fix logging_level: make logging level specified in qlib.init applies to all loggers @qianyun210603 (#1368) - Add early stopping to double ensemble model, add example @chenditc (#1375) - Set _artifact_uri when mlflow_run is not None. @ChiahungTai (#1367) - Optimize the implementation of uri & Fix async log bug @you-n-g (#1364) - update TSDataSampler refineing the memory layout of data array to speed up NN training @peteryang1 (#1342) - Refine RL todos @lihuoran (#1332) - Don't disable existing logger when initializing qlib. @jingedawang (#1339) - Use mock data for element operator tests. @ChiahungTai (#1330) - fixed_flake8_error_in_CI @SunsetWolf (#1325) - optimize_CI @SunsetWolf (#1314) - Migrate amc4th training @lihuoran (#1316) - Add REG_US and REG_TW into test case: test_utils.py. @ChiahungTai (#1310) - RL backtest with simulator @lihuoran (#1299) - General handler for open source data preprocessing @Arthur-Null (#1302) - Migrate backtest logic from NT @lihuoran (#1263) - Qlib simulator refinement (redo of PR 1244) @lihuoran (#1262) - Add simplified download command @HyeongminMoon (#1234) - Add csi500 benchmark for MLP model. @jingedawang (#1215) - Add Linear model results on dataset=csi500 @aprilpear (#1210) - Add result of DoubleEnsemble model on csi500 @huajunzhao (#1201) - Update LightGBM alpha158 csi500 result @tecton (#1199) - Add csi500 experiment result to CatBoost @lcrun (#1197) - More time for slow test @you-n-g (#1247) - Migrate NeuTrader to Qlib RL @lihuoran (#1169) - Update handler.py to fix CI @you-n-g (#1227) - Update test_qlib_from_source_slow.yml @you-n-g (#1222) - Add data handler for order book data @Arthur-Null (#1212) - Use average weights in DoubleEnsemble. @lwwang1995 (#1205) - Be compatible with Google Colab @you-n-g (#1188) - Add a make.bat file in docs folder for Windows @bingyao (#1131) - Adding ChangeInstrument op @wan9c9 (#1005) - Add retry for git actions & Fix MacOS Segment Error @you-n-g (#1173) - Backtest Mypy @lihuoran (#1130) - Auto log uncommmitted code @you-n-g (#1167) - Qlib RL framework (stage 2) - trainer @ultmaster (#1125) - change_pitdata_source @SunsetWolf (#1171) - split_CI @SunsetWolf (#1141) - Add time limit for CI @you-n-g (#1127) ##### πŸ› Bug Fixes - Fix warning in processor.py. @ChiahungTai (#1386) - Fix RL example bug @lihuoran (#1384) - Resolve issues while running Automatic update of daily frequency data (from yahoo finance) for US region @HyeongminMoon (#1358) - Fix RL command Error @you-n-g (#1382) - Fix the Errors/Warnings when building Qlib's documentation @MaximSmolskiy (#1381) - fix csi500 end date issue @qianyun210603 (#1373) - Fixed log_param error @SunsetWolf (#1362) - Bug fix for Rank and WMA operators @qianyun210603 (#1228) - fix bug in clip_outlier in class RobustZScoreNorm(Processor) @NotF404 (#1294) - Fix Import Path Error @you-n-g (#1347) - fix position access error @lerit (#1267) - fix dump_bin @lerit (#1273) - Update cache.py @wony-zheng (#1329) - fixed_flake8_error_in_CI @SunsetWolf (#1325) - optimize_CI @SunsetWolf (#1314) - Fix `_update_dealt_order_amount` bug. @lihuoran (#1291) - Fix CI pylint bug @you-n-g (#1270) - fix_yahoo_collector_bug @SunsetWolf (#1257) - fixes #1187 error "Please install necessary libs for CatBoostModel." @OussCHE (#1246) - BUGFIX: remove_fields_space() function will drop Feature object field @wony-zheng (#1213) - chore: bugfix, judging system platform error on Mac @plpycoin (#1177) - fix bug on TRA dataset @HyeongminMoon (#1135) - Fix mount path bug @you-n-g (#1129) ##### πŸ“š Documentation - Fix the Errors/Warnings when building Qlib's documentation @MaximSmolskiy (#1381) - Fix typos and grammar errors in docstrings and comments @qianyun210603 (#1366) - Fix typo. @ChiahungTai (#1365) - Fix the Errors with unexpected indentation when building Qlib's documentation @MaximSmolskiy ( _[Truncated at 4000 characters β€” full notes: https://github.com/microsoft/qlib/releases/tag/v0.9.0]_ ### v0.8.6 β€” v0.8.6 🌈 - Date: 2022-06-15 - Version: v0.8.6 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.8.6 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.8.6 ##### Changes ##### 🌟 Features - Csi500 example @you-n-g (#1126) - Add log info for ensemble @you-n-g (#1113) - opt local trainer (better mem releasing) @you-n-g (#1116) - Refine backtest codes @lihuoran (#1120) - fix_pylint_for_CI @SunsetWolf (#1119) - change_datasource @SunsetWolf (#1109) - Add `.idea/` into gitignore @lihuoran (#1110) - Add `.idea/` into gitignore @lihuoran (#1108) - init_instance_by_config enhancement @you-n-g (#1103) - Qlib RL framework (stage 1) - single-asset order execution @ultmaster (#1076) - fix_issue_1060 @SunsetWolf (#1092) - add_test_pit @SunsetWolf (#1089) - fix_macos_CI @SunsetWolf (#1081) - fix SepDataFrame when we del it to empty @you-n-g (#1082) - Make sepdf more like DataFrame @you-n-g (#1080) ##### πŸ› Bug Fixes - Fix hist_ref in update.py @you-n-g (#1096) - add gym @you-n-g (#1104) - Update detailed_workflow.ipynb @ChiahungTai (#1084) - fix_issue_715 @SunsetWolf (#1070) - Fixed pandas FutureWarning @Hubedge (#1073) - Missing `f` prefix on f-strings fix @code-review-doctor (#1072) ##### πŸ“š Documentation - Fixed a few mixed Chinese punctuation typos @bingyao (#1123) - Refine backtest codes @lihuoran (#1120) - Add explanation for the evalution metrics of Qlib @you-n-g (#1090) - Qlib RL framework (stage 1) - single-asset order execution @ultmaster (#1076) - Update README.md @you-n-g (#1091) - fix_issue_1060 @SunsetWolf (#1092) - Add instructions to add models @you-n-g (#1088) - Yahoo data Docs @you-n-g (#1077) - fix_macos_CI @SunsetWolf (#1081) - Fixed typos in workflow.rst @jingedawang (#1068) ### v0.8.5 β€” v0.8.5 🌈 - Date: 2022-04-24 - Version: v0.8.5 - Original notes: https://github.com/microsoft/qlib/releases/tag/v0.8.5 - Permalink: https://whatsnew.fyi/product/qlib/releases/v0.8.5 ##### Changes - update doc for TopK-Drop @wan9c9 (#1015) - Known Limitations In Recorder @you-n-g (#999) - Fix pit docs format @Chaoyingz (#957) - Add REG_TW. @ChiahungTai (#955) ##### 🌟 Features - fast fillna @you-n-g (#1074) - fix_issue_1019 @SunsetWolf (#1046) - Change Power to a NpPairOperator @wuzhe1234 (#1052) - Use the region in qlib.config for FileCalendarStorage. @ChiahungTai (#1049) - Update test_macos.yml with test doc @Wangwuyi123 (#1055) - update ci with test doc @Wangwuyi123 (#1054) - Add the HIST and IGMTF model on Alpha360 @Wentao-Xu (#1040) - Add high-frequency feature engineering code @Arthur-Null (#1022) - Add Qlib notebook tutorial @you-n-g (#1037) - Ibovespa index support @igor17400 (#990) - Fix Chinese punctuation regex comment @Chaoyingz (#1012) - Add pre-commit @you-n-g (#992) - Support feature names contain Chinese punctuation @Chaoyingz (#1003) - Add PRef operator (#988) @Chaoyingz (#1000) - Add lightgbm min version. @ChiahungTai (#995) - Add backtest example to online simulation @you-n-g (#984) - Optimize the pit collector script @Chaoyingz (#982) - Fix pit download_data script TypeError (#978) @Chaoyingz (#979) - Skip idx.is_lexsorted() when pandas version is larger than 1.3.0. @ChiahungTai (#973) - Use callback in LGBM.train. @ChiahungTai (#974) - Remove redundant import [fix pylint] @you-n-g (#962) - feat: add instrument context to inst_processor @PalanQu (#959) - Fix csi500 @SunsetWolf (#938) - Support Point-in-time Data Operation @bxdd (#343) ##### πŸ› Bug Fixes - Fix shared DF Error @you-n-g (#1044) - fix tra dataset bug @you-n-g (#1050) - Fixed issue #943 about TCTS init_fore_model @TuozhenLiu (#1047) - chore: bug-fix for crypto data collector @plpycoin (#1038) - Update setup.py to fix doc @Wangwuyi123 (#1043) - update cli.py @wan9c9 (#1008) - Fix pit download_data script TypeError (#978) @Chaoyingz (#979) - Fix load_object bug @you-n-g (#977) - safe remove file and more friendly log @you-n-g (#967) ##### πŸ“š Documentation - Update setup.py @you-n-g (#1048) - Update README.md @qinmoelei (#1039) - Add Qlib notebook tutorial @you-n-g (#1037) - Add docs for CSRankNorm @you-n-g (#1032) - fix ddgda run all bug & pylint @you-n-g (#1031) - Fix format for PULL_REQUEST_TEMPLATE.md @Chaoyingz (#1001) - Add lightgbm min version. @ChiahungTai (#995) - Add backtest example to online simulation @you-n-g (#984) - Fix comment typo @Chaoyingz (#987) - fix-issue948 @SunsetWolf (#986) - Update report.rst Metric @you-n-g (#980) - Update Tool Info @you-n-g (#981) - Update yahooquery marked words @Wangwuyi123 (#966) - fix annotation in PIT script @bxdd (#958)