You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Guofu Li
1f53e14564
|
2 years ago | |
---|---|---|
dolphindb | 2 years ago | |
ipynb | 2 years ago | |
src | 2 years ago | |
.gitignore | 2 years ago | |
README.md | 2 years ago |
README.md
目录结构
.
├── assets
│ └── ddb_dump_journal.csv
├── dolphindb
│ └── project
│ ├── modules
│ └── scripts
├── ipynb
│ ├── ddb.ipynb
│ ├── ddb_pe.ipynb
│ ├── ddb_pit.ipynb
│ ├── dos.ipynb
│ └── mssql.ipynb
├── README.md
└── src
├── DDBBase.py
├── expr
│ └── DDBExpression.py
├── factor
│ └── DDBFactor.py
├── __init__.py
├── loader
│ ├── DDBBasicInfoLoader.py
│ ├── DDBDailyLoader.py
│ ├── DDBHFTLoader.py
│ ├── DDBLoader.py
│ ├── DDBPITLoader.py
│ ├── make_hft.py
│ └── ProtoBuffEntitys
├── ReadTickFromDB.py
├── run.py
└── script.py
目录说明
assets
- 程序运行过程中产生、或者依赖的配置数据
ddb_dump_jounral.csv
记录海通高频数据写入DolphinDB的日志(类似log)
dolphindb
- DolphinDB的客户端Workspace,主要用来放置dos文件
- 目录结构是DolphinDB的官方Java客户端设定的,因此略显臃肿
ipynb
- jupyter notebook的存放目录
- 包含开发DolphinDB相关功能的草稿和SQL-Server相关功能的草稿
src
- Python源代码目录,是工作的主要目录
- 大部分源码文件以
DDB
开头,表示与DolphinDB相关,继承和代码复用关系可以进一步优化 DDBBase.py
:DDB*
的基类,包含了一些常用常量
run.py
:- 用于执行具体操作任务的入口脚本
- TODO:需要支持命令行参数来选择执行功能和配套参数
loader
目录:代码专门用于向DolphinDB写入数据(似乎称为Dumper更合适),目前包括:DDBLoader.py
:其他Loader类的基础类DDBHFTLoader.py
:用以导入高频数据(海通高频数据)DDBDailyLoader.py
:用以导入日频数据(市场日K线数据)DDBPITLoader.py
:用以导入低频PIT数据,主要是财报数据loader/ProtoBuffEntitys
目录:- 用以解析海通高频数据中,protobuf字节流的Python辅助代码
factor
目录:用于生成因子DDBFactor.py
:目前只有生成日频因子
expr
目录:用于支持基于DDB的各种表达式操作DDBExpression.py
:提供了基本的操作表达式,目前包括:- 通过Function View,读取DolphinDB的分布式存储表:
- 在任意时间点上,获取所有公司某张财报、指定财报期的最新可见快照
- 在任意时间点上,获取所有公司某张财报中某科目、指定财报期的最新可见快照
- 通过一般Function,对内存表进行操作:
- 流量表累计数值转单季值
- 跨年同比指标计算(分母为去年基数取绝对值,函数会同时返回当年值和去年基数,以便进一步调整)
海通高频数据录入说明
- Python语言从数据库中读取字节流程序并解码还原示例程序在ReadTickFromDB.py中。
- 该函数需要pymssql、gzip、google.protobuf(可用pip install protobuf安装)三个外部依赖库需要在运行程序。
- 成功读取后,每个标的会读出并解析成一个结构体数组的数据结构,可以对于该数据进行进一步操作。