更新日志
在这里您可以查看每次 QLib 版本发布之间的完整变更列表。
版本 0.1.0
QLib 库的首次发布。
版本 0.1.1
性能优化,新增更多功能和操作符。
版本 0.1.2
支持操作符语法。现在
High() - Low()
等价于Sub(High(), Low())
。新增更多技术指标。
版本 0.1.3
修复 Bug 并添加了标的过滤机制。
版本 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
模块添加
rick_control
和cost_control
策略
版本 0.3.0
添加
estimator
模块
版本 0.3.1
添加
filter
模块
版本 0.3.2
支持真实价格交易,如果数据集中
factor
字段不完整,则使用adj_price
进行交易重构
handler
、launcher
和trainer
代码支持在配置文件中设置
backtest
配置参数修复持仓
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
锁定和更新问题修复相同字段重复使用同一缓存的问题(原空间会新增一个缓存)
从配置中更改“logger handler”
更改模型加载以支持 0.4.0 及以后版本
risk_analysis
函数的method
参数默认值由 ci 改为 si
版本 0.4.2
重构 DataHandler
新增
Alpha360
DataHandler
版本 0.4.3
实现在线推理与交易框架
重构回测和策略模块的接口
版本 0.4.4
优化缓存生成性能
新增报告模块
修复离线使用
ServerDatasetCache
时的 bug在之前版本的
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
的回测结果略有差异。- 重构回测函数的参数。
注意:- Topk 边际策略的默认参数已更改。如果您希望获得与之前版本相同的回测结果,请显式传递参数。- TopkWeightStrategy 策略略有调整,它将尝试卖出超过
topk
数量的股票。(TopkAmountStrategy 的回测结果保持不变)
Topk Margin 策略中支持了保证金比例机制。
版本 0.4.5
- 为客户端和服务器端均增加了多核实现。
支持一种从客户端加载数据的新方式,可跳过数据集缓存。
将默认数据集方法从单核实现更改为多核实现。
通过优化相关模块,加速高频数据读取。
支持使用字典方式写入配置文件的新方法。
版本 0.4.6
- 修复了一些 bug
版本 0.4.5 中的默认配置对日频数据不够友好。
当 WithInteract=True 时,TopkWeightStrategy 出现回测错误。
版本 0.5.0
- 首个开源版本
优化文档和代码
新增基线模型
公开数据爬虫
版本 0.8.0
其他版本
请参考 Github 发行说明