What’s New

qlib

AI

qlib release notes.

Latest v0.9.7 · by qlibWebsitemicrosoft/qlib

Changelog

v0.9.7

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 🌈

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 🌈

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 🌈

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 🌈

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 🌈

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 🌈

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 🌈

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 (#1352)
  • Fix the Warnings with duplicate object description when building Qlib's documentation @MaximSmolskiy (#1353)
  • Fix the Warnings in rst files when building Qlib's documentation @MaximSmolskiy (#1349)
  • Add docs for qlib.rl @lwwang1995 (#1322)
  • Correct errors and typos in doc strings @qianyun210603 (#1338)
  • Update README.md @wan9c9 (#1279)
  • fix:doc for search_records @lerit (#1287)
  • Fix typo @ChiahungTai (#1308)
  • Add docs for the reampling example. @you-n-g (#1285)
  • Expm typo fix add log @wan9c9 (#1271)
  • update recorder.rst fixed typo @animic (#1264)
  • Update signal_strategy.py @ChengzhenDu (#1251)
  • Refine type hint and recorder @you-n-g (#1248)
  • add liability @wangershi (#1230)
  • Update README.md fixed typo @EricChangMSR (#1221)
  • Update the math of Metrics @you-n-g (#1211)
  • Update docs of strategy @you-n-g (#1209)
  • Update Data Updating Docs @you-n-g (#1203)
  • Add introduction for workflow_by_code.py @you-n-g (#1186)
  • Update FAQ for benchmarks @you-n-g (#1185)
  • Improve the style of documentation @bingyao (#1132)
  • Update README.md @lwwang1995 (#1179)
  • Update test_qlib_from_source_slow.yml's timeout setting. @you-n-g (#1178)
  • Qlib dev doc @you-n-g (#1142)
v0.8.6

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 🌈

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)