百天计划之23天,关于“AI量化投资,财富自由与个人成长”。
今天重点关注基于qlib的量化数据库,引入自有的数据源。
这是一个常见的需求。
qlib内置的数据源是来自网上,数据质量不高且不稳定,网络不好的时候下载不下来。
目前我选用的数据库是tushare,持久化的数据库是mongo。
这里有定时任务持续更新数据,同时更新的数据要同步更新qlib。
qlib的数据库是专门为AI量化定制的,可以多进程并行计算,在海量因子计算的时候有优势。
01 数据准备
qlib.tests.data.py GetData
DATASET_VERSION = "v2" REMOTE_URL = "https://qlibpublic.blob.core.windows.net/data/default/stock_data" QLIB_DATA_NAME = "{dataset_name}_{region}_{interval}_{qlib_version}.zip"
从微软的服务器上下载一个zip,然后解压。
支付A股,美股,按天和按分钟两种。
如果下载慢,可以直接自己拼一个url,在下载软件里把zip包下载自行解压也可以。
02 自动更新日频数据
手动执行yahoo脚本(一次)
python scripts/data_collector/yahoo/collector.py update_data_to_bin --qlib_data_1d_dir
定时任务执行(linux下的cron定时器):
* * * * 1-5 python