gitee.com/quant1x/engine@v1.8.4/README.md (about) 1 Quant1X-Engine 2 === 3 4 量化交易(数据类)引擎 5 6 ## 1. 设计原则 7 - 更新历史数据,盘后更新历史数据 8 - 回补历史数据,对于新增特征组合或者因子要能回补历史数据,以便回测 9 - 盘中更新数据,盘中决策很重要,特征组合要有根据5档行情即时数据进行增量计算的能力 10 - 缓存数据必须具备按照日期切换的功能 11 12 ## 2. 模块划分 13 14 | 级别 | 模块 | 功能 | 盘中更新数据 | 更新当日数据 | 回补历史数据 | 15 |:---|:---------|:----------|:-------|:-------|:-------| 16 | 0 | cache | 数据缓存 | [ √ ] | [ √ ] | [ √ ] | 17 | 0 | datasets | 数据集, 基础数据 | [ X ] | [ √ ] | [ √ ] | 18 | 0 | factors | 量化因子 | [ X ] | [ √ ] | [ √ ] | 19 | 0 | features | 特征 | [ X ] | [ √ ] | [ √ ] | 20 | 0 | tracker | 回测 | [ X ] | [ X ] | [ X ] | 21 22 ## 3. 使用示例 23 24 ### 3.1 更新数据 25 26 ```shell 27 engine update --all 28 ``` 29 30 ### 3.2 补登历史特征数据 31 32 ```shell 33 engine repair --history --start=20230101 34 ``` 35 36 ### 3.3 执行1号策略 37 38 ```shell 39 engine --strategy=1 40 ``` 41 42 ## 4. 协同开发 43 44 ### 4.1 git仓库规则 45 46 #### 4.1.1 分支规则 47 48 主库的分支分 ***master分支*** 和 ***子版本分支*** 49 50 | 级别 | 分类 | 说明 | 示例 | 51 |:---|:------------------|:-------|:--------------------| 52 | 0 | master | 主线版本分支 | | 53 | 1 | {Major}.{Minor}.x | 子版本分支 | 主版本1,子版本2, 分支为1.2.x | 54 55 #### 4.1.2 tag规则 56 57 - tag只有一条, 小写字母v开头, 然后依次是主版本号、子版本号和修订版本号, 中间用“.”分隔。 58 - 格式: 59 60 ```shell 61 v${Major}.${Minor}.${Revision} 62 ``` 63 64 ### 4.2 约定 65 66 | 级别 | 分类 | 单项 | 说明 | 示例 | 67 |:---|:----|:-------------|:-----------------------------------------------------------------------------------------------|:-----------------------------------------------------| 68 | 0 | 关键词 | securityCode | 完整的证券代码,格式:{MARKET_ID}{CODE} | 上证指数: sh000001</br>永鼎股份: sh600105</br>鼎汉技术: sz300011 | 69 | 0 | 关键词 | date | 字符串类型的日期, 代表当前处理的日期, 可以是常见的任何格式, 默认为YYYY-MM-DD | 2023-10-16 | 70 | 0 | 关键词 | cacheDate | 数据的缓存日期, 可以是常见的任何格式, 默认为YYYY-MM-DD | 2023-10-16 | 71 | 0 | 关键词 | featureDate | 数据的特征日期, 可以是常见的任何格式, 默认为YYYY-MM-DD。cacheDate代表的是缓存文件, featureDate代表的是数据, 大多数的情况下, 前者是后者的下一个交易日 | 2023-10-16 | 72 73 ### 4.3 协同开发流程 74 75 - fork项目到自己的git仓库 76 - 先提issue, 再实现、测试 77 - 提交PR 78 - PR审核, 不通过, 驳回 79 - PR审核, 通过, 按照不同的issue级别, 合并当前次级版本分支, 并发布版本 80 81 ### 4.4 开发中的问题 82 83 - go test won't build: Call has possible formatting directive, 出现这个问题是因为test时会进行vet校验, 关闭(-vet=off)即可