更新日志
在这里可以查看每个QLib版本之间的完整变更列表。
版本 0.1.0
这是QLib库的初始版本。
版本 0.1.1
性能优化。添加更多特性和操作符。
版本 0.1.2
支持操作符语法。现在
High() - Low()
等同于Sub(High(), Low())
。添加更多技术指标。
版本 0.1.3
修复错误并添加仪器过滤机制。
版本 0.2.0
为了提高性能,重新设计了
LocalProvider
数据库格式。支持将特性加载为字符串字段。
添加了用于数据库构建的脚本。
更多操作符和技术指标。
版本 0.2.1
支持注册用户自定义的
Provider
。支持在字符串格式中使用操作符,例如
['Ref($close, 1)']
是有效的字段格式。支持以
$some_field
格式的动态字段。而现有字段如Close()
在未来可能会被弃用。
版本 0.2.2
添加了用于重用特性的
disk_cache
(默认启用)。添加了用于实验性模型构建和评估的
qlib.contrib
。
版本 0.2.3
添加了
backtest
模块。将策略、账户、持仓和交易所与回测模块解耦。
版本 0.2.4
添加了
profit attribution
模块。添加了
risk control
和cost control
策略。
版本 0.3.0
添加
estimator
模块
版本 0.3.1
添加
filter
模块
版本 0.3.2
添加真实价格交易,如果数据集中的
factor
字段不完整,则使用adj_price
进行交易重构
handler
、launcher
、trainer
代码支持在配置文件中设置
backtest
配置参数修复 position 的
amount
为 0 的 bug修复
filter
模块的 bug
版本 0.3.3
修复
filter
模块的 bug
版本 0.3.4
支持
finetune model
重构
fetcher
代码
版本 0.3.5
支持多标签训练,可以在
handler
中提供多个标签。 (但由于算法自身的限制,LightGBM 不支持)重构
handler
代码,不再使用 dataset.py,可以在feature_label_config
中部署自己的标签和特征Handler 只提供 DataFrame。此外,
trainer
和 model.py 仅接收 DataFrame更改
split_rolling_data
,现在我们在市场日历上滚动数据,而不是在常规日期上将一些日期配置从
handler
移动到trainer
中
版本 0.4.0
添加存放所有数据相关代码的 data 包
重组数据提供程序结构
创建一个用于数据集中管理的服务器 qlib-server
添加一个与服务器配合使用的 ClientProvider
添加可插拔的缓存机制
添加递归回溯算法来检查表达式的最远参考日期
备注
D.instruments
函数不支持 start_time
、end_time
和 as_list
参数,如果您想获取先前版本的 D.instruments
的结果,可以这样做:
>>> from qlib.data import D
>>> instruments = D.instruments(market='csi500')
>>> D.list_instruments(instruments=instruments, start_time='2015-01-01', end_time='2016-02-15', as_list=True)
版本 0.4.1
添加 Windows 支持
修复
instruments
类型 bug修复
features
为空的 bug(会导致更新失败)修复
cache
锁和更新 bug修复对同一字段使用相同缓存的问题(原有空间会添加新的缓存)
从配置中更改 “logger handler”
从 0.4.0 开始更改模型加载支持
risk_analysis
函数的method
参数的默认值从 ci 更改为 si
版本0.4.2
重构DataHandler
添加
Alpha360
DataHandler
版本0.4.3
实现在线推理和交易框架
重构backtest和strategy模块的接口。
版本0.4.4
优化缓存生成性能
添加报告模块
修复使用
ServerDatasetCache
离线时的错误。在以前的
long_short_backtest
版本中,long_short中存在np.nan
的情况。当前版本0.4.4
已经修复,因此long_short_backtest
与以前的版本不同。在
0.4.2
版本的risk_analysis
函数中,N
为250
,从0.4.3
开始,N
为252
,因此0.4.2
比0.4.3
小了0.002122
,0.4.2
和0.4.3
之间的回测结果略有不同。- 重构backtest函数的参数。
注意: - topk margin策略的默认参数已更改。如果要获得与以前版本相同的回测结果,请明确传递参数。 - TopkWeightStrategy略有变化。它将尝试卖出超过
topk
的股票。(TopkAmountStrategy的回测结果保持不变)
Topk Margin策略支持保证金比例机制。
版本0.4.5
- 为客户端和服务器添加多内核实现。
支持从客户端加载数据的新方法,跳过数据集缓存。
将默认数据集方法从单内核实现更改为多内核实现。
通过优化相关模块加速高频数据读取。
支持使用字典写入配置文件的新方法。
版本0.4.6
- 修复一些错误
Version 0.4.5 中的默认配置不适用于每日频率数据。
TopkWeightStrategy在 WithInteract=True 时的回测错误。
版本0.5.0
- 第一个开源版本
优化文档和代码
添加基准
公共数据爬虫
版本0.8.0
其他版本
请参考 Github发行说明