JaysonAlbert / zipline

python tdx zipline bundles, 支持A股的zipline量化框架
Apache License 2.0
150 stars 49 forks source link

增量更新 #10

Closed JaysonAlbert closed 6 years ago

JaysonAlbert commented 6 years ago

首先数据有几部分:

  1. 1分钟k线
  2. 日K线
  3. 6大表,报表基本面数据
  4. 除息除权,股票基本信息, 股本数据

基本情况如下:

  1. 1分钟k线,每只股票一个bcolz存放,可以增量
  2. 日线数据是一个bcolz表放所有的股票日线数据,一个个股票按照顺序存放,没办法增量
  3. 6大表基本面数据,sqlite可以增量 4 没必要增量,很快,
JaysonAlbert commented 6 years ago

分钟k线原本是存到一个时间戳文件夹的,现在只需要改到固定文件夹,然后每次取最新的数据就可以了

JaysonAlbert commented 6 years ago

日线数据,目前最方便实现的就是,每日增量数据库,然后ingest的时候从数据库拿,会快很多

sharkblue2009 commented 6 years ago

可以考虑在每次ingest后,合并多个bcolz ctable。

  1. ingest如果不指定start time, 则从上一次ingest的时间开始取数据(也可回滚1天,避免日线在盘中取得的数据,在盘后变化的情况)
  2. ingest完成后,合并多次ingest的数据。始终用最新取得的数据覆盖老的数据。
  3. 除权数据在sqlite里,应该可以直接合并。